From 92d628d6e7112eea6c8b35298ae0ffb37ad7ebf4 Mon Sep 17 00:00:00 2001 From: mikatong Date: Mon, 29 Aug 2022 15:55:11 +0800 Subject: [PATCH 1/2] fix: eip read not support internet_charge_type --- tencentcloud/resource_tc_eip.go | 1 + tencentcloud/resource_tc_eip_test.go | 30 ++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/tencentcloud/resource_tc_eip.go b/tencentcloud/resource_tc_eip.go index cc7af82636..7e806a6dac 100644 --- a/tencentcloud/resource_tc_eip.go +++ b/tencentcloud/resource_tc_eip.go @@ -241,6 +241,7 @@ func resourceTencentCloudEipRead(d *schema.ResourceData, meta interface{}) error _ = d.Set("type", eip.AddressType) _ = d.Set("public_ip", eip.AddressIp) _ = d.Set("status", eip.AddressStatus) + _ = d.Set("internet_charge_type", eip.InternetChargeType) _ = d.Set("tags", tags) return nil } diff --git a/tencentcloud/resource_tc_eip_test.go b/tencentcloud/resource_tc_eip_test.go index dd5039f09e..9abd169fcf 100644 --- a/tencentcloud/resource_tc_eip_test.go +++ b/tencentcloud/resource_tc_eip_test.go @@ -187,6 +187,29 @@ func TestAccTencentCloudEip_bandwidth(t *testing.T) { }) } +func TestAccTencentCloudEip_chargetype(t *testing.T) { + t.Parallel() + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccCheckEipDestroy, + Steps: []resource.TestStep{ + { + Config: testAccEipChargeType, + Check: resource.ComposeTestCheckFunc( + testAccCheckEipExists("tencentcloud_eip.foo"), + resource.TestCheckResourceAttr("tencentcloud_eip.foo", "internet_charge_type", "TRAFFIC_POSTPAID_BY_HOUR"), + ), + }, + { + ResourceName: "tencentcloud_eip.foo", + ImportState: true, + ImportStateVerify: true, + }, + }, + }) +} + func testAccCheckEipExists(n string) resource.TestCheckFunc { return func(s *terraform.State) error { logId := getLogId(contextNil) @@ -312,3 +335,10 @@ resource "tencentcloud_eip" "foo" { internet_max_bandwidth_out = 2 } ` + +const testAccEipChargeType = ` +resource "tencentcloud_eip" "foo" { + name = "eip_charge_type" + internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR" + } +` From 093250b866e926f878c72c13686b6b65a22281c4 Mon Sep 17 00:00:00 2001 From: mikatong Date: Mon, 29 Aug 2022 16:28:31 +0800 Subject: [PATCH 2/2] update --- tencentcloud/resource_tc_eip.go | 1 + 1 file changed, 1 insertion(+) diff --git a/tencentcloud/resource_tc_eip.go b/tencentcloud/resource_tc_eip.go index 7e806a6dac..325a557475 100644 --- a/tencentcloud/resource_tc_eip.go +++ b/tencentcloud/resource_tc_eip.go @@ -80,6 +80,7 @@ func resourceTencentCloudEip() *schema.Resource { "internet_charge_type": { Type: schema.TypeString, Optional: true, + Computed: true, ForceNew: true, ValidateFunc: validateAllowedStringValue(CVM_INTERNET_CHARGE_TYPE), Description: "The charge type of eip. Valid value: `BANDWIDTH_PACKAGE`, `BANDWIDTH_POSTPAID_BY_HOUR` and `TRAFFIC_POSTPAID_BY_HOUR`.",