code: func CreateUserAndRoleWithoutRoles(clt clt, username string, allowedLogins []string) (services.User, services.Role, error) {
  	user, err := services.NewUser(username)
  	if err != nil {
  		return nil, nil, trace.Wrap(err)
  	}
  
  	role := services.RoleForUser(user)
  	set := services.MakeRuleSet(role.GetRules(services.Allow))
  	delete(set, services.KindRole)
  	role.SetRules(services.Allow, set.Slice())
  	role.SetLogins(services.Allow, []string{user.GetName()})
  	err = clt.UpsertRole(role)
  	if err != nil {
  		return nil, nil, trace.Wrap(err)
  	}
  
  	user.AddRole(role.GetName())
  	err = clt.UpsertUser(user)
  	if err != nil {
  		return nil, nil, trace.Wrap(err)
  	}
  
  	return user, role, nil
  }
docs: // CreateUserAndRoleWithoutRoles creates user and role, but does not assign user to a role, used in tests