Skip to content

Commit 92b9d25

Browse files
committed
feat(coderd/database): allow filtering provisioner daemons by tags
1 parent 3d45f55 commit 92b9d25

File tree

10 files changed

+36
-20
lines changed

10 files changed

+36
-20
lines changed

coderd/database/dbauthz/dbauthz.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1888,7 +1888,7 @@ func (q *querier) GetProvisionerDaemons(ctx context.Context) ([]database.Provisi
18881888
return fetchWithPostFilter(q.auth, policy.ActionRead, fetch)(ctx, nil)
18891889
}
18901890

1891-
func (q *querier) GetProvisionerDaemonsByOrganization(ctx context.Context, organizationID uuid.UUID) ([]database.ProvisionerDaemon, error) {
1891+
func (q *querier) GetProvisionerDaemonsByOrganization(ctx context.Context, organizationID database.GetProvisionerDaemonsByOrganizationParams) ([]database.ProvisionerDaemon, error) {
18921892
return fetchWithPostFilter(q.auth, policy.ActionRead, q.db.GetProvisionerDaemonsByOrganization)(ctx, organizationID)
18931893
}
18941894

coderd/database/dbauthz/dbauthz_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2066,7 +2066,7 @@ func (s *MethodTestSuite) TestExtraMethods() {
20662066
}),
20672067
})
20682068
s.NoError(err, "insert provisioner daemon")
2069-
ds, err := db.GetProvisionerDaemonsByOrganization(context.Background(), org.ID)
2069+
ds, err := db.GetProvisionerDaemonsByOrganization(context.Background(), database.GetProvisionerDaemonsByOrganizationParams{OrganizationID: org.ID})
20702070
s.NoError(err, "get provisioner daemon by org")
20712071
check.Args(org.ID).Asserts(d, policy.ActionRead).Returns(ds)
20722072
}))

coderd/database/dbmem/dbmem.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3625,13 +3625,14 @@ func (q *FakeQuerier) GetProvisionerDaemons(_ context.Context) ([]database.Provi
36253625
return out, nil
36263626
}
36273627

3628-
func (q *FakeQuerier) GetProvisionerDaemonsByOrganization(_ context.Context, organizationID uuid.UUID) ([]database.ProvisionerDaemon, error) {
3628+
func (q *FakeQuerier) GetProvisionerDaemonsByOrganization(_ context.Context, arg database.GetProvisionerDaemonsByOrganizationParams) ([]database.ProvisionerDaemon, error) {
36293629
q.mutex.RLock()
36303630
defer q.mutex.RUnlock()
36313631

36323632
daemons := make([]database.ProvisionerDaemon, 0)
36333633
for _, daemon := range q.provisionerDaemons {
3634-
if daemon.OrganizationID == organizationID {
3634+
// TODO (sas): filter by tags here
3635+
if daemon.OrganizationID == arg.OrganizationID {
36353636
daemon.Tags = maps.Clone(daemon.Tags)
36363637
daemons = append(daemons, daemon)
36373638
}

coderd/database/dbmetrics/querymetrics.go

Lines changed: 2 additions & 2 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: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/dump.sql

Lines changed: 12 additions & 0 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 & 1 deletion
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 & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

enterprise/coderd/provisionerdaemons.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ func (api *API) provisionerDaemons(rw http.ResponseWriter, r *http.Request) {
6262
ctx := r.Context()
6363
org := httpmw.OrganizationParam(r)
6464

65-
daemons, err := api.Database.GetProvisionerDaemonsByOrganization(ctx, org.ID)
65+
daemons, err := api.Database.GetProvisionerDaemonsByOrganization(ctx, database.GetProvisionerDaemonsByOrganizationParams{OrganizationID: org.ID})
6666
if err != nil {
6767
httpapi.Write(ctx, rw, http.StatusInternalServerError, codersdk.Response{
6868
Message: "Internal error fetching provisioner daemons.",

enterprise/coderd/provisionerkeys.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ func (api *API) provisionerKeyDaemons(rw http.ResponseWriter, r *http.Request) {
137137
}
138138
sdkKeys := convertProvisionerKeys(pks)
139139

140-
daemons, err := api.Database.GetProvisionerDaemonsByOrganization(ctx, organization.ID)
140+
daemons, err := api.Database.GetProvisionerDaemonsByOrganization(ctx, database.GetProvisionerDaemonsByOrganizationParams{OrganizationID: organization.ID})
141141
if err != nil {
142142
httpapi.InternalServerError(rw, err)
143143
return

0 commit comments

Comments
 (0)