MCPcopy Create free account
hub / github.com/rilldata/rill / UpdateUsergroup

Method UpdateUsergroup

admin/server/usergroups.go:111–154  ·  view source on GitHub ↗
(ctx context.Context, req *adminv1.UpdateUsergroupRequest)

Source from the content-addressed store, hash-verified

109}
110
111func (s *Server) UpdateUsergroup(ctx context.Context, req *adminv1.UpdateUsergroupRequest) (*adminv1.UpdateUsergroupResponse, error) {
112 observability.AddRequestAttributes(ctx,
113 attribute.String("args.org", req.Org),
114 attribute.String("args.usergroup", req.Usergroup),
115 )
116 if req.NewName != nil {
117 observability.AddRequestAttributes(ctx, attribute.String("args.new_name", *req.NewName))
118 }
119 if req.Description != nil {
120 observability.AddRequestAttributes(ctx, attribute.String("args.description", *req.Description))
121 }
122
123 usergroup, err := s.admin.DB.FindUsergroupByName(ctx, req.Org, req.Usergroup)
124 if err != nil {
125 return nil, err
126 }
127
128 claims := auth.GetClaims(ctx)
129 if !claims.OrganizationPermissions(ctx, usergroup.OrgID).ManageOrgMembers {
130 return nil, status.Error(codes.PermissionDenied, "not allowed to update org user group")
131 }
132
133 if usergroup.Managed {
134 return nil, status.Error(codes.FailedPrecondition, "cannot edit managed user group")
135 }
136
137 if req.NewName != nil {
138 usergroup, err = s.admin.DB.UpdateUsergroupName(ctx, *req.NewName, usergroup.ID)
139 if err != nil {
140 return nil, err
141 }
142 }
143
144 if req.Description != nil {
145 usergroup, err = s.admin.DB.UpdateUsergroupDescription(ctx, *req.Description, usergroup.ID)
146 if err != nil {
147 return nil, err
148 }
149 }
150
151 return &adminv1.UpdateUsergroupResponse{
152 Usergroup: usergroupToPB(usergroup),
153 }, nil
154}
155
156func (s *Server) ListOrganizationMemberUsergroups(ctx context.Context, req *adminv1.ListOrganizationMemberUsergroupsRequest) (*adminv1.ListOrganizationMemberUsergroupsResponse, error) {
157 observability.AddRequestAttributes(ctx,

Callers

nothing calls this directly

Calls 9

AddRequestAttributesFunction · 0.92
GetClaimsFunction · 0.92
usergroupToPBFunction · 0.85
StringMethod · 0.65
FindUsergroupByNameMethod · 0.65
UpdateUsergroupNameMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected