Skip to content

Commit

Permalink
Merge pull request #1523 from timofurrer/feature/remove-members-options
Browse files Browse the repository at this point in the history
Implement missing options for `RemoveGroupMembers` API
  • Loading branch information
svanharmelen committed Aug 10, 2022
2 parents bcb4540 + 2129179 commit d8372d3
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions group_members.go
Expand Up @@ -328,18 +328,26 @@ func (s *GroupMembersService) EditGroupMember(gid interface{}, user int, opt *Ed
return gm, resp, err
}

// RemoveGroupMemberOptions represents the available options to remove a group member.
//
// GitLab API docs: https://docs.gitlab.com/ee/api/members.html#remove-a-member-from-a-group-or-project
type RemoveGroupMemberOptions struct {
SkipSubresources *bool `url:"skip_subresources,omitempty" json:"skip_subresources,omitempty"`
UnassignIssuables *bool `url:"unassign_issuables,omitempty" json:"unassign_issuables,omitempty"`
}

// RemoveGroupMember removes user from user team.
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/members.html#remove-a-member-from-a-group-or-project
func (s *GroupMembersService) RemoveGroupMember(gid interface{}, user int, options ...RequestOptionFunc) (*Response, error) {
func (s *GroupMembersService) RemoveGroupMember(gid interface{}, user int, opt *RemoveGroupMemberOptions, options ...RequestOptionFunc) (*Response, error) {
group, err := parseID(gid)
if err != nil {
return nil, err
}
u := fmt.Sprintf("groups/%s/members/%d", PathEscape(group), user)

req, err := s.client.NewRequest(http.MethodDelete, u, nil, options)
req, err := s.client.NewRequest(http.MethodDelete, u, opt, options)
if err != nil {
return nil, err
}
Expand Down

0 comments on commit d8372d3

Please sign in to comment.