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
21 changes: 13 additions & 8 deletions tencentcloud/data_source_tc_cfs_access_groups_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,8 @@ func TestAccTencentCloudCfsAccessGroupsDataSource(t *testing.T) {
{
Config: testAccCfsAccessGroupsDataSource,
Check: resource.ComposeTestCheckFunc(
testAccCheckCfsAccessGroupExists("tencentcloud_cfs_access_group.foo"),
resource.TestCheckResourceAttr("data.tencentcloud_cfs_access_groups.access_groups", "access_group_list.#", "1"),
resource.TestCheckResourceAttr("data.tencentcloud_cfs_access_groups.access_groups", "access_group_list.0.name", "test_cfs_access_group"),
resource.TestCheckResourceAttr("data.tencentcloud_cfs_access_groups.access_groups", "access_group_list.0.name", "keep_access_group"),
resource.TestCheckResourceAttr("data.tencentcloud_cfs_access_groups.access_groups", "access_group_list.0.description", "test"),
resource.TestCheckResourceAttrSet("data.tencentcloud_cfs_access_groups.access_groups", "access_group_list.0.access_group_id"),
resource.TestCheckResourceAttrSet("data.tencentcloud_cfs_access_groups.access_groups", "access_group_list.0.create_time"),
Expand All @@ -28,14 +27,20 @@ func TestAccTencentCloudCfsAccessGroupsDataSource(t *testing.T) {
})
}

const testAccCfsAccessGroupsDataSource = `
resource "tencentcloud_cfs_access_group" "foo" {
name = "test_cfs_access_group"
description = "test"
const BasicCfsAccessGroup = "pgroupbasic"

const defaultCfsAccessGroup = `
data "tencentcloud_cfs_access_groups" "access_groups" {
name = "keep_access_group"
}

locals {
cfs_access_group_id = data.tencentcloud_cfs_access_groups.access_groups.access_group_list.0.access_group_id
}
`

const testAccCfsAccessGroupsDataSource = `
data "tencentcloud_cfs_access_groups" "access_groups" {
access_group_id = tencentcloud_cfs_access_group.foo.id
name = tencentcloud_cfs_access_group.foo.name
name = "keep_access_group"
}
`
11 changes: 4 additions & 7 deletions tencentcloud/data_source_tc_cfs_access_rules_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ func TestAccTencentCloudCfsAccessRulesDataSource(t *testing.T) {
Config: testAccCfsAccessRulesDataSource,
Check: resource.ComposeTestCheckFunc(
testAccCheckCfsAccessRuleExists("tencentcloud_cfs_access_rule.foo"),
resource.TestCheckResourceAttr("data.tencentcloud_cfs_access_rules.access_rules", "access_rule_list.#", "1"),
resource.TestCheckResourceAttrSet("data.tencentcloud_cfs_access_rules.access_rules", "access_rule_list.#"),
resource.TestCheckResourceAttrSet("data.tencentcloud_cfs_access_rules.access_rules", "access_rule_list.0.access_rule_id"),
resource.TestCheckResourceAttr("data.tencentcloud_cfs_access_rules.access_rules", "access_rule_list.0.auth_client_ip", "10.10.1.0/24"),
resource.TestCheckResourceAttr("data.tencentcloud_cfs_access_rules.access_rules", "access_rule_list.0.priority", "1"),
Expand All @@ -27,19 +27,16 @@ func TestAccTencentCloudCfsAccessRulesDataSource(t *testing.T) {
})
}

const testAccCfsAccessRulesDataSource = `
resource "tencentcloud_cfs_access_group" "foo" {
name = "test_cfs_access_rule"
}
const testAccCfsAccessRulesDataSource = defaultCfsAccessGroup + `

resource "tencentcloud_cfs_access_rule" "foo" {
access_group_id = tencentcloud_cfs_access_group.foo.id
access_group_id = local.cfs_access_group_id
auth_client_ip = "10.10.1.0/24"
priority = 1
}

data "tencentcloud_cfs_access_rules" "access_rules" {
access_group_id = tencentcloud_cfs_access_group.foo.id
access_group_id = local.cfs_access_group_id
access_rule_id = tencentcloud_cfs_access_rule.foo.id
}
`
8 changes: 2 additions & 6 deletions tencentcloud/data_source_tc_cfs_file_systems_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ func TestAccTencentCloudCfsFileSystemsDataSource(t *testing.T) {
})
}

