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

Commite0cb4f7

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

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
@@ -4484,6 +4484,28 @@ func (q *querier) UpdateTemplateScheduleByID(ctx context.Context, arg database.U
44844484
returnupdate(q.log,q.auth,fetch,q.db.UpdateTemplateScheduleByID)(ctx,arg)
44854485
}
44864486

4487+
func (q*querier)UpdateTemplateVersionAITaskByJobID(ctx context.Context,arg database.UpdateTemplateVersionAITaskByJobIDParams)error {
4488+
// An actor is allowed to update the template version AI task flag if they are authorized to update the template.
4489+
tv,err:=q.db.GetTemplateVersionByJobID(ctx,arg.JobID)
4490+
iferr!=nil {
4491+
returnerr
4492+
}
4493+
varobj rbac.Objecter
4494+
if!tv.TemplateID.Valid {
4495+
obj=rbac.ResourceTemplate.InOrg(tv.OrganizationID)
4496+
}else {
4497+
tpl,err:=q.db.GetTemplateByID(ctx,tv.TemplateID.UUID)
4498+
iferr!=nil {
4499+
returnerr
4500+
}
4501+
obj=tpl
4502+
}
4503+
iferr:=q.authorizeContext(ctx,policy.ActionUpdate,obj);err!=nil {
4504+
returnerr
4505+
}
4506+
returnq.db.UpdateTemplateVersionAITaskByJobID(ctx,arg)
4507+
}
4508+
44874509
func (q*querier)UpdateTemplateVersionByID(ctx context.Context,arg database.UpdateTemplateVersionByIDParams)error {
44884510
// An actor is allowed to update the template version if they are authorized to update the template.
44894511
tv,err:=q.db.GetTemplateVersionByID(ctx,arg.ID)
@@ -4840,6 +4862,13 @@ func (q *querier) UpdateWorkspaceAutostart(ctx context.Context, arg database.Upd
48404862
returnupdate(q.log,q.auth,fetch,q.db.UpdateWorkspaceAutostart)(ctx,arg)
48414863
}
48424864

4865+
func (q*querier)UpdateWorkspaceBuildAITaskByID(ctx context.Context,arg database.UpdateWorkspaceBuildAITaskByIDParams)error {
4866+
iferr:=q.authorizeContext(ctx,policy.ActionUpdate,rbac.ResourceSystem);err!=nil {
4867+
returnerr
4868+
}
4869+
returnq.db.UpdateWorkspaceBuildAITaskByID(ctx,arg)
4870+
}
4871+
48434872
// UpdateWorkspaceBuildCostByID is used by the provisioning system to update the cost of a workspace build.
48444873
func (q*querier)UpdateWorkspaceBuildCostByID(ctx context.Context,arg database.UpdateWorkspaceBuildCostByIDParams)error {
48454874
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
@@ -9382,7 +9382,6 @@ func (q *FakeQuerier) InsertTemplateVersion(_ context.Context, arg database.Inse
93829382
JobID:arg.JobID,
93839383
CreatedBy:arg.CreatedBy,
93849384
SourceExampleID:arg.SourceExampleID,
9385-
HasAITask:arg.HasAITask,
93869385
}
93879386
q.templateVersions=append(q.templateVersions,version)
93889387
returnnil
@@ -10062,7 +10061,6 @@ func (q *FakeQuerier) InsertWorkspaceBuild(_ context.Context, arg database.Inser
1006210061
MaxDeadline:arg.MaxDeadline,
1006310062
Reason:arg.Reason,
1006410063
TemplateVersionPresetID:arg.TemplateVersionPresetID,
10065-
HasAITask:arg.HasAITask,
1006610064
}
1006710065
q.workspaceBuilds=append(q.workspaceBuilds,workspaceBuild)
1006810066
returnnil
@@ -11268,6 +11266,26 @@ func (q *FakeQuerier) UpdateTemplateScheduleByID(_ context.Context, arg database
1126811266
returnsql.ErrNoRows
1126911267
}
1127011268

11269+
func (q*FakeQuerier)UpdateTemplateVersionAITaskByJobID(_ context.Context,arg database.UpdateTemplateVersionAITaskByJobIDParams)error {
11270+
iferr:=validateDatabaseType(arg);err!=nil {
11271+
returnerr
11272+
}
11273+
11274+
q.mutex.Lock()
11275+
deferq.mutex.Unlock()
11276+
11277+
forindex,templateVersion:=rangeq.templateVersions {
11278+
iftemplateVersion.JobID!=arg.JobID {
11279+
continue
11280+
}
11281+
templateVersion.HasAITask=arg.HasAITask
11282+
templateVersion.UpdatedAt=arg.UpdatedAt
11283+
q.templateVersions[index]=templateVersion
11284+
returnnil
11285+
}
11286+
returnsql.ErrNoRows
11287+
}
11288+
1127111289
func (q*FakeQuerier)UpdateTemplateVersionByID(_ context.Context,arg database.UpdateTemplateVersionByIDParams)error {
1127211290
iferr:=validateDatabaseType(arg);err!=nil {
1127311291
returnerr
@@ -11963,6 +11981,27 @@ func (q *FakeQuerier) UpdateWorkspaceAutostart(_ context.Context, arg database.U
1196311981
returnsql.ErrNoRows
1196411982
}
1196511983

11984+
func (q*FakeQuerier)UpdateWorkspaceBuildAITaskByID(_ context.Context,arg database.UpdateWorkspaceBuildAITaskByIDParams)error {
11985+
err:=validateDatabaseType(arg)
11986+
iferr!=nil {
11987+
returnerr
11988+
}
11989+
11990+
q.mutex.Lock()
11991+
deferq.mutex.Unlock()
11992+
11993+
forindex,workspaceBuild:=rangeq.workspaceBuilds {
11994+
ifworkspaceBuild.ID!=arg.ID {
11995+
continue
11996+
}
11997+
workspaceBuild.HasAITask=arg.HasAITask
11998+
workspaceBuild.UpdatedAt=dbtime.Now()
11999+
q.workspaceBuilds[index]=workspaceBuild
12000+
returnnil
12001+
}
12002+
returnsql.ErrNoRows
12003+
}
12004+
1196612005
func (q*FakeQuerier)UpdateWorkspaceBuildCostByID(_ context.Context,arg database.UpdateWorkspaceBuildCostByIDParams)error {
1196712006
iferr:=validateDatabaseType(arg);err!=nil {
1196812007
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