Skip to content

Commit 8c4b7c0

Browse files
authored
chore: remove redundant dbtype package (#8014)
* chore: rename store to dbmock for consistency * chore: remove redundant dbtype package This wasn't necessary and forked how we do DB types.
1 parent 4f512fb commit 8c4b7c0

File tree

10 files changed

+48
-62
lines changed

10 files changed

+48
-62
lines changed

coderd/coderd.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ import (
4848
"github.com/coder/coder/coderd/database"
4949
"github.com/coder/coder/coderd/database/dbauthz"
5050
"github.com/coder/coder/coderd/database/dbmetrics"
51-
"github.com/coder/coder/coderd/database/dbtype"
5251
"github.com/coder/coder/coderd/gitauth"
5352
"github.com/coder/coder/coderd/gitsshkey"
5453
"github.com/coder/coder/coderd/healthcheck"
@@ -948,7 +947,7 @@ func (api *API) CreateInMemoryProvisionerDaemon(ctx context.Context, debounce ti
948947
CreatedAt: database.Now(),
949948
Name: name,
950949
Provisioners: []database.ProvisionerType{database.ProvisionerTypeEcho, database.ProvisionerTypeTerraform},
951-
Tags: dbtype.StringMap{
950+
Tags: database.StringMap{
952951
provisionerdserver.TagScope: provisionerdserver.ScopeOrganization,
953952
},
954953
})

coderd/database/dbgen/dbgen.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ import (
1818

1919
"github.com/coder/coder/coderd/database"
2020
"github.com/coder/coder/coderd/database/dbauthz"
21-
"github.com/coder/coder/coderd/database/dbtype"
2221
"github.com/coder/coder/coderd/rbac"
2322
"github.com/coder/coder/cryptorand"
2423
)
@@ -278,7 +277,7 @@ func ProvisionerJob(t testing.TB, db database.Store, orig database.ProvisionerJo
278277
// Always set some tags to prevent Acquire from grabbing jobs it should not.
279278
if !orig.StartedAt.Time.IsZero() {
280279
if orig.Tags == nil {
281-
orig.Tags = make(dbtype.StringMap)
280+
orig.Tags = make(database.StringMap)
282281
}
283282
// Make sure when we acquire the job, we only get this one.
284283
orig.Tags[id.String()] = "true"

coderd/database/dbtype/dbtype.go

-30
This file was deleted.

coderd/database/models.go

+2-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/queries.sql.go

+2-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/sqlc.yaml

+4-2
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,11 @@ overrides:
88
go:
99
overrides:
1010
- column: "provisioner_daemons.tags"
11-
go_type: "github.com/coder/coder/coderd/database/dbtype.StringMap"
11+
go_type:
12+
type: "StringMap"
1213
- column: "provisioner_jobs.tags"
13-
go_type: "github.com/coder/coder/coderd/database/dbtype.StringMap"
14+
go_type:
15+
type: "StringMap"
1416
- column: "users.rbac_roles"
1517
go_type: "github.com/lib/pq.StringArray"
1618
- column: "templates.user_acl"

coderd/database/time.go

-14
This file was deleted.

coderd/database/drivers.go renamed to coderd/database/types.go

+34
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package database
33
import (
44
"database/sql/driver"
55
"encoding/json"
6+
"time"
67

78
"golang.org/x/xerrors"
89

@@ -43,3 +44,36 @@ func (t *TemplateACL) Scan(src interface{}) error {
4344
func (t TemplateACL) Value() (driver.Value, error) {
4445
return json.Marshal(t)
4546
}
47+
48+
type StringMap map[string]string
49+
50+
func (m *StringMap) Scan(src interface{}) error {
51+
if src == nil {
52+
return nil
53+
}
54+
switch src := src.(type) {
55+
case []byte:
56+
err := json.Unmarshal(src, m)
57+
if err != nil {
58+
return err
59+
}
60+
default:
61+
return xerrors.Errorf("unsupported Scan, storing driver.Value type %T into type %T", src, m)
62+
}
63+
return nil
64+
}
65+
66+
func (m StringMap) Value() (driver.Value, error) {
67+
return json.Marshal(m)
68+
}
69+
70+
// Now returns a standardized timezone used for database resources.
71+
func Now() time.Time {
72+
return Time(time.Now().UTC())
73+
}
74+
75+
// Time returns a time compatible with Postgres. Postgres only stores dates with
76+
// microsecond precision.
77+
func Time(t time.Time) time.Time {
78+
return t.Round(time.Microsecond)
79+
}

coderd/workspaces_test.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ import (
2626
"github.com/coder/coder/coderd/database/dbauthz"
2727
"github.com/coder/coder/coderd/database/dbgen"
2828
"github.com/coder/coder/coderd/database/dbtestutil"
29-
"github.com/coder/coder/coderd/database/dbtype"
3029
"github.com/coder/coder/coderd/parameter"
3130
"github.com/coder/coder/coderd/rbac"
3231
"github.com/coder/coder/coderd/schedule"
@@ -589,7 +588,7 @@ func TestWorkspaceFilterAllStatus(t *testing.T) {
589588
InitiatorID: owner.UserID,
590589
WorkerID: uuid.NullUUID{},
591590
FileID: file.ID,
592-
Tags: dbtype.StringMap{
591+
Tags: database.StringMap{
593592
"custom": "true",
594593
},
595594
})
@@ -617,7 +616,7 @@ func TestWorkspaceFilterAllStatus(t *testing.T) {
617616
job.Type = database.ProvisionerJobTypeWorkspaceBuild
618617
job.OrganizationID = owner.OrganizationID
619618
// Need to prevent acquire from getting this job.
620-
job.Tags = dbtype.StringMap{
619+
job.Tags = database.StringMap{
621620
jobID.String(): "true",
622621
}
623622
job = dbgen.ProvisionerJob(t, db, job)

coderd/wsbuilder/wsbuilder_test.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import (
1515

1616
"github.com/coder/coder/coderd/database"
1717
"github.com/coder/coder/coderd/database/dbmock"
18-
"github.com/coder/coder/coderd/database/dbtype"
1918
"github.com/coder/coder/coderd/provisionerdserver"
2019
"github.com/coder/coder/coderd/wsbuilder"
2120
"github.com/coder/coder/codersdk"
@@ -614,7 +613,7 @@ func withActiveVersion(params []database.TemplateVersionParameter) func(mTx *dbm
614613
StorageMethod: database.ProvisionerStorageMethodFile,
615614
Type: database.ProvisionerJobTypeTemplateVersionImport,
616615
Input: nil,
617-
Tags: dbtype.StringMap{
616+
Tags: database.StringMap{
618617
"version": "active",
619618
provisionerdserver.TagScope: provisionerdserver.ScopeUser,
620619
},
@@ -654,7 +653,7 @@ func withInactiveVersion(params []database.TemplateVersionParameter) func(mTx *d
654653
StorageMethod: database.ProvisionerStorageMethodFile,
655654
Type: database.ProvisionerJobTypeTemplateVersionImport,
656655
Input: nil,
657-
Tags: dbtype.StringMap{
656+
Tags: database.StringMap{
658657
"version": "inactive",
659658
provisionerdserver.TagScope: provisionerdserver.ScopeUser,
660659
},

0 commit comments

Comments
 (0)