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)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy