Skip to content

Commit 8b92a39

Browse files
author
Sachin Kumar Singh
authored
Merge branch 'main' into feat/add-service-account-management
2 parents 53dcd8c + 12d195a commit 8b92a39

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

gitlab/v4/objects/merge_request_approvals.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,8 @@ def set_approvers(
8989
approver_ids: Optional[List[int]] = None,
9090
approver_group_ids: Optional[List[int]] = None,
9191
approval_rule_name: str = "name",
92+
*,
93+
approver_usernames: Optional[List[str]] = None,
9294
**kwargs: Any,
9395
) -> RESTObject:
9496
"""Change MR-level allowed approvers and approver groups.
@@ -104,13 +106,15 @@ def set_approvers(
104106
"""
105107
approver_ids = approver_ids or []
106108
approver_group_ids = approver_group_ids or []
109+
approver_usernames = approver_usernames or []
107110

108111
data = {
109112
"name": approval_rule_name,
110113
"approvals_required": approvals_required,
111114
"rule_type": "regular",
112115
"user_ids": approver_ids,
113116
"group_ids": approver_group_ids,
117+
"usernames": approver_usernames,
114118
}
115119
if TYPE_CHECKING:
116120
assert self._parent is not None
@@ -124,6 +128,7 @@ def set_approvers(
124128
ar.user_ids = data["user_ids"]
125129
ar.approvals_required = data["approvals_required"]
126130
ar.group_ids = data["group_ids"]
131+
ar.usernames = data["usernames"]
127132
ar.save()
128133
return ar
129134
# if there was no rule matching the rule name, create a new one
@@ -145,14 +150,14 @@ class ProjectMergeRequestApprovalRuleManager(CRUDMixin, RESTManager):
145150
"name",
146151
"approvals_required",
147152
),
148-
optional=("user_ids", "group_ids"),
153+
optional=("user_ids", "group_ids", "usernames"),
149154
)
150155
# Important: When approval_project_rule_id is set, the name, users and
151156
# groups of project-level rule will be copied. The approvals_required
152157
# specified will be used.
153158
_create_attrs = RequiredOptional(
154159
required=("name", "approvals_required"),
155-
optional=("approval_project_rule_id", "user_ids", "group_ids"),
160+
optional=("approval_project_rule_id", "user_ids", "group_ids", "usernames"),
156161
)
157162

158163
def get(

0 commit comments

Comments
 (0)