Skip to content

Commit

Permalink
renamed cifs local group member
Browse files Browse the repository at this point in the history
  • Loading branch information
wenjun666 committed Sep 17, 2024
1 parent 0302fd2 commit 360d64d
Show file tree
Hide file tree
Showing 8 changed files with 28 additions and 24 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

BREAKING CHANGES:
* **Rename Resource:** `netapp-ontap_cluster_peers` is now renamed to `netapp-ontap_cluster_peer`
* **Rename Resource:** `netapp-ontap_cifs_local_group_member` is now renamed to `netapp-ontap_cifs_local_group_members`


FEATURES:
* **provider**: add `aws_lambda` option. ([#262](https://github.com/NetApp/terraform-provider-netapp-ontap/issues/262))
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "netapp-ontap_cifs_local_group_member Resource - terraform-provider-netapp-ontap"
page_title: "netapp-ontap_cifs_local_group_members Resource - terraform-provider-netapp-ontap"
subcategory: "NAS"
description: |-
CifsLocalGroupMember resource
CifsLocalGroupMembers resource
---

# Resource Protocols Cifs Local Group Mmember

Create/Read/Delete a member in a local group resource
Create/Read/Delete one or more members in a local group resource

~> **NOTE:** This module does not support member modification

Expand All @@ -23,7 +23,7 @@ Create/Read/Delete a member in a local group resource
## Example Usage

```terraform
resource "netapp-ontap_cifs_local_group_member" "protocols_cifs_local_group_member" {
resource "netapp-ontap_cifs_local_group_members" "protocols_cifs_local_group_member" {
# required to know which system to interface with
cx_profile_name = "cluster4"
group_name = "SVM_SERVER\\testme"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
resource "netapp-ontap_cifs_local_group_member" "protocols_cifs_local_group_member" {
resource "netapp-ontap_cifs_local_group_members" "protocols_cifs_local_group_member" {
# required to know which system to interface with
cx_profile_name = "cluster4"
group_name = "SVM_SERVER\\testme"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,11 @@ package protocols
import (
"context"
"fmt"
"github.com/netapp/terraform-provider-netapp-ontap/internal/provider/connection"
"regexp"
"strings"

"github.com/netapp/terraform-provider-netapp-ontap/internal/provider/connection"

"github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator"
"github.com/hashicorp/terraform-plugin-framework/path"
"github.com/hashicorp/terraform-plugin-framework/resource"
Expand All @@ -28,7 +29,7 @@ var _ resource.ResourceWithImportState = &CifsLocalGroupMemberResource{}
func NewCifsLocalGroupMemberResource() resource.Resource {
return &CifsLocalGroupMemberResource{
config: connection.ResourceOrDataSourceConfig{
Name: "cifs_local_group_member",
Name: "cifs_local_group_members",
},
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,66 +2,67 @@ package protocols_test

import (
"fmt"
ntest "github.com/netapp/terraform-provider-netapp-ontap/internal/provider"
"os"
"regexp"
"testing"

ntest "github.com/netapp/terraform-provider-netapp-ontap/internal/provider"

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

func TestAccCifsLocalGroupMemberResource(t *testing.T) {
func TestAccCifsLocalGroupMembersResource(t *testing.T) {
resource.Test(t, resource.TestCase{
PreCheck: func() { ntest.TestAccPreCheck(t) },
ProtoV6ProviderFactories: ntest.TestAccProtoV6ProviderFactories,
Steps: []resource.TestStep{
{
Config: testAccCifsLocalGroupMemberResourceConfigMissingVars("non-existant"),
Config: testAccCifsLocalGroupMembersResourceConfigMissingVars("non-existant"),
ExpectError: regexp.MustCompile("Missing required argument"),
},
// create with basic argument on a local group member
{
// configuration of group name and memmber name have to be double \ otherwise it will be treated as escape character
Config: testAccCifsLocalGroupMemberResourceConfig("svm3", "SVM3_SERVER\\\\accgroup1", "SVM3_SERVER\\\\accuser3"),
Config: testAccCifsLocalGroupMembersResourceConfig("svm3", "SVM3_SERVER\\\\accgroup1", "SVM3_SERVER\\\\accuser3"),
Check: resource.ComposeTestCheckFunc(
// check member
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_member.example1", "member", "SVM3_SERVER\\accuser3"),
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_members.example1", "member", "SVM3_SERVER\\accuser3"),
// check group_name
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_member.example1", "group_name", "SVM3_SERVER\\accgroup1"),
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_members.example1", "group_name", "SVM3_SERVER\\accgroup1"),
// check svm_name
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_member.example1", "svm_name", "svm3"),
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_members.example1", "svm_name", "svm3"),
// check ID
resource.TestCheckResourceAttrSet("netapp-ontap_cifs_local_group_member.example1", "id"),
resource.TestCheckResourceAttrSet("netapp-ontap_cifs_local_group_members.example1", "id"),
),
},
// Test importing a resource
{
ResourceName: "netapp-ontap_cifs_local_group_member.example1",
ResourceName: "netapp-ontap_cifs_local_group_members.example1",
ImportState: true,
ImportStateId: fmt.Sprintf("%s,%s,%s,%s", "SVM3_SERVER\\accuser3", "SVM3_SERVER\\accgroup1", "svm3", "cluster4"),
Check: resource.ComposeTestCheckFunc(
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_member.example1", "svm_name", "svm3"),
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_member.example1", "group_name", "SVM3_SERVER\\accgroup1"),
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_member.example1", "member", "SVM3_SERVER\\accuser3"),
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_members.example1", "svm_name", "svm3"),
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_members.example1", "group_name", "SVM3_SERVER\\accgroup1"),
resource.TestCheckResourceAttr("netapp-ontap_cifs_local_group_members.example1", "member", "SVM3_SERVER\\accuser3"),
// check id
resource.TestCheckResourceAttrSet("netapp-ontap_cifs_local_group_member.example1", "id"),
resource.TestCheckResourceAttrSet("netapp-ontap_cifs_local_group_members.example1", "id"),
),
},
},
})
}

func testAccCifsLocalGroupMemberResourceConfigMissingVars(svmName string) string {
func testAccCifsLocalGroupMembersResourceConfigMissingVars(svmName string) string {
return fmt.Sprintf(`
resource "netapp-ontap_cifs_local_group_member" "example1" {
resource "netapp-ontap_cifs_local_group_members" "example1" {
svm_name = "%s"
group_name = "SVM3_SERVER\\accgroup1"
member = "SVM3_SERVER\\accuser3"
}
`, svmName)
}

func testAccCifsLocalGroupMemberResourceConfig(svmName, groupName, member string) string {
func testAccCifsLocalGroupMembersResourceConfig(svmName, groupName, member string) string {
host := os.Getenv("TF_ACC_NETAPP_HOST")
admin := os.Getenv("TF_ACC_NETAPP_USER")
password := os.Getenv("TF_ACC_NETAPP_PASS")
Expand All @@ -81,7 +82,7 @@ provider "netapp-ontap" {
},
]
}
resource "netapp-ontap_cifs_local_group_member" "example1" {
resource "netapp-ontap_cifs_local_group_members" "example1" {
cx_profile_name = "cluster4"
svm_name = "%s"
group_name = "%s"
Expand Down

0 comments on commit 360d64d

Please sign in to comment.