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

Method GetService

admin/server/service.go:109–148  ·  view source on GitHub ↗
(ctx context.Context, req *adminv1.GetServiceRequest)

Source from the content-addressed store, hash-verified

107}
108
109func (s *Server) GetService(ctx context.Context, req *adminv1.GetServiceRequest) (*adminv1.GetServiceResponse, error) {
110 observability.AddRequestAttributes(ctx,
111 attribute.String("args.name", req.Name),
112 attribute.String("args.organization", req.Org),
113 )
114
115 org, err := s.admin.DB.FindOrganizationByName(ctx, req.Org)
116 if err != nil {
117 return nil, err
118 }
119
120 claims := auth.GetClaims(ctx)
121 if !claims.OrganizationPermissions(ctx, org.ID).ManageOrg {
122 return nil, status.Error(codes.PermissionDenied, "not allowed to show service")
123 }
124
125 service, err := s.admin.DB.FindServiceByName(ctx, org.ID, req.Name)
126 if err != nil {
127 return nil, err
128 }
129
130 orgMemberService, err := s.admin.DB.FindOrganizationMemberServiceForService(ctx, service.ID)
131 if err != nil {
132 return nil, err
133 }
134
135 projectMemberServices, err := s.admin.DB.FindProjectMemberServicesForService(ctx, service.ID)
136 if err != nil {
137 return nil, err
138 }
139 var projectMemberServicesPB []*adminv1.ProjectMemberService
140 for _, projectMemberService := range projectMemberServices {
141 projectMemberServicesPB = append(projectMemberServicesPB, projectMemberServiceWithProjectToPB(projectMemberService, org.ID, org.Name))
142 }
143
144 return &adminv1.GetServiceResponse{
145 Service: orgMemberServiceToPB(orgMemberService, org.ID, org.Name),
146 ProjectMemberships: projectMemberServicesPB,
147 }, nil
148}
149
150// ListServices lists all service accounts in an organization.
151func (s *Server) ListServices(ctx context.Context, req *adminv1.ListServicesRequest) (*adminv1.ListServicesResponse, error) {

Callers

nothing calls this directly

Calls 11

AddRequestAttributesFunction · 0.92
GetClaimsFunction · 0.92
orgMemberServiceToPBFunction · 0.85
StringMethod · 0.65
FindServiceByNameMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected