MCPcopy Create free account
hub / github.com/chainloop-dev/chainloop / Create

Method Create

app/controlplane/internal/service/group.go:48–79  ·  view source on GitHub ↗

Create creates a new group in the organization.

(ctx context.Context, req *pb.GroupServiceCreateRequest)

Source from the content-addressed store, hash-verified

46
47// Create creates a new group in the organization.
48func (g *GroupService) Create(ctx context.Context, req *pb.GroupServiceCreateRequest) (*pb.GroupServiceCreateResponse, error) {
49 currentOrg, err := requireCurrentOrg(ctx)
50 if err != nil {
51 return nil, err
52 }
53
54 currentUser, err := requireCurrentUser(ctx)
55 if err != nil {
56 return nil, err
57 }
58
59 // Parse userUUID (current user)
60 userUUID, err := uuid.Parse(currentUser.ID)
61 if err != nil {
62 return nil, errors.BadRequest("invalid", "invalid user ID")
63 }
64
65 // Parse orgID
66 orgUUID, err := uuid.Parse(currentOrg.ID)
67 if err != nil {
68 return nil, errors.BadRequest("invalid", "invalid organization ID")
69 }
70
71 gr, err := g.groupUseCase.Create(ctx, orgUUID, req.Name, req.Description, &userUUID)
72 if err != nil {
73 return nil, handleUseCaseErr(err, g.log)
74 }
75
76 return &pb.GroupServiceCreateResponse{
77 Group: bizGroupToPb(gr),
78 }, nil
79}
80
81// Get retrieves a group by its ID within the current organization.
82func (g *GroupService) Get(ctx context.Context, req *pb.GroupServiceGetRequest) (*pb.GroupServiceGetResponse, error) {

Callers

nothing calls this directly

Calls 6

requireCurrentOrgFunction · 0.85
requireCurrentUserFunction · 0.85
handleUseCaseErrFunction · 0.85
bizGroupToPbFunction · 0.85
ParseMethod · 0.80
CreateMethod · 0.65

Tested by

no test coverage detected