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

Method GetServerless

component/model.go:427–464  ·  view source on GitHub ↗
(ctx context.Context, namespace, name, currentUser string)

Source from the content-addressed store, hash-verified

425}
426
427func (c *ModelComponent) GetServerless(ctx context.Context, namespace, name, currentUser string) (*types.DeployRepo, error) {
428 model, err := c.ms.FindByPath(ctx, namespace, name)
429 if err != nil {
430 return nil, fmt.Errorf("failed to find model, error: %w", err)
431 }
432 allow, _ := c.AllowReadAccessRepo(ctx, model.Repository, currentUser)
433 if !allow {
434 return nil, ErrUnauthorized
435 }
436 deploy, err := c.deploy.GetServerlessDeployByRepID(ctx, model.Repository.ID)
437 if err != nil {
438 return nil, fmt.Errorf("failed to get serverless deployment, error: %w", err)
439 }
440 if deploy == nil {
441 return nil, nil
442 }
443 endpoint, _ := c.generateEndpoint(ctx, deploy)
444
445 resDeploy := types.DeployRepo{
446 DeployID: deploy.ID,
447 DeployName: deploy.DeployName,
448 RepoID: deploy.RepoID,
449 SvcName: deploy.SvcName,
450 Status: deployStatusCodeToString(deploy.Status),
451 Hardware: deploy.Hardware,
452 Env: deploy.Env,
453 RuntimeFramework: deploy.RuntimeFramework,
454 MinReplica: deploy.MinReplica,
455 MaxReplica: deploy.MaxReplica,
456 GitBranch: deploy.GitBranch,
457 ClusterID: deploy.ClusterID,
458 SecureLevel: deploy.SecureLevel,
459 CreatedAt: deploy.CreatedAt,
460 UpdatedAt: deploy.UpdatedAt,
461 ProxyEndpoint: endpoint,
462 }
463 return &resDeploy, nil
464}
465
466func (c *ModelComponent) SDKModelInfo(ctx context.Context, namespace, name, ref, currentUser string) (*types.SDKModelInfo, error) {
467 model, err := c.ms.FindByPath(ctx, namespace, name)

Callers 1

GetDeployServerlessMethod · 0.80

Calls 5

deployStatusCodeToStringFunction · 0.85
AllowReadAccessRepoMethod · 0.80
generateEndpointMethod · 0.80
FindByPathMethod · 0.45

Tested by

no test coverage detected