Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commite1ad75b

Browse files
committed
feat: proto & db changes to persist coder_ai_task state
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
1 parent6d8f5b1 commite1ad75b

File tree

16 files changed

+917
-486
lines changed

16 files changed

+917
-486
lines changed

‎coderd/database/dbauthz/dbauthz.go

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4489,6 +4489,28 @@ func (q *querier) UpdateTemplateScheduleByID(ctx context.Context, arg database.U
44894489
returnupdate(q.log,q.auth,fetch,q.db.UpdateTemplateScheduleByID)(ctx,arg)
44904490
}
44914491

4492+
func (q*querier)UpdateTemplateVersionAITaskByJobID(ctx context.Context,arg database.UpdateTemplateVersionAITaskByJobIDParams)error {
4493+
// An actor is allowed to update the template version AI task flag if they are authorized to update the template.
4494+
tv,err:=q.db.GetTemplateVersionByJobID(ctx,arg.JobID)
4495+
iferr!=nil {
4496+
returnerr
4497+
}
4498+
varobj rbac.Objecter
4499+
if!tv.TemplateID.Valid {
4500+
obj=rbac.ResourceTemplate.InOrg(tv.OrganizationID)
4501+
}else {
4502+
tpl,err:=q.db.GetTemplateByID(ctx,tv.TemplateID.UUID)
4503+
iferr!=nil {
4504+
returnerr
4505+
}
4506+
obj=tpl
4507+
}
4508+
iferr:=q.authorizeContext(ctx,policy.ActionUpdate,obj);err!=nil {
4509+
returnerr
4510+
}
4511+
returnq.db.UpdateTemplateVersionAITaskByJobID(ctx,arg)
4512+
}
4513+
44924514
func (q*querier)UpdateTemplateVersionByID(ctx context.Context,arg database.UpdateTemplateVersionByIDParams)error {
44934515
// An actor is allowed to update the template version if they are authorized to update the template.
44944516
tv,err:=q.db.GetTemplateVersionByID(ctx,arg.ID)
@@ -4845,6 +4867,13 @@ func (q *querier) UpdateWorkspaceAutostart(ctx context.Context, arg database.Upd
48454867
returnupdate(q.log,q.auth,fetch,q.db.UpdateWorkspaceAutostart)(ctx,arg)
48464868
}
48474869

4870+
func (q*querier)UpdateWorkspaceBuildAITaskByID(ctx context.Context,arg database.UpdateWorkspaceBuildAITaskByIDParams)error {
4871+
iferr:=q.authorizeContext(ctx,policy.ActionUpdate,rbac.ResourceSystem);err!=nil {
4872+
returnerr
4873+
}
4874+
returnq.db.UpdateWorkspaceBuildAITaskByID(ctx,arg)
4875+
}
4876+
48484877
// UpdateWorkspaceBuildCostByID is used by the provisioning system to update the cost of a workspace build.
48494878
func (q*querier)UpdateWorkspaceBuildCostByID(ctx context.Context,arg database.UpdateWorkspaceBuildCostByIDParams)error {
48504879
iferr:=q.authorizeContext(ctx,policy.ActionUpdate,rbac.ResourceSystem);err!=nil {

‎coderd/database/dbgen/dbgen.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -369,7 +369,6 @@ func WorkspaceBuild(t testing.TB, db database.Store, orig database.WorkspaceBuil
369369
UUID: uuid.UUID{},
370370
Valid:false,
371371
}),
372-
HasAITask:orig.HasAITask,
373372
})
374373
iferr!=nil {
375374
returnerr
@@ -944,7 +943,6 @@ func TemplateVersion(t testing.TB, db database.Store, orig database.TemplateVers
944943
JobID:takeFirst(orig.JobID,uuid.New()),
945944
CreatedBy:takeFirst(orig.CreatedBy,uuid.New()),
946945
SourceExampleID:takeFirst(orig.SourceExampleID, sql.NullString{}),
947-
HasAITask:orig.HasAITask,
948946
})
949947
iferr!=nil {
950948
returnerr

‎coderd/database/dbmem/dbmem.go

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9399,7 +9399,6 @@ func (q *FakeQuerier) InsertTemplateVersion(_ context.Context, arg database.Inse
93999399
JobID:arg.JobID,
94009400
CreatedBy:arg.CreatedBy,
94019401
SourceExampleID:arg.SourceExampleID,
9402-
HasAITask:arg.HasAITask,
94039402
}
94049403
q.templateVersions=append(q.templateVersions,version)
94059404
returnnil
@@ -10079,7 +10078,6 @@ func (q *FakeQuerier) InsertWorkspaceBuild(_ context.Context, arg database.Inser
1007910078
MaxDeadline:arg.MaxDeadline,
1008010079
Reason:arg.Reason,
1008110080
TemplateVersionPresetID:arg.TemplateVersionPresetID,
10082-
HasAITask:arg.HasAITask,
1008310081
}
1008410082
q.workspaceBuilds=append(q.workspaceBuilds,workspaceBuild)
1008510083
returnnil
@@ -11285,6 +11283,26 @@ func (q *FakeQuerier) UpdateTemplateScheduleByID(_ context.Context, arg database
1128511283
returnsql.ErrNoRows
1128611284
}
1128711285

11286+
func (q*FakeQuerier)UpdateTemplateVersionAITaskByJobID(_ context.Context,arg database.UpdateTemplateVersionAITaskByJobIDParams)error {
11287+
iferr:=validateDatabaseType(arg);err!=nil {
11288+
returnerr
11289+
}
11290+
11291+
q.mutex.Lock()
11292+
deferq.mutex.Unlock()
11293+
11294+
forindex,templateVersion:=rangeq.templateVersions {
11295+
iftemplateVersion.JobID!=arg.JobID {
11296+
continue
11297+
}
11298+
templateVersion.HasAITask=arg.HasAITask
11299+
templateVersion.UpdatedAt=arg.UpdatedAt
11300+
q.templateVersions[index]=templateVersion
11301+
returnnil
11302+
}
11303+
returnsql.ErrNoRows
11304+
}
11305+
1128811306
func (q*FakeQuerier)UpdateTemplateVersionByID(_ context.Context,arg database.UpdateTemplateVersionByIDParams)error {
1128911307
iferr:=validateDatabaseType(arg);err!=nil {
1129011308
returnerr
@@ -11980,6 +11998,27 @@ func (q *FakeQuerier) UpdateWorkspaceAutostart(_ context.Context, arg database.U
1198011998
returnsql.ErrNoRows
1198111999
}
1198212000

12001+
func (q*FakeQuerier)UpdateWorkspaceBuildAITaskByID(_ context.Context,arg database.UpdateWorkspaceBuildAITaskByIDParams)error {
12002+
err:=validateDatabaseType(arg)
12003+
iferr!=nil {
12004+
returnerr
12005+
}
12006+
12007+
q.mutex.Lock()
12008+
deferq.mutex.Unlock()
12009+
12010+
forindex,workspaceBuild:=rangeq.workspaceBuilds {
12011+
ifworkspaceBuild.ID!=arg.ID {
12012+
continue
12013+
}
12014+
workspaceBuild.HasAITask=arg.HasAITask
12015+
workspaceBuild.UpdatedAt=dbtime.Now()
12016+
q.workspaceBuilds[index]=workspaceBuild
12017+
returnnil
12018+
}
12019+
returnsql.ErrNoRows
12020+
}
12021+
1198312022
func (q*FakeQuerier)UpdateWorkspaceBuildCostByID(_ context.Context,arg database.UpdateWorkspaceBuildCostByIDParams)error {
1198412023
iferr:=validateDatabaseType(arg);err!=nil {
1198512024
returnerr

‎coderd/database/dbmetrics/querymetrics.go

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.

‎coderd/database/dbmock/dbmock.go

Lines changed: 28 additions & 0 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.

‎coderd/database/querier.go

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.

‎coderd/database/queries.sql.go

Lines changed: 51 additions & 9 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.

‎coderd/database/queries/templateversions.sql

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,11 +88,10 @@ INSERT INTO
8888
readme,
8989
job_id,
9090
created_by,
91-
source_example_id,
92-
has_ai_task
91+
source_example_id
9392
)
9493
VALUES
95-
($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12);
94+
($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11);
9695

9796
-- name: UpdateTemplateVersionByID :exec
9897
UPDATE
@@ -123,6 +122,15 @@ SET
123122
WHERE
124123
job_id= $1;
125124

125+
-- name: UpdateTemplateVersionAITaskByJobID :exec
126+
UPDATE
127+
template_versions
128+
SET
129+
has_ai_task= $2,
130+
updated_at= $3
131+
WHERE
132+
job_id= $1;
133+
126134
-- name: GetPreviousTemplateVersion :one
127135
SELECT
128136
*

‎coderd/database/queries/workspacebuilds.sql

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -121,11 +121,10 @@ INSERT INTO
121121
deadline,
122122
max_deadline,
123123
reason,
124-
template_version_preset_id,
125-
has_ai_task
124+
template_version_preset_id
126125
)
127126
VALUES
128-
($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15);
127+
($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14);
129128

130129
-- name: UpdateWorkspaceBuildCostByID :exec
131130
UPDATE
@@ -152,6 +151,15 @@ SET
152151
updated_at= @updated_at::timestamptz
153152
WHERE id= @id::uuid;
154153

154+
-- name: UpdateWorkspaceBuildAITaskByID :exec
155+
UPDATE
156+
workspace_builds
157+
SET
158+
has_ai_task= @has_ai_task,
159+
ai_tasks_sidebar_app_id= @sidebar_app_id,
160+
updated_at= @updated_at::timestamptz
161+
WHERE id= @id::uuid;
162+
155163
-- name: GetActiveWorkspaceBuildsByTemplateID :many
156164
SELECT wb.*
157165
FROM (

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp