Skip to content

Commit 13cc5e6

Browse files
committed
Remove duplicate database code in provider logic
1 parent 4c908b6 commit 13cc5e6

File tree

8 files changed

+130
-285
lines changed

8 files changed

+130
-285
lines changed

pkg/postgres/aws.go

Lines changed: 0 additions & 80 deletions
This file was deleted.

pkg/postgres/azure.go

Lines changed: 0 additions & 50 deletions
This file was deleted.

pkg/postgres/database.go

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import (
44
"fmt"
55

66
"github.com/go-logr/logr"
7-
"github.com/lib/pq"
87
)
98

109
const (
@@ -29,20 +28,21 @@ const (
2928
)
3029

3130
func (c *pg) CreateDB(dbname, role string) error {
32-
_, err := c.db.Exec(fmt.Sprintf(CREATE_DB, dbname))
31+
// Create database
32+
err := c.execute(fmt.Sprintf(CREATE_DB, dbname))
3333
if err != nil {
3434
// eat DUPLICATE DATABASE ERROR
35-
if err.(*pq.Error).Code != "42P04" {
35+
if !isPgError(err, "42P04") {
3636
return err
3737
}
3838
}
3939

40-
_, err = c.db.Exec(fmt.Sprintf(ALTER_DB_OWNER, dbname, role))
40+
err = c.execute(fmt.Sprintf(ALTER_DB_OWNER, dbname, role))
4141
if err != nil {
4242
return err
4343
}
4444

45-
_, err = c.db.Exec(fmt.Sprintf(GRANT_CREATE_SCHEMA, dbname, role))
45+
err = c.execute(fmt.Sprintf(GRANT_CREATE_SCHEMA, dbname, role))
4646
if err != nil {
4747
return err
4848
}
@@ -54,8 +54,7 @@ func (c *pg) AlterDatabaseOwner(dbname, owner string) error {
5454
if owner == "" {
5555
return nil
5656
}
57-
_, err := c.db.Exec(fmt.Sprintf(ALTER_DB_OWNER, dbname, owner))
58-
return err
57+
return c.execute(fmt.Sprintf(ALTER_DB_OWNER, dbname, owner))
5958
}
6059

6160
func (c *pg) ReassignDatabaseOwner(dbName, currentOwner, newOwner string, logger logr.Logger) error {
@@ -71,7 +70,7 @@ func (c *pg) ReassignDatabaseOwner(dbName, currentOwner, newOwner string, logger
7170

7271
_, err = tmpDb.Exec(fmt.Sprintf(REASSIGN_DB_OWNER, currentOwner, newOwner))
7372
if err != nil {
74-
if pqErr, ok := err.(*pq.Error); ok && pqErr.Code == "42704" {
73+
if isPgError(err, "42704") {
7574
return nil
7675
}
7776
return err
@@ -94,20 +93,20 @@ func (c *pg) CreateSchema(db, role, schema string, logger logr.Logger) error {
9493
}
9594

9695
func (c *pg) DropDatabase(database string, logger logr.Logger) error {
97-
_, err := c.db.Exec(fmt.Sprintf(REVOKE_CONNECT, database))
96+
err := c.execute(fmt.Sprintf(REVOKE_CONNECT, database))
9897
// Error code 3D000 is returned if database doesn't exist
99-
if err != nil && err.(*pq.Error).Code != "3D000" {
98+
if err != nil && !isPgError(err, "3D000") {
10099
return err
101100
}
102101

103-
_, err = c.db.Exec(fmt.Sprintf(TERMINATE_BACKEND, database))
102+
err = c.execute(fmt.Sprintf(TERMINATE_BACKEND, database))
104103
// Error code 3D000 is returned if database doesn't exist
105-
if err != nil && err.(*pq.Error).Code != "3D000" {
104+
if err != nil && !isPgError(err, "3D000") {
106105
return err
107106
}
108-
_, err = c.db.Exec(fmt.Sprintf(DROP_DATABASE, database))
107+
err = c.execute(fmt.Sprintf(DROP_DATABASE, database))
109108
// Error code 3D000 is returned if database doesn't exist
110-
if err != nil && err.(*pq.Error).Code != "3D000" {
109+
if err != nil && !isPgError(err, "3D000") {
111110
return err
112111
}
113112

pkg/postgres/gcp.go

Lines changed: 0 additions & 63 deletions
This file was deleted.

pkg/postgres/mock/postgres.go

Lines changed: 26 additions & 26 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)