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

Commit155f2e1

Browse files
committed
modelquery
1 parenta7f4846 commit155f2e1

File tree

4 files changed

+52
-2
lines changed

4 files changed

+52
-2
lines changed

‎coderd/database/dbauthz/dbauthz.go

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3252,8 +3252,13 @@ func (q *querier) GetWorkspaceBuildParameters(ctx context.Context, workspaceBuil
32523252
returnq.db.GetWorkspaceBuildParameters(ctx,workspaceBuildID)
32533253
}
32543254

3255-
func (q*querier)GetWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIds []uuid.UUID) ([]database.WorkspaceBuildParameter,error) {
3256-
panic("not implemented")
3255+
func (q*querier)GetWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIDs []uuid.UUID) ([]database.WorkspaceBuildParameter,error) {
3256+
prep,err:=prepareSQLFilter(ctx,q.auth,policy.ActionRead,rbac.ResourceWorkspace.Type)
3257+
iferr!=nil {
3258+
returnnil,xerrors.Errorf("(dev error) prepare sql filter: %w",err)
3259+
}
3260+
3261+
returnq.db.GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx,workspaceBuildIDs,prep)
32573262
}
32583263

32593264
func (q*querier)GetWorkspaceBuildStatsByTemplates(ctx context.Context,since time.Time) ([]database.GetWorkspaceBuildStatsByTemplatesRow,error) {
@@ -5200,6 +5205,10 @@ func (q *querier) GetAuthorizedWorkspacesAndAgentsByOwnerID(ctx context.Context,
52005205
returnq.GetWorkspacesAndAgentsByOwnerID(ctx,ownerID)
52015206
}
52025207

5208+
func (q*querier)GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIDs []uuid.UUID,prepared rbac.PreparedAuthorized) ([]database.WorkspaceBuildParameter,error) {
5209+
returnq.db.GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx,workspaceBuildIDs,prepared)
5210+
}
5211+
52035212
// GetAuthorizedUsers is not required for dbauthz since GetUsers is already
52045213
// authenticated.
52055214
func (q*querier)GetAuthorizedUsers(ctx context.Context,arg database.GetUsersParams,_ rbac.PreparedAuthorized) ([]database.GetUsersRow,error) {

‎coderd/database/dbmem/dbmem.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13806,6 +13806,10 @@ func (q *FakeQuerier) GetAuthorizedWorkspacesAndAgentsByOwnerID(ctx context.Cont
1380613806
returnout,nil
1380713807
}
1380813808

13809+
func (q*FakeQuerier)GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIDs []uuid.UUID,prepared rbac.PreparedAuthorized) ([]database.WorkspaceBuildParameter,error) {
13810+
panic("not implemented")
13811+
}
13812+
1380913813
func (q*FakeQuerier)GetAuthorizedUsers(ctx context.Context,arg database.GetUsersParams,prepared rbac.PreparedAuthorized) ([]database.GetUsersRow,error) {
1381013814
iferr:=validateDatabaseType(arg);err!=nil {
1381113815
returnnil,err

‎coderd/database/dbmetrics/querymetrics.go

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

‎coderd/database/modelqueries.go

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -226,6 +226,7 @@ func (q *sqlQuerier) GetTemplateGroupRoles(ctx context.Context, id uuid.UUID) ([
226226
typeworkspaceQuerierinterface {
227227
GetAuthorizedWorkspaces(ctx context.Context,argGetWorkspacesParams,prepared rbac.PreparedAuthorized) ([]GetWorkspacesRow,error)
228228
GetAuthorizedWorkspacesAndAgentsByOwnerID(ctx context.Context,ownerID uuid.UUID,prepared rbac.PreparedAuthorized) ([]GetWorkspacesAndAgentsByOwnerIDRow,error)
229+
GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIDs []uuid.UUID,prepared rbac.PreparedAuthorized) ([]WorkspaceBuildParameter,error)
229230
}
230231

231232
// GetAuthorizedWorkspaces returns all workspaces that the user is authorized to access.
@@ -372,6 +373,35 @@ func (q *sqlQuerier) GetAuthorizedWorkspacesAndAgentsByOwnerID(ctx context.Conte
372373
returnitems,nil
373374
}
374375

376+
func (q*sqlQuerier)GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIDs []uuid.UUID,prepared rbac.PreparedAuthorized) ([]WorkspaceBuildParameter,error) {
377+
authorizedFilter,err:=prepared.CompileToSQL(ctx,rbac.ConfigWorkspaces())
378+
iferr!=nil {
379+
returnnil,xerrors.Errorf("compile authorized filter: %w",err)
380+
}
381+
382+
filtered,err:=insertAuthorizedFilter(getWorkspaceBuildParametersByBuildIDs,fmt.Sprintf(" AND %s",authorizedFilter))
383+
iferr!=nil {
384+
returnnil,xerrors.Errorf("insert authorized filter: %w",err)
385+
}
386+
387+
query:=fmt.Sprintf("-- name: GetAuthorizedWorkspaceBuildParametersByBuildIDs :many\n%s",filtered)
388+
rows,err:=q.db.QueryContext(ctx,query,pq.Array(workspaceBuildIDs))
389+
iferr!=nil {
390+
returnnil,err
391+
}
392+
deferrows.Close()
393+
394+
varitems []WorkspaceBuildParameter
395+
forrows.Next() {
396+
variWorkspaceBuildParameter
397+
iferr:=rows.Scan(&i.WorkspaceBuildID,&i.Name,&i.Value);err!=nil {
398+
returnnil,err
399+
}
400+
items=append(items,i)
401+
}
402+
returnitems,nil
403+
}
404+
375405
typeuserQuerierinterface {
376406
GetAuthorizedUsers(ctx context.Context,argGetUsersParams,prepared rbac.PreparedAuthorized) ([]GetUsersRow,error)
377407
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp