MCPcopy Index your code
hub / github.com/coder/coder / GetTemplateVersionByID

Method GetTemplateVersionByID

coderd/database/dbauthz/dbauthz.go:4338–4353  ·  view source on GitHub ↗
(ctx context.Context, tvid uuid.UUID)

Source from the content-addressed store, hash-verified

4336}
4337
4338func (q *querier) GetTemplateVersionByID(ctx context.Context, tvid uuid.UUID) (database.TemplateVersion, error) {
4339 tv, err := q.db.GetTemplateVersionByID(ctx, tvid)
4340 if err != nil {
4341 return database.TemplateVersion{}, err
4342 }
4343 if !tv.TemplateID.Valid {
4344 // If no linked template exists, check if the actor can read a template in the organization.
4345 if err := q.authorizeContext(ctx, policy.ActionRead, rbac.ResourceTemplate.InOrg(tv.OrganizationID)); err != nil {
4346 return database.TemplateVersion{}, err
4347 }
4348 } else if _, err := q.GetTemplateByID(ctx, tv.TemplateID.UUID); err != nil {
4349 // An actor can read the template version if they can read the related template.
4350 return database.TemplateVersion{}, err
4351 }
4352 return tv, nil
4353}
4354
4355func (q *querier) GetTemplateVersionByJobID(ctx context.Context, jobID uuid.UUID) (database.TemplateVersion, error) {
4356 tv, err := q.db.GetTemplateVersionByJobID(ctx, jobID)

Calls 4

authorizeContextMethod · 0.95
GetTemplateByIDMethod · 0.95
InOrgMethod · 0.80

Tested by

no test coverage detected