...

Source file src/edge-infra.dev/pkg/edge/api/services/bsp_groups.go

Documentation: edge-infra.dev/pkg/edge/api/services

     1  package services
     2  
     3  import (
     4  	"context"
     5  	"fmt"
     6  	"net/http"
     7  
     8  	"edge-infra.dev/pkg/edge/api/bsl/types"
     9  	"edge-infra.dev/pkg/edge/api/graph/model"
    10  	"edge-infra.dev/pkg/edge/bsl"
    11  )
    12  
    13  func GetGroupsForUser(_ context.Context, client *bsl.Request, username string) ([]string, error) {
    14  	resp := &types.GroupDataResponse{}
    15  	groups := make([]string, 0)
    16  	err := client.JSON(http.MethodGet, fmt.Sprintf(getUsersGroups, username), resp)
    17  	if err != nil {
    18  		return groups, err
    19  	}
    20  	for _, value := range resp.Memberships {
    21  		groupName := value["groupName"]
    22  		if model.Role(groupName).IsValid() {
    23  			groups = append(groups, groupName)
    24  		}
    25  	}
    26  	return groups, nil
    27  }
    28  

View as plain text