From 9e46576dede4c56c6d57646a17d82901456e5b79 Mon Sep 17 00:00:00 2001 From: SevenEarth <391613297@qq.com> Date: Mon, 30 Sep 2024 16:28:25 +0800 Subject: [PATCH 1/2] add --- tencentcloud/services/cos/resource_tc_cos_bucket.go | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tencentcloud/services/cos/resource_tc_cos_bucket.go b/tencentcloud/services/cos/resource_tc_cos_bucket.go index af185ff10e..cbb63f2cc8 100644 --- a/tencentcloud/services/cos/resource_tc_cos_bucket.go +++ b/tencentcloud/services/cos/resource_tc_cos_bucket.go @@ -1887,7 +1887,14 @@ func ACLBodyDiffFunc(olds, news string, d *schema.ResourceData) (result bool) { } // diff: ACL element - for _, oldGrantee := range oldRoot.FindElements("//Grantee") { + oldGrantees := oldRoot.FindElements("//Grantee") + newGrantees := newRoot.FindElements("//Grantee") + // check count + if len(oldGrantees) != len(newGrantees) { + return false + } + // check content + for _, oldGrantee := range oldGrantees { for _, attr := range oldGrantee.Attr { if attr.Key != "type" { // only need to handle the type attribute @@ -1959,7 +1966,9 @@ func ACLBodyDiffFunc(olds, news string, d *schema.ResourceData) (result bool) { uid = oldGranteeURI.Text() } log.Printf("[DEBUG] diff verification passed for grantee:[%s:%s]\n", oldGranteeType, uid) - break + } + if !result { + return false } } } From e4ec095b5b50ccf95fcedae9a1fd8f70a3364cff Mon Sep 17 00:00:00 2001 From: SevenEarth <391613297@qq.com> Date: Mon, 30 Sep 2024 16:31:24 +0800 Subject: [PATCH 2/2] add --- .changelog/2868.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/2868.txt diff --git a/.changelog/2868.txt b/.changelog/2868.txt new file mode 100644 index 0000000000..b1edac28c5 --- /dev/null +++ b/.changelog/2868.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +resource/tencentcloud_cos_bucket: fix the issue where acl_body a cannot be modified +``` \ No newline at end of file