const testAccCfsFileSystemsDataSource = `
const testAccCfsFileSystemsDataSource = defaultCfsAccessGroup + `
resource "tencentcloud_vpc" "vpc" {
name = "test-cfs-vpc"
cidr_block = "10.2.0.0/16"
Expand All @@ -44,14 +44,10 @@ resource "tencentcloud_subnet" "subnet" {
availability_zone = "ap-guangzhou-3"
}

resource "tencentcloud_cfs_access_group" "foo" {
name = "test_cfs_access_rule"
}

resource "tencentcloud_cfs_file_system" "foo" {
name = "test_cfs_file_system"
availability_zone = "ap-guangzhou-3"
access_group_id = tencentcloud_cfs_access_group.foo.id
access_group_id = local.cfs_access_group_id
protocol = "NFS"
vpc_id = tencentcloud_vpc.vpc.id
subnet_id = tencentcloud_subnet.subnet.id
Expand Down
35 changes: 35 additions & 0 deletions tencentcloud/resource_tc_cfs_access_group_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,47 @@ package tencentcloud
import (
"context"
"fmt"
"strings"
"testing"

"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
"github.com/hashicorp/terraform-plugin-sdk/terraform"
)

func init() {
// go test -v ./tencentcloud -sweep=ap-guangzhou -sweep-run=tencentcloud_cfs_access_group
resource.AddTestSweepers("tencentcloud_cfs_access_group", &resource.Sweeper{
Name: "tencentcloud_cfs_access_group",
F: func(r string) error {
logId := getLogId(contextNil)
ctx := context.WithValue(context.TODO(), logIdKey, logId)
cli, _ := sharedClientForRegion(r)
client := cli.(*TencentCloudClient).apiV3Conn

service := CfsService{client}

groups, err := service.DescribeAccessGroup(ctx, "", "")

if err != nil {
return err
}

for i := range groups {
id := *groups[i].PGroupId
name := *groups[i].Name
if isResourcePersist(name, nil) || !strings.HasPrefix(name, "pgroup-") {
continue
}
if err := service.DeleteAccessGroup(ctx, id); err != nil {
continue
}
}

return nil
},
})
}

func TestAccTencentCloudCfsAccessGroup(t *testing.T) {
t.Parallel()
resource.Test(t, resource.TestCase{
Expand Down
5 changes: 1 addition & 4 deletions tencentcloud/resource_tc_cfs_access_rule_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -98,12 +98,9 @@ func testAccCheckCfsAccessRuleExists(n string) resource.TestCheckFunc {
}

const testAccCfsAccessRule = `
resource "tencentcloud_cfs_access_group" "foo" {
name = "test_cfs_access_rule"
}

resource "tencentcloud_cfs_access_rule" "foo" {
access_group_id = tencentcloud_cfs_access_group.foo.id
access_group_id = "` + BasicCfsAccessGroup + `"
auth_client_ip = "10.10.1.0/24"
priority = 1
}
Expand Down
7 changes: 2 additions & 5 deletions tencentcloud/resource_tc_cfs_file_system_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -163,14 +163,11 @@ resource "tencentcloud_subnet" "subnet" {
availability_zone = "ap-guangzhou-3"
}

resource "tencentcloud_cfs_access_group" "foo" {
name = "test_cfs_access_rule"
}

resource "tencentcloud_cfs_file_system" "foo" {
name = "test_cfs_file_system"
availability_zone = "ap-guangzhou-3"
access_group_id = tencentcloud_cfs_access_group.foo.id
access_group_id = "%s"
protocol = "NFS"
vpc_id = tencentcloud_vpc.vpc.id
subnet_id = tencentcloud_subnet.subnet.id
Expand All @@ -181,5 +178,5 @@ resource "tencentcloud_cfs_file_system" "foo" {
role = "%s"
}
}
`, value)
`, BasicCfsAccessGroup, value)
}