Skip to content

Commit 906ceb9

Browse files
fix: fix dbauthz
1 parent e252093 commit 906ceb9

File tree

3 files changed

+41
-2
lines changed

3 files changed

+41
-2
lines changed

coderd/database/dbauthz/dbauthz.go

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4179,7 +4179,21 @@ func (q *querier) UpdateOrganizationDeletedByID(ctx context.Context, arg databas
41794179
}
41804180

41814181
func (q *querier) UpdatePrebuildStatus(ctx context.Context, arg database.UpdatePrebuildStatusParams) error {
4182-
panic("not implemented")
4182+
preset, err := q.db.GetPresetByID(ctx, arg.PresetID)
4183+
if err != nil {
4184+
return err
4185+
}
4186+
4187+
object := rbac.ResourceTemplate.
4188+
WithID(preset.TemplateID.UUID).
4189+
InOrg(preset.OrganizationID)
4190+
4191+
err = q.authorizeContext(ctx, policy.ActionUpdate, object)
4192+
if err != nil {
4193+
return err
4194+
}
4195+
4196+
return q.db.UpdatePrebuildStatus(ctx, arg)
41834197
}
41844198

41854199
func (q *querier) UpdateProvisionerDaemonLastSeenAt(ctx context.Context, arg database.UpdateProvisionerDaemonLastSeenAtParams) error {

coderd/database/dbauthz/dbauthz_test.go

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4943,6 +4943,31 @@ func (s *MethodTestSuite) TestPrebuilds() {
49434943
OrganizationID: org.ID,
49444944
})
49454945
}))
4946+
s.Run("UpdatePrebuildStatus", s.Subtest(func(db database.Store, check *expects) {
4947+
org := dbgen.Organization(s.T(), db, database.Organization{})
4948+
user := dbgen.User(s.T(), db, database.User{})
4949+
template := dbgen.Template(s.T(), db, database.Template{
4950+
OrganizationID: org.ID,
4951+
CreatedBy: user.ID,
4952+
})
4953+
templateVersion := dbgen.TemplateVersion(s.T(), db, database.TemplateVersion{
4954+
TemplateID: uuid.NullUUID{
4955+
UUID: template.ID,
4956+
Valid: true,
4957+
},
4958+
OrganizationID: org.ID,
4959+
CreatedBy: user.ID,
4960+
})
4961+
preset := dbgen.Preset(s.T(), db, database.InsertPresetParams{
4962+
TemplateVersionID: templateVersion.ID,
4963+
})
4964+
req := database.UpdatePrebuildStatusParams{
4965+
PresetID: preset.ID,
4966+
}
4967+
check.Args(req).
4968+
Asserts(rbac.ResourceTemplate.WithID(template.ID).InOrg(org.ID), policy.ActionUpdate).
4969+
ErrorsWithInMemDB(dbmem.ErrUnimplemented)
4970+
}))
49464971
}
49474972

49484973
func (s *MethodTestSuite) TestOAuth2ProviderApps() {

coderd/database/dbmem/dbmem.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10873,7 +10873,7 @@ func (q *FakeQuerier) UpdatePrebuildStatus(ctx context.Context, arg database.Upd
1087310873
return err
1087410874
}
1087510875

10876-
panic("not implemented")
10876+
return ErrUnimplemented
1087710877
}
1087810878

1087910879
func (q *FakeQuerier) UpdateProvisionerDaemonLastSeenAt(_ context.Context, arg database.UpdateProvisionerDaemonLastSeenAtParams) error {

0 commit comments

Comments
 (0)