Skip to content

Commit 0aa030d

Browse files
committed
add
1 parent 509391e commit 0aa030d

22 files changed

+2643
-329
lines changed

go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ require (
4646
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.1034
4747
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit v1.0.1033
4848
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.970
49-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1034
49+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1038
5050
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.1014
5151
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762
5252
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.692
@@ -71,7 +71,7 @@ require (
7171
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.853
7272
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization v1.0.1008
7373
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.1010
74-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.859
74+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.1038
7575
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/pts v1.0.762
7676
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.1008
7777
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/rum v1.0.744

go.sum

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,10 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1031/go.mod
926926
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1033/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
927927
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1034 h1:T7ewuO2DD+5R2LRpD2kTRy25aCkVDVdYkmmyUS63i08=
928928
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1034/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
929+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1036 h1:B3GO+IBOrjrq8sN5bT9e8GMHWguHkyyGdNEos6cp5cE=
930+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1036/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
931+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1038 h1:tB3DLzyQXavvGTI+JUvEcuYh0EtTn1rvh9W6xxFHL38=
932+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1038/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
929933
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993 h1:WlPgXldQCxt7qi5Xrc6j6zTrsXWzN5BcOGs7Irq7fwQ=
930934
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993/go.mod h1:Z9U8zNtyuyKhjS0698wqsrG/kLx1TQ5CEixXBwVe7xY=
931935
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/csip v1.0.860 h1:F3esKBIT3HW9+7Gt8cVgf8X06VdGIczpgLBUECzSEzU=
@@ -984,6 +988,10 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.1010 h1:l
984988
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.1010/go.mod h1:GGhAf2ehV2/jwKf3Sezr2x/soJ3nDuefJFlcoZnlflA=
985989
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.859 h1:VrE3qzwzWB5mV/ejTJuwZbqZ/CNYLoc8X+uFbWEEOnY=
986990
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.859/go.mod h1:FeOl14rPWpNEu6r4bPEsTNHIB9qaRTg0dRhxhRwQ5Hw=
991+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.1036 h1:cRoBSH/EV88ktyGkO40cAWAJfV7cY0rQJX5dCICZ8LE=
992+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.1036/go.mod h1:UtExIz9+fovnmSsxeHvMz5MUBa/pEbpCF//b7zbgqXM=
993+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.1038 h1:4rzyVxkDB27v73jDXPr5eGAwjN859R7SsqniCt+46XE=
994+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.1038/go.mod h1:TAHhxxDVV36Pe4P4Gel3dgX4kHUfQO7f27GzRf8DAro=
987995
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/pts v1.0.762 h1:rZDKucVVtTnmnbZFDyh6t47dHswkb2oSuOxOHTTkygA=
988996
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/pts v1.0.762/go.mod h1:QB/XcdVZ8mhRgk90XuXd+2Smfo8emTo0wHIUsygEaKs=
989997
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.1008 h1:Mo0njOK81dsBe6FBOieaGeHAVpo/PsYzDTeHovc57bA=

tencentcloud/connectivity/client.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,7 @@ type TencentCloudClient struct {
221221
ccnv20170312Conn *vpc.Client
222222
tcssv20201101Conn *tcss.Client
223223
cloudauditv20190319Conn *audit.Client
224+
privatednsv20201028Conn *privatedns.Client
224225
}
225226

226227
// NewClientProfile returns a new ClientProfile
@@ -1929,3 +1930,16 @@ func (me *TencentCloudClient) UseCloudauditV20190319Client() *audit.Client {
19291930

19301931
return me.cloudauditv20190319Conn
19311932
}
1933+
1934+
// UsePrivatednsV20201028Client return PRIVATEDNS client for service
1935+
func (me *TencentCloudClient) UsePrivatednsV20201028Client() *privatedns.Client {
1936+
if me.privatednsv20201028Conn != nil {
1937+
return me.privatednsv20201028Conn
1938+
}
1939+
cpf := me.NewClientProfile(300)
1940+
cpf.Language = "zh-CN"
1941+
me.privatednsv20201028Conn, _ = privatedns.NewClient(me.Credential, me.Region, cpf)
1942+
me.privatednsv20201028Conn.WithHttpTransport(&LogRoundTripper{})
1943+
1944+
return me.privatednsv20201028Conn
1945+
}

tencentcloud/provider.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1685,6 +1685,8 @@ func Provider() *schema.Provider {
16851685
"tencentcloud_private_dns_record": privatedns.ResourceTencentCloudPrivateDnsRecord(),
16861686
"tencentcloud_private_dns_zone_vpc_attachment": privatedns.ResourceTencentCloudPrivateDnsZoneVpcAttachment(),
16871687
"tencentcloud_subscribe_private_zone_service": privatedns.ResourceTencentCloudSubscribePrivateZoneService(),
1688+
"tencentcloud_private_dns_forward_rule": privatedns.ResourceTencentCloudPrivateDnsForwardRule(),
1689+
"tencentcloud_private_dns_end_point": privatedns.ResourceTencentCloudPrivateDnsEndPoint(),
16881690
"tencentcloud_cls_logset": cls.ResourceTencentCloudClsLogset(),
16891691
"tencentcloud_cls_topic": cls.ResourceTencentCloudClsTopic(),
16901692
"tencentcloud_cls_config": cls.ResourceTencentCloudClsConfig(),

tencentcloud/provider.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1351,6 +1351,8 @@ PrivateDNS
13511351
tencentcloud_private_dns_record
13521352
tencentcloud_private_dns_zone_vpc_attachment
13531353
tencentcloud_subscribe_private_zone_service
1354+
tencentcloud_private_dns_forward_rule
1355+
tencentcloud_private_dns_end_point
13541356
Data Source
13551357
tencentcloud_private_dns_records
13561358
tencentcloud_private_dns_private_zone_list

tencentcloud/services/privatedns/resource_tc_private_dns_end_point.go

Lines changed: 182 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
Provides a resource to create a privatedns end point
2+
3+
Example Usage
4+
5+
```hcl
6+
resource "tencentcloud_private_dns_end_point" "example" {
7+
end_point_name = "tf-example"
8+
end_point_service_id = "vpcsvc-61wcwmar"
9+
end_point_region = "ap-guangzhou"
10+
ip_num = 1
11+
}
12+
```
13+
14+
Import
15+
16+
private dns end point can be imported using the id, e.g.
17+
18+
```
19+
terraform import tencentcloud_private_dns_end_point.example eid-77a246c867
20+
```
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
package privatedns
2+
3+
import (
4+
"context"
5+
"fmt"
6+
"log"
7+
8+
privatednsv20201028 "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns/v20201028"
9+
tccommon "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/common"
10+
)
11+
12+
func resourceTencentCloudPrivateDnsEndPointReadPreHandleResponse0(ctx context.Context, resp *privatednsv20201028.DescribeEndPointListResponseParams) error {
13+
logId := tccommon.GetLogId(ctx)
14+
d := tccommon.ResourceDataFromContext(ctx)
15+
if d == nil {
16+
return fmt.Errorf("resource data can not be nil")
17+
}
18+
19+
if resp.EndPointSet == nil && len(resp.EndPointSet) < 1 {
20+
d.SetId("")
21+
log.Printf("[WARN]%s resource `private_dns_end_point` [%s] not found, please check if it has been deleted.\n", logId, d.Id())
22+
return nil
23+
}
24+
25+
for _, item := range resp.EndPointSet {
26+
if item.EndPointName != nil {
27+
_ = d.Set("end_point_name", item.EndPointName)
28+
}
29+
30+
if item.EndPointServiceId != nil {
31+
_ = d.Set("end_point_service_id", item.EndPointServiceId)
32+
}
33+
34+
if item.RegionCode != nil {
35+
_ = d.Set("end_point_region", item.RegionCode)
36+
}
37+
38+
if item.EndPointVipSet != nil {
39+
endPointVipSetLen := len(item.EndPointVipSet)
40+
tmpList := make([]string, 0, endPointVipSetLen)
41+
for _, v := range item.EndPointVipSet {
42+
tmpList = append(tmpList, *v)
43+
}
44+
45+
_ = d.Set("ip_num", endPointVipSetLen)
46+
_ = d.Set("end_point_vip_set", tmpList)
47+
}
48+
}
49+
50+
return nil
51+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package privatedns_test
2+
3+
import (
4+
"testing"
5+
6+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
7+
8+
tcacctest "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/acctest"
9+
)
10+
11+
// go test -i; go test -test.run TestAccTencentCloudNeedFixPrivateDnsEndPointResource_basic -v
12+
func TestAccTencentCloudNeedFixPrivateDnsEndPointResource_basic(t *testing.T) {
13+
t.Parallel()
14+
resource.Test(t, resource.TestCase{
15+
PreCheck: func() {
16+
tcacctest.AccPreCheck(t)
17+
},
18+
Providers: tcacctest.AccProviders,
19+
Steps: []resource.TestStep{
20+
{
21+
Config: testAccPrivateDnsEndPoint,
22+
Check: resource.ComposeTestCheckFunc(
23+
resource.TestCheckResourceAttrSet("tencentcloud_private_dns_end_point.example", "id"),
24+
resource.TestCheckResourceAttrSet("tencentcloud_private_dns_end_point.example", "end_point_name"),
25+
resource.TestCheckResourceAttrSet("tencentcloud_private_dns_end_point.example", "end_point_service_id"),
26+
resource.TestCheckResourceAttrSet("tencentcloud_private_dns_end_point.example", "end_point_region"),
27+
resource.TestCheckResourceAttrSet("tencentcloud_private_dns_end_point.example", "ip_num"),
28+
),
29+
},
30+
{
31+
ResourceName: "tencentcloud_private_dns_end_point.example",
32+
ImportState: true,
33+
ImportStateVerify: true,
34+
},
35+
},
36+
})
37+
}
38+
39+
const testAccPrivateDnsEndPoint = `
40+
resource "tencentcloud_private_dns_end_point" "example" {
41+
end_point_name = "tf-example"
42+
end_point_service_id = "vpcsvc-61wcwmar"
43+
end_point_region = "ap-guangzhou"
44+
ip_num = 1
45+
}
46+
`

0 commit comments

Comments
 (0)