From f8054779ec8c9702c4641a91b062490f40824fff Mon Sep 17 00:00:00 2001 From: hila1608 Date: Tue, 25 Jun 2024 12:16:52 +0300 Subject: [PATCH] set nested groups --- .../data_source_sysdig_secure_posture_policy.go | 2 +- sysdig/resource_sysdig_secure_posture_policy.go | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/sysdig/data_source_sysdig_secure_posture_policy.go b/sysdig/data_source_sysdig_secure_posture_policy.go index cb5b43ba5..80bbd402f 100644 --- a/sysdig/data_source_sysdig_secure_posture_policy.go +++ b/sysdig/data_source_sysdig_secure_posture_policy.go @@ -121,7 +121,7 @@ func dataSourceSysdigSecurePosturePolicyRead(ctx context.Context, d *schema.Reso } // Set groups - if err := setGroups(d, policy.RequirementsGroup); err != nil { + if _, err := setGroups(d, policy.RequirementsGroup); err != nil { return diag.FromErr(err) } diff --git a/sysdig/resource_sysdig_secure_posture_policy.go b/sysdig/resource_sysdig_secure_posture_policy.go index edc1aaff6..84bfb4caf 100644 --- a/sysdig/resource_sysdig_secure_posture_policy.go +++ b/sysdig/resource_sysdig_secure_posture_policy.go @@ -280,10 +280,7 @@ func resourceSysdigSecurePosturePolicyRead(ctx context.Context, d *schema.Resour } // Set groups - if err := setGroups(d, policy.RequirementsGroup); err != nil { - return diag.FromErr(err) - } - if err != nil { + if _, err := setGroups(d, policy.RequirementsGroup); err != nil { return diag.FromErr(err) } return nil @@ -308,7 +305,7 @@ func resourceSysdigSecurePosturePolicyDelete(ctx context.Context, d *schema.Reso return nil } -func setGroups(d *schema.ResourceData, groups []v2.RequirementsGroup) error { +func setGroups(d *schema.ResourceData, groups []v2.RequirementsGroup) ([]interface{}, error) { var groupsData []interface{} for _, group := range groups { groupData := map[string]interface{}{ @@ -323,13 +320,15 @@ func setGroups(d *schema.ResourceData, groups []v2.RequirementsGroup) error { groupData["requirement"] = requirementsData } if len(group.Folders) > 0 { - nestedGroupsData := setGroups(d, group.Folders) + nestedGroupsData, err := setGroups(d, group.Folders) + if err != nil { + return nil, err + } groupData["group"] = nestedGroupsData } - groupsData = append(groupsData, groupData) } - return d.Set(SchemaGroupKey, groupsData) + return groupsData, nil } func setRequirements(requirements []v2.Requirement) []interface{} {