Skip to content

Commit f060324

Browse files
committed
merge UpdateWorkspaceBuildAITaskByID with UpdateWorkspaceBuildExternalAgentByID
1 parent 51967a5 commit f060324

File tree

12 files changed

+54
-131
lines changed

12 files changed

+54
-131
lines changed

coderd/apidoc/docs.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/apidoc/swagger.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/dbauthz/dbauthz.go

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5104,7 +5104,7 @@ func (q *querier) UpdateWorkspaceAutostart(ctx context.Context, arg database.Upd
51045104
return update(q.log, q.auth, fetch, q.db.UpdateWorkspaceAutostart)(ctx, arg)
51055105
}
51065106

5107-
func (q *querier) UpdateWorkspaceBuildAITaskByID(ctx context.Context, arg database.UpdateWorkspaceBuildAITaskByIDParams) error {
5107+
func (q *querier) UpdateWorkspaceBuildAITaskAndExternalAgentByID(ctx context.Context, arg database.UpdateWorkspaceBuildAITaskAndExternalAgentByIDParams) error {
51085108
build, err := q.db.GetWorkspaceBuildByID(ctx, arg.ID)
51095109
if err != nil {
51105110
return err
@@ -5119,7 +5119,7 @@ func (q *querier) UpdateWorkspaceBuildAITaskByID(ctx context.Context, arg databa
51195119
if err != nil {
51205120
return err
51215121
}
5122-
return q.db.UpdateWorkspaceBuildAITaskByID(ctx, arg)
5122+
return q.db.UpdateWorkspaceBuildAITaskAndExternalAgentByID(ctx, arg)
51235123
}
51245124

51255125
// UpdateWorkspaceBuildCostByID is used by the provisioning system to update the cost of a workspace build.
@@ -5148,24 +5148,6 @@ func (q *querier) UpdateWorkspaceBuildDeadlineByID(ctx context.Context, arg data
51485148
return q.db.UpdateWorkspaceBuildDeadlineByID(ctx, arg)
51495149
}
51505150

5151-
func (q *querier) UpdateWorkspaceBuildExternalAgentByID(ctx context.Context, arg database.UpdateWorkspaceBuildExternalAgentByIDParams) error {
5152-
build, err := q.db.GetWorkspaceBuildByID(ctx, arg.ID)
5153-
if err != nil {
5154-
return err
5155-
}
5156-
5157-
workspace, err := q.db.GetWorkspaceByID(ctx, build.WorkspaceID)
5158-
if err != nil {
5159-
return err
5160-
}
5161-
5162-
err = q.authorizeContext(ctx, policy.ActionUpdate, workspace.RBACObject())
5163-
if err != nil {
5164-
return err
5165-
}
5166-
return q.db.UpdateWorkspaceBuildExternalAgentByID(ctx, arg)
5167-
}
5168-
51695151
func (q *querier) UpdateWorkspaceBuildProvisionerStateByID(ctx context.Context, arg database.UpdateWorkspaceBuildProvisionerStateByIDParams) error {
51705152
if err := q.authorizeContext(ctx, policy.ActionUpdate, rbac.ResourceSystem); err != nil {
51715153
return err

coderd/database/dbauthz/dbauthz_test.go

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3228,7 +3228,7 @@ func (s *MethodTestSuite) TestWorkspace() {
32283228
Deadline: b.Deadline,
32293229
}).Asserts(w, policy.ActionUpdate)
32303230
}))
3231-
s.Run("UpdateWorkspaceBuildAITaskByID", s.Subtest(func(db database.Store, check *expects) {
3231+
s.Run("UpdateWorkspaceBuildAITaskAndExternalAgentByID", s.Subtest(func(db database.Store, check *expects) {
32323232
u := dbgen.User(s.T(), db, database.User{})
32333233
o := dbgen.Organization(s.T(), db, database.Organization{})
32343234
tpl := dbgen.Template(s.T(), db, database.Template{
@@ -3256,10 +3256,12 @@ func (s *MethodTestSuite) TestWorkspace() {
32563256
res := dbgen.WorkspaceResource(s.T(), db, database.WorkspaceResource{JobID: b.JobID})
32573257
agt := dbgen.WorkspaceAgent(s.T(), db, database.WorkspaceAgent{ResourceID: res.ID})
32583258
app := dbgen.WorkspaceApp(s.T(), db, database.WorkspaceApp{AgentID: agt.ID})
3259-
check.Args(database.UpdateWorkspaceBuildAITaskByIDParams{
3260-
HasAITask: sql.NullBool{Bool: true, Valid: true},
3261-
SidebarAppID: uuid.NullUUID{UUID: app.ID, Valid: true},
3262-
ID: b.ID,
3259+
check.Args(database.UpdateWorkspaceBuildAITaskAndExternalAgentByIDParams{
3260+
ID: b.ID,
3261+
HasAITask: sql.NullBool{Bool: true, Valid: true},
3262+
HasExternalAgent: sql.NullBool{Bool: true, Valid: true},
3263+
SidebarAppID: uuid.NullUUID{UUID: app.ID, Valid: true},
3264+
UpdatedAt: b.UpdatedAt,
32633265
}).Asserts(w, policy.ActionUpdate)
32643266
}))
32653267
s.Run("SoftDeleteWorkspaceByID", s.Subtest(func(db database.Store, check *expects) {

coderd/database/dbgen/dbgen.go

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -471,19 +471,12 @@ func WorkspaceBuild(t testing.TB, db database.Store, orig database.WorkspaceBuil
471471
require.NoError(t, err)
472472
}
473473

474-
if hasAITask.Valid {
475-
require.NoError(t, db.UpdateWorkspaceBuildAITaskByID(genCtx, database.UpdateWorkspaceBuildAITaskByIDParams{
476-
HasAITask: hasAITask,
477-
SidebarAppID: sidebarAppID,
478-
UpdatedAt: dbtime.Now(),
479-
ID: buildID,
480-
}))
481-
}
482-
483-
if hasExternalAgent.Valid {
484-
require.NoError(t, db.UpdateWorkspaceBuildExternalAgentByID(genCtx, database.UpdateWorkspaceBuildExternalAgentByIDParams{
474+
if hasAITask.Valid || hasExternalAgent.Valid {
475+
require.NoError(t, db.UpdateWorkspaceBuildAITaskAndExternalAgentByID(genCtx, database.UpdateWorkspaceBuildAITaskAndExternalAgentByIDParams{
485476
ID: buildID,
477+
HasAITask: hasAITask,
486478
HasExternalAgent: hasExternalAgent,
479+
SidebarAppID: sidebarAppID,
487480
UpdatedAt: dbtime.Now(),
488481
}))
489482
}
@@ -1058,7 +1051,7 @@ func TemplateVersion(t testing.TB, db database.Store, orig database.TemplateVers
10581051
return err
10591052
}
10601053

1061-
if hasAITask.Valid && hasExternalAgent.Valid {
1054+
if hasAITask.Valid || hasExternalAgent.Valid {
10621055
require.NoError(t, db.UpdateTemplateVersionAITaskAndExternalAgentByJobID(genCtx, database.UpdateTemplateVersionAITaskAndExternalAgentByJobIDParams{
10631056
JobID: jobID,
10641057
HasAITask: hasAITask,

coderd/database/dbmetrics/querymetrics.go

Lines changed: 3 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/dbmock/dbmock.go

Lines changed: 6 additions & 20 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/querier.go

Lines changed: 1 addition & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/queries.sql.go

Lines changed: 13 additions & 30 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/queries/workspacebuilds.sql

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -151,15 +151,6 @@ SET
151151
updated_at = @updated_at::timestamptz
152152
WHERE id = @id::uuid;
153153

154-
-- name: UpdateWorkspaceBuildAITaskByID :exec
155-
UPDATE
156-
workspace_builds
157-
SET
158-
has_ai_task = @has_ai_task,
159-
ai_task_sidebar_app_id = @sidebar_app_id,
160-
updated_at = @updated_at::timestamptz
161-
WHERE id = @id::uuid;
162-
163154
-- name: GetActiveWorkspaceBuildsByTemplateID :many
164155
SELECT wb.*
165156
FROM (
@@ -254,10 +245,12 @@ WHERE
254245
ORDER BY
255246
tv.name ASC, wb.build_number DESC;
256247

257-
-- name: UpdateWorkspaceBuildExternalAgentByID :exec
248+
-- name: UpdateWorkspaceBuildAITaskAndExternalAgentByID :exec
258249
UPDATE
259250
workspace_builds
260251
SET
252+
has_ai_task = @has_ai_task,
253+
ai_task_sidebar_app_id = @sidebar_app_id,
261254
has_external_agent = @has_external_agent,
262255
updated_at = @updated_at::timestamptz
263256
WHERE id = @id::uuid;

0 commit comments

Comments
 (0)