Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion tencentcloud/resource_tc_elasticsearch_instance.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,11 @@ import (
"context"
"errors"
"fmt"
sdkErrors "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors"
"log"

"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
sdkErrors "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors"
es "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/es/v20180416"
"github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/internal/helper"
"github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/ratelimit"
Expand Down
24 changes: 16 additions & 8 deletions tencentcloud/resource_tc_vpc_bandwidth_package.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ func resourceTencentCloudVpcBandwidthPackage() *schema.Resource {
"charge_type": {
Type: schema.TypeString,
Optional: true,
Description: "Bandwidth package billing type, default: TOP5_POSTPAID_BY_MONTH, optional value:- `TOP5_POSTPAID_BY_MONTH`: TOP5 billed by monthly postpaid- `PERCENT95_POSTPAID_BY_MONTH`: 95 billed monthly postpaid- `FIXED_PREPAID_BY_MONTH`: Monthly prepaid billing.",
Description: "Bandwidth package billing type, default: TOP5_POSTPAID_BY_MONTH, optional value:- `TOP5_POSTPAID_BY_MONTH`: TOP5 billed by monthly postpaid- `PERCENT95_POSTPAID_BY_MONTH`: 95 billed monthly postpaid- `FIXED_PREPAID_BY_MONTH`: Monthly prepaid billing (Type FIXED_PREPAID_BY_MONTH product API capability is under construction).",
},

"bandwidth_package_name": {
Expand Down Expand Up @@ -94,6 +94,16 @@ func resourceTencentCloudVpcBandwidthPackageCreate(d *schema.ResourceData, meta
request.BandwidthPackageName = helper.String(v.(string))
}

if v := helper.GetTags(d, "tags"); len(v) > 0 {
for tagKey, tagValue := range v {
tag := vpc.Tag{
Key: helper.String(tagKey),
Value: helper.String(tagValue),
}
request.Tags = append(request.Tags, &tag)
}
}

err := resource.Retry(writeRetryTimeout, func() *resource.RetryError {
result, e := meta.(*TencentCloudClient).apiV3Conn.UseVpcClient().CreateBandwidthPackage(request)
if e != nil {
Expand Down Expand Up @@ -134,7 +144,7 @@ func resourceTencentCloudVpcBandwidthPackageCreate(d *schema.ResourceData, meta
if tags := helper.GetTags(d, "tags"); len(tags) > 0 {
tagService := TagService{client: meta.(*TencentCloudClient).apiV3Conn}
region := meta.(*TencentCloudClient).apiV3Conn.Region
resourceName := fmt.Sprintf("qcs::cam:%s:uin/:bandwidthPackage/%s", region, bandwidthPackageId)
resourceName := fmt.Sprintf("qcs::vpc:%s:uin/:bandwidthPackage/%s", region, bandwidthPackageId)
if err := tagService.ModifyTags(ctx, resourceName, tags, nil); err != nil {
return err
}
Expand Down Expand Up @@ -178,7 +188,7 @@ func resourceTencentCloudVpcBandwidthPackageRead(d *schema.ResourceData, meta in

tcClient := meta.(*TencentCloudClient).apiV3Conn
tagService := &TagService{client: tcClient}
tags, err := tagService.DescribeResourceTags(ctx, "cam", "bandwidthPackage", tcClient.Region, d.Id())
tags, err := tagService.DescribeResourceTags(ctx, "vpc", "bandwidthPackage", tcClient.Region, d.Id())
if err != nil {
return err
}
Expand Down Expand Up @@ -230,10 +240,8 @@ func resourceTencentCloudVpcBandwidthPackageUpdate(d *schema.ResourceData, meta
}
}

if d.HasChange("bandwidth_package_name") {
if v, ok := d.GetOk("bandwidth_package_name"); ok {
request.BandwidthPackageName = helper.String(v.(string))
}
if v, ok := d.GetOk("bandwidth_package_name"); ok {
request.BandwidthPackageName = helper.String(v.(string))
}

err := resource.Retry(writeRetryTimeout, func() *resource.RetryError {
Expand All @@ -257,7 +265,7 @@ func resourceTencentCloudVpcBandwidthPackageUpdate(d *schema.ResourceData, meta
tagService := &TagService{client: tcClient}
oldTags, newTags := d.GetChange("tags")
replaceTags, deleteTags := diffTags(oldTags.(map[string]interface{}), newTags.(map[string]interface{}))
resourceName := BuildTagResourceName("cam", "bandwidthPackage", tcClient.Region, d.Id())
resourceName := BuildTagResourceName("vpc", "bandwidthPackage", tcClient.Region, d.Id())
if err := tagService.ModifyTags(ctx, resourceName, replaceTags, deleteTags); err != nil {
return err
}
Expand Down
2 changes: 1 addition & 1 deletion website/docs/r/vpc_bandwidth_package.html.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ resource "tencentcloud_vpc_bandwidth_package" "bandwidth_package" {
The following arguments are supported:

* `bandwidth_package_name` - (Optional, String) Bandwidth package name.
* `charge_type` - (Optional, String) Bandwidth package billing type, default: TOP5_POSTPAID_BY_MONTH, optional value:- `TOP5_POSTPAID_BY_MONTH`: TOP5 billed by monthly postpaid- `PERCENT95_POSTPAID_BY_MONTH`: 95 billed monthly postpaid- `FIXED_PREPAID_BY_MONTH`: Monthly prepaid billing.
* `charge_type` - (Optional, String) Bandwidth package billing type, default: TOP5_POSTPAID_BY_MONTH, optional value:- `TOP5_POSTPAID_BY_MONTH`: TOP5 billed by monthly postpaid- `PERCENT95_POSTPAID_BY_MONTH`: 95 billed monthly postpaid- `FIXED_PREPAID_BY_MONTH`: Monthly prepaid billing (Type FIXED_PREPAID_BY_MONTH product API capability is under construction).
* `network_type` - (Optional, String) Bandwidth packet type, default:BGP, optional:- `BGP`: common BGP shared bandwidth package- `HIGH_QUALITY_BGP`: Quality BGP Shared Bandwidth Package.
* `tags` - (Optional, Map) Tag description list.

Expand Down