Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
How to implement a request splitter for group membership changes requests – partial request approvals
You have owner approval workflow for group membership changes requests.
A person submits request to add 10 users to a group, group owner agrees to add 9 users but declines to add 1 user so he rejects the request.
No users are added to a group as the whole request is rejected. You cannot partially approve or reject a request.
Split original request into separate requests and let approver to choose which requests to approve. The idea is to substitute
Members to add field on RCDC form with a custom attribute
MembersToAdd bound to group object.
You need to create a custom attribute, grant permissions for everyone to manage it and place it on a group edit RCDC form.
Then you add an action workflow
!Groups: split request to add members executed on additions to this multi-valued attribute.
The workflow itself will be very simple: it will iterate through each element added into
MembersToAdd and will submit request to add that element into real group members attribute
ExplicitMember. The key point here is
Apply Authorization Policy option enabled and request actor
The cleanup step removes members added into that temporal
MembersToAdd attribute / cleans it up.
How to test
Open the target group and switch to Members section. Select Jonny English and Kim Jones as
Members to Add… click OK.
Check that 2 items will be added to multi-valued attribute
Members to Add. Click Submit.
Go to Search Requests section on a portal and search for today’s requests.
You have actually made only the highlighted request and two subsequent ones were submitted by MIMWAL using your ActorID.