Skip to content

Commit

Permalink
Merge pull request #2333 from python-gitlab/jlvillal/remove_approvers…
Browse files Browse the repository at this point in the history
…_endpoint

fix: remove `project.approvals.set_approvals()` method
  • Loading branch information
nejch committed Oct 19, 2022
2 parents c676b43 + f0c02a5 commit eb54adf
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 37 deletions.
5 changes: 0 additions & 5 deletions docs/gl_objects/merge_request_approvals.rst
Expand Up @@ -63,11 +63,6 @@ Change project-level or MR-level MR approvals settings::
mr_mras.approvals_required = 1
mr_mras.save()

Change project-level MR allowed approvers::

project.approvals.set_approvers(approver_ids=[105],
approver_group_ids=[653, 654])

Create a new MR-level approval rule or change an existing MR-level approval rule::

mr.approvals.set_approvers(approvals_required = 1, approver_ids=[105],
Expand Down
32 changes: 0 additions & 32 deletions gitlab/v4/objects/merge_request_approvals.py
Expand Up @@ -50,38 +50,6 @@ class ProjectApprovalManager(GetWithoutIdMixin, UpdateMixin, RESTManager):
def get(self, **kwargs: Any) -> ProjectApproval:
return cast(ProjectApproval, super().get(**kwargs))

@exc.on_http_error(exc.GitlabUpdateError)
def set_approvers(
self,
approver_ids: Optional[List[int]] = None,
approver_group_ids: Optional[List[int]] = None,
**kwargs: Any,
) -> Dict[str, Any]:
"""Change project-level allowed approvers and approver groups.
Args:
approver_ids: User IDs that can approve MRs
approver_group_ids: Group IDs whose members can approve MRs
Raises:
GitlabAuthenticationError: If authentication is not correct
GitlabUpdateError: If the server failed to perform the request
Returns:
A dict value of the result
"""
approver_ids = approver_ids or []
approver_group_ids = approver_group_ids or []

if TYPE_CHECKING:
assert self._parent is not None
path = f"/projects/{self._parent.encoded_id}/approvers"
data = {"approver_ids": approver_ids, "approver_group_ids": approver_group_ids}
result = self.gitlab.http_put(path, post_data=data, **kwargs)
if TYPE_CHECKING:
assert isinstance(result, dict)
return result


class ProjectApprovalRule(SaveMixin, ObjectDeleteMixin, RESTObject):
_id_attr = "id"
Expand Down
1 change: 1 addition & 0 deletions pyproject.toml
Expand Up @@ -58,6 +58,7 @@ disable = [
"missing-class-docstring",
"missing-function-docstring",
"missing-module-docstring",
"not-callable",
"protected-access",
"redefined-builtin",
"signature-differs",
Expand Down

0 comments on commit eb54adf

Please sign in to comment.