@@ -276,17 +276,17 @@ func (o *teamResourceType) Grant(ctx context.Context, principal *v2.Resource, en
276276 return nil , err
277277 }
278278
279- userTrait , err := rType . GetUserTrait (principal )
279+ userId , err := strconv . ParseInt (principal . Id . Resource , 10 , 64 )
280280 if err != nil {
281281 return nil , err
282282 }
283283
284- userLogin , ok := rType . GetProfileStringValue ( userTrait . Profile , "login" )
285- if ! ok {
286- return nil , err
284+ user , _ , err := o . client . Users . GetByID ( ctx , userId )
285+ if err != nil {
286+ return nil , fmt . Errorf ( "github-connectorv2: failed to get user %d, err: %w" , userId , err )
287287 }
288288
289- _ , _ , e := o .client .Teams .AddTeamMembershipByID (ctx , orgId , teamId , userLogin , & github.TeamAddTeamMembershipOptions {
289+ _ , _ , e := o .client .Teams .AddTeamMembershipByID (ctx , orgId , teamId , user . GetLogin () , & github.TeamAddTeamMembershipOptions {
290290 Role : entitlement .Slug ,
291291 })
292292 if e != nil {
@@ -325,17 +325,16 @@ func (o *teamResourceType) Revoke(ctx context.Context, grant *v2.Grant) (annotat
325325 return nil , err
326326 }
327327
328- userTrait , err := rType . GetUserTrait (principal )
328+ userId , err := strconv . ParseInt (principal . Id . Resource , 10 , 64 )
329329 if err != nil {
330330 return nil , err
331331 }
332332
333- userLogin , ok := rType . GetProfileStringValue ( userTrait . Profile , "login" )
334- if ! ok {
335- return nil , err
333+ user , _ , err := o . client . Users . GetByID ( ctx , userId )
334+ if err != nil {
335+ return nil , fmt . Errorf ( "github-connectorv2: failed to get user %d, err: %w" , userId , err )
336336 }
337-
338- _ , e := o .client .Teams .RemoveTeamMembershipByID (ctx , orgId , teamId , userLogin )
337+ _ , e := o .client .Teams .RemoveTeamMembershipByID (ctx , orgId , teamId , user .GetLogin ())
339338 if e != nil {
340339 return nil , fmt .Errorf ("github-connectorv2: failed to revoke user team membership: %w" , e )
341340 }
0 commit comments