Skip to content

Commit

Permalink
Merge pull request #101 from tsueho/add-display-name
Browse files Browse the repository at this point in the history
Add support for displayName
  • Loading branch information
pablo-ruth authored Aug 29, 2023
2 parents b432f6d + 2b90291 commit 9071127
Show file tree
Hide file tree
Showing 6 changed files with 31 additions and 5 deletions.
3 changes: 2 additions & 1 deletion docs/data-sources/group.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,5 @@ data "ldap_group" "group" {
* `id` - The DN of the LDAP group.
* `members` - LDAP DN of group members
* `members_names` - LDAP name of group members
* `managed_by` - ManagedBy attribute.
* `managed_by` - ManagedBy attribute.
* `display_name` - The displayName of the group.
1 change: 1 addition & 0 deletions docs/resources/group.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ resource "ldap_group" "group" {
* `description` - (Optional) Description attribute for the LDAP group. Defaults to empty.
* `group_type` - (Optional, Computed) Type of the group.
* `managed_by` - (Optional) ManagedBy attribute. Defaults to ``.
* `display_name` - (Optional) The displayName of the group. Defaults to ``.

## Attribute Reference

Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ module github.com/Ouest-France/terraform-provider-ldap
go 1.18

require (
github.com/Ouest-France/goldap v0.6.5
github.com/Ouest-France/goldap v0.7.1
github.com/go-ldap/ldap/v3 v3.4.5
github.com/hashicorp/terraform-plugin-sdk/v2 v2.27.0
)
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 h1:mFRzDkZVAjdal+s7s0MwaRv9igoPqLRdzOLzw/8Xvq8=
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358/go.mod h1:chxPXzSsl7ZWRAuOIE23GDNzjWuZquvFlgA8xmpunjU=
github.com/Ouest-France/goldap v0.6.5 h1:yzBs8GLhP9vO420bmJEmJkrDH0S3/hs75pV8Ke1NZqk=
github.com/Ouest-France/goldap v0.6.5/go.mod h1:1oPqn1er8HgJglFFCRpY+puY6mnSJQYVxb77wMuCxAA=
github.com/Ouest-France/goldap v0.7.1 h1:EfTG6sL15UagDAA5f71ufjQsh45pBxE0DdIZnD1Bd6Y=
github.com/Ouest-France/goldap v0.7.1/go.mod h1:nyCODysaBbtbM8fyHrD4YgJwfnVGuva6uNbCZYYUuME=
github.com/agext/levenshtein v1.2.2 h1:0S/Yg6LYmFJ5stwQeRp6EeOcCbj7xiqQSdNelsXvaqE=
github.com/agext/levenshtein v1.2.2/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558=
github.com/alexbrainman/sspi v0.0.0-20210105120005-909beea2cc74 h1:Kk6a4nehpJ3UuJRqlA3JxYxBZEqCeOmATOvrbT4p9RA=
Expand Down
5 changes: 5 additions & 0 deletions ldap/data_source_resource_ldap_group.go
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,11 @@ func dataSourceLDAPGroup() *schema.Resource {
Type: schema.TypeString,
Computed: true,
},
"display_name": {
Description: "The displayName of the group",
Type: schema.TypeString,
Computed: true,
},
},
}
}
Expand Down
21 changes: 20 additions & 1 deletion ldap/resource_ldap_group.go
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,12 @@ func resourceLDAPGroup() *schema.Resource {
Optional: true,
Default: "",
},
"display_name": {
Description: "The displayName of the group",
Type: schema.TypeString,
Optional: true,
Default: "",
},
},
}
}
Expand All @@ -89,7 +95,7 @@ func resourceLDAPGroupCreate(ctx context.Context, d *schema.ResourceData, m inte
members = append(members, member.(string))
}

err := client.CreateGroup(dn, d.Get("name").(string), d.Get("description").(string), d.Get("group_type").(string), d.Get("managed_by").(string), members)
err := client.CreateGroup(dn, d.Get("name").(string), d.Get("description").(string), d.Get("group_type").(string), d.Get("managed_by").(string), d.Get("display_name").(string), members)
if err != nil {
return diag.FromErr(err)
}
Expand Down Expand Up @@ -170,6 +176,13 @@ func resourceLDAPGroupRead(ctx context.Context, d *schema.ResourceData, m interf
if err := d.Set("managed_by", managedBy); err != nil {
return diag.FromErr(err)
}
displayName := ""
if val, ok := attributes["displayName"]; ok {
displayName = val[0]
}
if err := d.Set("display_name", displayName); err != nil {
return diag.FromErr(err)
}

members := []string{}
members_names := []string{}
Expand Down Expand Up @@ -229,6 +242,12 @@ func resourceLDAPGroupUpdate(ctx context.Context, d *schema.ResourceData, m inte
}
}

if d.HasChange("display_name") {
if err := client.UpdateGroupDisplayName(dn, d.Get("display_name").(string)); err != nil {
return diag.FromErr(err)
}
}

return resourceLDAPGroupRead(ctx, d, m)
}

Expand Down

0 comments on commit 9071127

Please sign in to comment.