@@ -107,24 +107,42 @@ func TestAccKafkaInstance_newFormat(t *testing.T) {
107107 Check : resource .ComposeTestCheckFunc (
108108 rc .CheckResourceExists (),
109109 resource .TestCheckResourceAttr (resourceName , "name" , rName ),
110- resource .TestCheckResourceAttr (resourceName , "engine" , "kafka" ),
111- resource .TestCheckResourceAttr (resourceName , "security_protocol" , "SASL_PLAINTEXT" ),
112- resource .TestCheckResourceAttr (resourceName , "enabled_mechanisms.0" , "SCRAM-SHA-512" ),
113- resource .TestCheckResourceAttrPair (resourceName , "broker_num" ,
114- "data.huaweicloud_dms_kafka_flavors.test" , "flavors.0.properties.0.min_broker" ),
115- resource .TestCheckResourceAttrPair (resourceName , "flavor_id" ,
116- "data.huaweicloud_dms_kafka_flavors.test" , "flavors.0.id" ),
110+ resource .TestCheckResourceAttr (resourceName , "engine_version" , "2.7" ),
117111 resource .TestCheckResourceAttrPair (resourceName , "storage_spec_code" ,
118112 "data.huaweicloud_dms_kafka_flavors.test" , "flavors.0.ios.0.storage_spec_code" ),
119- resource .TestCheckResourceAttr (resourceName , "broker_num" , "3" ),
113+ resource .TestCheckResourceAttrPair (resourceName , "vpc_id" ,
114+ "huaweicloud_vpc.test" , "id" ),
115+ resource .TestCheckResourceAttrPair (resourceName , "security_group_id" ,
116+ "huaweicloud_networking_secgroup.test" , "id" ),
117+ resource .TestCheckResourceAttrPair (resourceName , "network_id" ,
118+ "huaweicloud_vpc_subnet.test" , "id" ),
119+ resource .TestMatchResourceAttr (resourceName , "availability_zones.#" , regexp .MustCompile (`^[1-9]([0-9]*)?$` )),
120120 resource .TestCheckResourceAttr (resourceName , "arch_type" , "X86" ),
121-
122- resource .TestCheckResourceAttr (resourceName , "cross_vpc_accesses.1.advertised_ip" , "www.terraform-test.com" ),
123- resource .TestCheckResourceAttr (resourceName , "cross_vpc_accesses.2.advertised_ip" , "192.168.0.53" ),
121+ resource .TestCheckResourceAttrPair (resourceName , "flavor_id" ,
122+ "data.huaweicloud_dms_kafka_flavors.test" , "flavors.0.id" ),
123+ resource .TestCheckResourceAttr (resourceName , "broker_num" , "3" ),
124+ resource .TestCheckResourceAttr (resourceName , "access_user" , "user" ),
124125 resource .TestCheckResourceAttr (resourceName , "parameters.0.name" , "log.retention.hours" ),
125126 resource .TestCheckResourceAttr (resourceName , "parameters.0.value" , "48" ),
127+ resource .TestCheckResourceAttr (resourceName , "security_protocol" , "SASL_PLAINTEXT" ),
128+ resource .TestCheckResourceAttr (resourceName , "enabled_mechanisms.0" , "SCRAM-SHA-512" ),
129+ resource .TestCheckResourceAttr (resourceName , "cross_vpc_accesses.1.advertised_ip" , "www.terraform-test.com" ),
130+ resource .TestCheckResourceAttr (resourceName , "cross_vpc_accesses.2.advertised_ip" , "192.168.0.53" ),
131+ resource .TestCheckResourceAttrSet (resourceName , "storage_space" ),
126132 resource .TestCheckResourceAttrSet (resourceName , "maintain_begin" ),
127133 resource .TestCheckResourceAttrSet (resourceName , "maintain_end" ),
134+ // Check attributes.
135+ resource .TestCheckResourceAttr (resourceName , "engine" , "kafka" ),
136+ resource .TestMatchResourceAttr (resourceName , "partition_num" , regexp .MustCompile (`^[1-9]([0-9]*)?$` )),
137+ resource .TestCheckResourceAttrSet (resourceName , "connect_address" ),
138+ resource .TestCheckResourceAttrSet (resourceName , "port" ),
139+ resource .TestCheckResourceAttrSet (resourceName , "status" ),
140+ resource .TestCheckResourceAttrSet (resourceName , "storage_type" ),
141+ resource .TestCheckResourceAttrSet (resourceName , "created_at" ),
142+ resource .TestCheckResourceAttr (resourceName , "is_logical_volume" , "true" ),
143+ resource .TestCheckResourceAttrSet (resourceName , "node_num" ),
144+ resource .TestCheckResourceAttrSet (resourceName , "pod_connect_address" ),
145+ resource .TestCheckResourceAttr (resourceName , "type" , "cluster" ),
128146 ),
129147 },
130148 {
@@ -139,13 +157,12 @@ func TestAccKafkaInstance_newFormat(t *testing.T) {
139157 resource .TestCheckResourceAttrPair (resourceName , "storage_spec_code" ,
140158 "data.huaweicloud_dms_kafka_flavors.test" , "flavors.0.ios.0.storage_spec_code" ),
141159 resource .TestCheckResourceAttr (resourceName , "storage_space" , "600" ),
142-
160+ resource .TestCheckResourceAttr (resourceName , "parameters.0.name" , "auto.create.groups.enable" ),
161+ resource .TestCheckResourceAttr (resourceName , "parameters.0.value" , "false" ),
143162 resource .TestCheckResourceAttr (resourceName , "cross_vpc_accesses.0.advertised_ip" , "192.168.0.61" ),
144163 resource .TestCheckResourceAttr (resourceName , "cross_vpc_accesses.1.advertised_ip" , "test.terraform.com" ),
145164 resource .TestCheckResourceAttr (resourceName , "cross_vpc_accesses.2.advertised_ip" , "192.168.0.62" ),
146165 resource .TestCheckResourceAttr (resourceName , "cross_vpc_accesses.3.advertised_ip" , "192.168.0.63" ),
147- resource .TestCheckResourceAttr (resourceName , "parameters.0.name" , "auto.create.groups.enable" ),
148- resource .TestCheckResourceAttr (resourceName , "parameters.0.value" , "false" ),
149166 resource .TestCheckResourceAttr (resourceName , "maintain_begin" , "06:00:00" ),
150167 resource .TestCheckResourceAttr (resourceName , "maintain_end" , "10:00:00" ),
151168 ),
@@ -166,7 +183,10 @@ func TestAccKafkaInstance_publicIp(t *testing.T) {
166183 password := acceptance .RandomPassword ()
167184
168185 resource .ParallelTest (t , resource.TestCase {
169- PreCheck : func () { acceptance .TestAccPreCheck (t ) },
186+ PreCheck : func () {
187+ acceptance .TestAccPreCheck (t )
188+ acceptance .TestAccPreCheckMigrateEpsID (t )
189+ },
170190 ProviderFactories : acceptance .TestAccProviderFactories ,
171191 CheckDestroy : rc .CheckResourceDestroy (),
172192 Steps : []resource.TestStep {
@@ -177,13 +197,27 @@ func TestAccKafkaInstance_publicIp(t *testing.T) {
177197 resource .TestCheckResourceAttr (resourceName , "name" , rName ),
178198 resource .TestCheckResourceAttr (resourceName , "broker_num" , "3" ),
179199 resource .TestCheckResourceAttr (resourceName , "public_ip_ids.#" , "3" ),
200+ resource .TestCheckResourceAttr (resourceName , "dumping" , "true" ),
201+ resource .TestCheckResourceAttr (resourceName , "new_tenant_ips.#" , "2" ),
202+ resource .TestCheckResourceAttr (resourceName , "new_tenant_ips.0" , "192.168.0.20" ),
203+ resource .TestCheckResourceAttr (resourceName , "new_tenant_ips.1" , "192.168.0.18" ),
180204 resource .TestCheckResourceAttr (resourceName , "ssl_enable" , "false" ),
181205 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.private_plain_enable" , "true" ),
182206 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.public_plain_enable" , "true" ),
183207 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.private_sasl_ssl_enable" , "false" ),
184208 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.public_sasl_ssl_enable" , "false" ),
185209 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.private_sasl_plaintext_enable" , "false" ),
186210 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.public_sasl_plaintext_enable" , "false" ),
211+ resource .TestCheckResourceAttr (resourceName , "enable_auto_topic" , "true" ),
212+ resource .TestCheckResourceAttr (resourceName , "vpc_client_plain" , "true" ),
213+ resource .TestCheckResourceAttr (resourceName , "description" , "Created by Terraform script" ),
214+ resource .TestCheckResourceAttr (resourceName , "enterprise_project_id" , acceptance .HW_ENTERPRISE_PROJECT_ID_TEST ),
215+ resource .TestCheckResourceAttr (resourceName , "retention_policy" , "time_base" ),
216+ // Check attributes.
217+ resource .TestCheckResourceAttr (resourceName , "enable_public_ip" , "true" ),
218+ resource .TestCheckResourceAttr (resourceName , "public_ip_address.#" , "3" ),
219+ resource .TestCheckResourceAttrSet (resourceName , "connector_id" ),
220+ resource .TestCheckResourceAttrSet (resourceName , "connector_node_num" ),
187221 ),
188222 },
189223 {
@@ -198,11 +232,17 @@ func TestAccKafkaInstance_publicIp(t *testing.T) {
198232 resource .TestCheckResourceAttr (resourceName , "name" , rName ),
199233 resource .TestCheckResourceAttr (resourceName , "broker_num" , "4" ),
200234 resource .TestCheckResourceAttr (resourceName , "public_ip_ids.#" , "4" ),
235+ resource .TestCheckResourceAttr (resourceName , "new_tenant_ips.#" , "1" ),
236+ resource .TestCheckResourceAttr (resourceName , "new_tenant_ips.0" , "192.168.0.79" ),
201237 resource .TestCheckResourceAttr (resourceName , "ssl_enable" , "true" ),
202238 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.private_plain_enable" , "false" ),
203239 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.private_sasl_ssl_enable" , "true" ),
204240 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.public_plain_enable" , "false" ),
205241 resource .TestCheckResourceAttr (resourceName , "port_protocol.0.public_sasl_ssl_enable" , "true" ),
242+ resource .TestCheckResourceAttr (resourceName , "enable_auto_topic" , "false" ),
243+ resource .TestCheckResourceAttr (resourceName , "description" , "" ),
244+ resource .TestCheckResourceAttr (resourceName , "enterprise_project_id" , acceptance .HW_ENTERPRISE_MIGRATE_PROJECT_ID_TEST ),
245+ resource .TestCheckResourceAttr (resourceName , "retention_policy" , "produce_reject" ),
206246 ),
207247 },
208248 {
@@ -479,18 +519,24 @@ resource "huaweicloud_dms_kafka_instance" "test" {
479519 storage_spec_code = local.flavor.ios[0].storage_spec_code
480520 availability_zones = slice(data.huaweicloud_availability_zones.test.names, 0, 3)
481521
482- engine_version = "2.7"
483- storage_space = 300
484- broker_num = 3
485- arch_type = "X86"
486- public_ip_ids = huaweicloud_vpc_eip.test[*].id
487- new_tenant_ips = ["192.168.0.20", "192.168.0.18"]
522+ engine_version = "2.7"
523+ storage_space = 300
524+ broker_num = 3
525+ arch_type = "X86"
526+ public_ip_ids = huaweicloud_vpc_eip.test[*].id
527+ new_tenant_ips = ["192.168.0.20", "192.168.0.18"]
528+ dumping = true
529+ description = "Created by Terraform script"
530+ enable_auto_topic = true
531+ vpc_client_plain = true
532+ enterprise_project_id = "%[4]s"
533+ retention_policy = "time_base"
488534
489535 port_protocol {
490536 private_plain_enable = true
491537 public_plain_enable = true
492538 }
493- }` , common .TestBaseNetwork (rName ), testAccKafkaInstance_publicIpBase (3 ), rName )
539+ }` , common .TestBaseNetwork (rName ), testAccKafkaInstance_publicIpBase (3 ), rName , acceptance . HW_ENTERPRISE_PROJECT_ID_TEST )
494540}
495541
496542func testAccKafkaInstance_publicIp_update (rName , password string , brokerNum int ) string {
@@ -520,22 +566,25 @@ resource "huaweicloud_dms_kafka_instance" "test" {
520566 storage_spec_code = local.flavor.ios[0].storage_spec_code
521567 availability_zones = slice(data.huaweicloud_availability_zones.test.names, 0, 3)
522568
523- engine_version = "2.7"
524- storage_space = 600
525- broker_num = %d
526- arch_type = "X86"
527- new_tenant_ips = ["192.168.0.79"]
528- public_ip_ids = huaweicloud_vpc_eip.test[*].id
529- access_user = "test"
530- password = "%[5]s"
531-
532- enabled_mechanisms = ["SCRAM-SHA-512"]
569+ engine_version = "2.7"
570+ storage_space = 600
571+ broker_num = %d
572+ arch_type = "X86"
573+ new_tenant_ips = ["192.168.0.79"]
574+ dumping = true
575+ public_ip_ids = huaweicloud_vpc_eip.test[*].id
576+ access_user = "test"
577+ password = "%[5]s"
578+ enabled_mechanisms = ["SCRAM-SHA-512"]
579+ enable_auto_topic = false
580+ enterprise_project_id = "%[6]s"
581+ retention_policy = "produce_reject"
533582
534583 port_protocol {
535584 private_plain_enable = false
536585 private_sasl_ssl_enable = true
537586 public_plain_enable = false
538587 public_sasl_ssl_enable = true
539588 }
540- }` , common .TestBaseNetwork (rName ), testAccKafkaInstance_publicIpBase (4 ), rName , brokerNum , password )
589+ }` , common .TestBaseNetwork (rName ), testAccKafkaInstance_publicIpBase (4 ), rName , brokerNum , password , acceptance . HW_ENTERPRISE_MIGRATE_PROJECT_ID_TEST )
541590}
0 commit comments