MCPcopy Create free account
hub / github.com/OpenCSGs/csghub-server / Update

Method Update

component/space.go:268–307  ·  view source on GitHub ↗
(ctx context.Context, req *types.UpdateSpaceReq)

Source from the content-addressed store, hash-verified

266}
267
268func (c *SpaceComponent) Update(ctx context.Context, req *types.UpdateSpaceReq) (*types.Space, error) {
269 req.RepoType = types.SpaceRepo
270 dbRepo, err := c.UpdateRepo(ctx, req.UpdateRepoReq)
271 if err != nil {
272 return nil, err
273 }
274
275 space, err := c.ss.ByRepoID(ctx, dbRepo.ID)
276 if err != nil {
277 return nil, fmt.Errorf("failed to find space, error: %w", err)
278 }
279 err = c.mergeUpdateSpaceRequest(ctx, space, req)
280 if err != nil {
281 return nil, fmt.Errorf("failed to merge update space request, error: %w", err)
282 }
283
284 err = c.ss.Update(ctx, *space)
285 if err != nil {
286 return nil, fmt.Errorf("failed to update database space, error: %w", err)
287 }
288
289 resDataset := &types.Space{
290 ID: space.ID,
291 Name: dbRepo.Name,
292 Path: dbRepo.Path,
293 Sdk: space.Sdk,
294 SdkVersion: space.SdkVersion,
295 Template: space.Template,
296 Env: space.Env,
297 Hardware: space.Hardware,
298 Secrets: space.Secrets,
299 CoverImageUrl: space.CoverImageUrl,
300 License: dbRepo.License,
301 Private: dbRepo.Private,
302 CreatedAt: dbRepo.CreatedAt,
303 SKU: space.SKU,
304 }
305
306 return resDataset, nil
307}
308
309func (c *SpaceComponent) Index(ctx context.Context, filter *types.RepoFilter, per, page int) ([]types.Space, int, error) {
310 var (

Callers 1

FixHasEntryFileMethod · 0.45

Calls 3

UpdateRepoMethod · 0.65
ByRepoIDMethod · 0.45

Tested by

no test coverage detected