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

Commit81833d2

Browse files
committed
modelquery
1 parent7387d8a commit81833d2

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
@@ -3281,8 +3281,13 @@ func (q *querier) GetWorkspaceBuildParameters(ctx context.Context, workspaceBuil
32813281
returnq.db.GetWorkspaceBuildParameters(ctx,workspaceBuildID)
32823282
}
32833283

3284-
func (q*querier)GetWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIds []uuid.UUID) ([]database.WorkspaceBuildParameter,error) {
3285-
panic("not implemented")
3284+
func (q*querier)GetWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIDs []uuid.UUID) ([]database.WorkspaceBuildParameter,error) {
3285+
prep,err:=prepareSQLFilter(ctx,q.auth,policy.ActionRead,rbac.ResourceWorkspace.Type)
3286+
iferr!=nil {
3287+
returnnil,xerrors.Errorf("(dev error) prepare sql filter: %w",err)
3288+
}
3289+
3290+
returnq.db.GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx,workspaceBuildIDs,prep)
32863291
}
32873292

32883293
func (q*querier)GetWorkspaceBuildStatsByTemplates(ctx context.Context,since time.Time) ([]database.GetWorkspaceBuildStatsByTemplatesRow,error) {
@@ -5230,6 +5235,10 @@ func (q *querier) GetAuthorizedWorkspacesAndAgentsByOwnerID(ctx context.Context,
52305235
returnq.GetWorkspacesAndAgentsByOwnerID(ctx,ownerID)
52315236
}
52325237

5238+
func (q*querier)GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIDs []uuid.UUID,_ rbac.PreparedAuthorized) ([]database.WorkspaceBuildParameter,error) {
5239+
returnq.GetWorkspaceBuildParametersByBuildIDs(ctx,workspaceBuildIDs)
5240+
}
5241+
52335242
// GetAuthorizedUsers is not required for dbauthz since GetUsers is already
52345243
// authenticated.
52355244
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
@@ -13847,6 +13847,10 @@ func (q *FakeQuerier) GetAuthorizedWorkspacesAndAgentsByOwnerID(ctx context.Cont
1384713847
returnout,nil
1384813848
}
1384913849

13850+
func (q*FakeQuerier)GetAuthorizedWorkspaceBuildParametersByBuildIDs(ctx context.Context,workspaceBuildIDs []uuid.UUID,prepared rbac.PreparedAuthorized) ([]database.WorkspaceBuildParameter,error) {
13851+
panic("not implemented")
13852+
}
13853+
1385013854
func (q*FakeQuerier)GetAuthorizedUsers(ctx context.Context,arg database.GetUsersParams,prepared rbac.PreparedAuthorized) ([]database.GetUsersRow,error) {
1385113855
iferr:=validateDatabaseType(arg);err!=nil {
1385213856
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