Skip to content

Commit

Permalink
fix(objects): update to new gitlab api for path, and args
Browse files Browse the repository at this point in the history
Updated the gitlab path for set_approvers to approvers_rules, added default arg for rule type, and added arg for # of approvals required.
  • Loading branch information
Charles committed Jan 30, 2020
1 parent 7843ace commit e512cdd
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions gitlab/v4/objects.py
Expand Up @@ -2685,10 +2685,11 @@ class ProjectMergeRequestApprovalManager(GetWithoutIdMixin, UpdateMixin, RESTMan
_update_uses_post = True

@exc.on_http_error(exc.GitlabUpdateError)
def set_approvers(self, approver_ids=None, approver_group_ids=None, **kwargs):
def set_approvers(self, approvals_required, approver_ids=None, approver_group_ids=None, **kwargs):
"""Change MR-level allowed approvers and approver groups.
Args:
approvals_required (integer): The number of required approvals for this rule
approver_ids (list): User IDs that can approve MRs
approver_group_ids (list): Group IDs whose members can approve MRs
Expand All @@ -2699,8 +2700,12 @@ def set_approvers(self, approver_ids=None, approver_group_ids=None, **kwargs):
approver_ids = approver_ids or []
approver_group_ids = approver_group_ids or []

path = "%s/%s/approvers" % (self._parent.manager.path, self._parent.get_id())
data = {"approver_ids": approver_ids, "approver_group_ids": approver_group_ids}
path = "%s/%s/approval_rules" % (self._parent.manager.path, self._parent.get_id())
data = {
"approvals_required": approvals_required,
"rule_type": "regular",
"user_ids": approver_ids,
"group_ids": approver_group_ids}
self.gitlab.http_put(path, post_data=data, **kwargs)


Expand Down

0 comments on commit e512cdd

Please sign in to comment.