diff --git a/.changelog/2583.txt b/.changelog/2583.txt new file mode 100644 index 0000000000..e43e2ecc56 --- /dev/null +++ b/.changelog/2583.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +datasource/tencentcloud_mariadb_db_instances: Support `vip`, `vport`, `internet_domain`, `internet_ip`, `internet_port` field +``` diff --git a/tencentcloud/acctest/basic.go b/tencentcloud/acctest/basic.go index c6b72d6799..90f716a68a 100644 --- a/tencentcloud/acctest/basic.go +++ b/tencentcloud/acctest/basic.go @@ -940,8 +940,8 @@ const ( DefaultMariadbVpcId = "vpc-k1t8ickr" DefaultMariadbSecurityGroupId = "sg-7kpsbxdb" - DefaultMariadbInstanceSubnetId = "subnet-4w4twlf4" - DefaultMariadbInstanceVpcId = "vpc-9m66acml" + DefaultMariadbInstanceSubnetId = "subnet-8fpt571a" + DefaultMariadbInstanceVpcId = "vpc-axrsmmrv" ) // End of MARIADB diff --git a/tencentcloud/services/mariadb/data_source_tc_mariadb_db_instances.go b/tencentcloud/services/mariadb/data_source_tc_mariadb_db_instances.go index 6697031159..6dd4c41834 100644 --- a/tencentcloud/services/mariadb/data_source_tc_mariadb_db_instances.go +++ b/tencentcloud/services/mariadb/data_source_tc_mariadb_db_instances.go @@ -110,6 +110,31 @@ func DataSourceTencentCloudMariadbDbInstances() *schema.Resource { Computed: true, Description: "db version id.", }, + "vip": { + Type: schema.TypeString, + Computed: true, + Description: "Intranet IP address.", + }, + "vport": { + Type: schema.TypeInt, + Computed: true, + Description: "Intranet port.", + }, + "internet_domain": { + Type: schema.TypeString, + Computed: true, + Description: "Public network access domain name.", + }, + "internet_ip": { + Type: schema.TypeString, + Computed: true, + Description: "Public IP address.", + }, + "internet_port": { + Type: schema.TypeInt, + Computed: true, + Description: "Public network port.", + }, "resource_tags": { Type: schema.TypeList, Computed: true, @@ -231,6 +256,21 @@ func dataSourceTencentCloudMariadbDbInstancesRead(d *schema.ResourceData, meta i if instance.DbVersionId != nil { instanceMap["db_version_id"] = instance.DbVersionId } + if instance.Vip != nil { + instanceMap["vip"] = instance.Vip + } + if instance.Vport != nil { + instanceMap["vport"] = instance.Vport + } + if instance.WanDomain != nil { + instanceMap["internet_domain"] = instance.WanDomain + } + if instance.WanVip != nil { + instanceMap["internet_ip"] = instance.WanVip + } + if instance.WanPort != nil { + instanceMap["internet_port"] = instance.WanPort + } if instance.ResourceTags != nil { resourceTagsList := []interface{}{} for _, resourceTags := range instance.ResourceTags { diff --git a/tencentcloud/services/mariadb/data_source_tc_mariadb_db_instances_test.go b/tencentcloud/services/mariadb/data_source_tc_mariadb_db_instances_test.go index d6faae65b2..cbe8cd48a2 100644 --- a/tencentcloud/services/mariadb/data_source_tc_mariadb_db_instances_test.go +++ b/tencentcloud/services/mariadb/data_source_tc_mariadb_db_instances_test.go @@ -20,14 +20,29 @@ func TestAccTencentCloudMariadbDbInstancesDataSource(t *testing.T) { Config: testAccDataSourceMariadbDbInstances, Check: resource.ComposeTestCheckFunc( tcacctest.AccCheckTencentCloudDataSourceID("data.tencentcloud_mariadb_db_instances.db_instances"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.#"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.instance_id"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.instance_name"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.project_id"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.region"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.zone"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.memory"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.storage"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.vpc_id"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.subnet_id"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.db_version_id"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.vip"), + resource.TestCheckResourceAttrSet("data.tencentcloud_mariadb_db_instances.db_instances", "instances.0.vport"), ), }, }, }) } -const testAccDataSourceMariadbDbInstances = ` +const testAccDataSourceMariadbDbInstances = testAccMariadbInstance + ` -data "tencentcloud_mariadb_db_instances" "db_instances" {} +data "tencentcloud_mariadb_db_instances" "db_instances" { + depends_on = [ tencentcloud_mariadb_instance.instance ] +} ` diff --git a/website/docs/d/mariadb_db_instances.html.markdown b/website/docs/d/mariadb_db_instances.html.markdown index b68a482821..0a8263d49d 100644 --- a/website/docs/d/mariadb_db_instances.html.markdown +++ b/website/docs/d/mariadb_db_instances.html.markdown @@ -41,6 +41,9 @@ In addition to all arguments above, the following attributes are exported: * `db_version_id` - db version id. * `instance_id` - instance id. * `instance_name` - instance name. + * `internet_domain` - Public network access domain name. + * `internet_ip` - Public IP address. + * `internet_port` - Public network port. * `memory` - meory of instance. * `project_id` - project id. * `region` - region. @@ -49,7 +52,9 @@ In addition to all arguments above, the following attributes are exported: * `tag_value` - tag value. * `storage` - storage of instance. * `subnet_id` - subnet id. + * `vip` - Intranet IP address. * `vpc_id` - vpc id. + * `vport` - Intranet port. * `zone` - available zone.