From 5f34265db6548e3be72b865e41f227137b18474c Mon Sep 17 00:00:00 2001 From: Joe Chen Date: Wed, 1 Jun 2022 22:51:46 +0800 Subject: ci: run database tests against Postgres, MySQL and SQLite (#6996) --- internal/db/db.go | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'internal/db/db.go') diff --git a/internal/db/db.go b/internal/db/db.go index 7d2c12e2..987d90df 100644 --- a/internal/db/db.go +++ b/internal/db/db.go @@ -53,8 +53,8 @@ func parseMSSQLHostPort(info string) (host, port string) { return host, port } -// parseDSN takes given database options and returns parsed DSN. -func parseDSN(opts conf.DatabaseOpts) (dsn string, err error) { +// newDSN takes given database options and returns parsed DSN. +func newDSN(opts conf.DatabaseOpts) (dsn string, err error) { // In case the database name contains "?" with some parameters concate := "?" if strings.Contains(opts.Name, concate) { @@ -109,7 +109,7 @@ func newLogWriter() (logger.Writer, error) { } func openDB(opts conf.DatabaseOpts, cfg *gorm.Config) (*gorm.DB, error) { - dsn, err := parseDSN(opts) + dsn, err := newDSN(opts) if err != nil { return nil, errors.Wrap(err, "parse DSN") } @@ -151,14 +151,18 @@ func Init(w logger.Writer) (*gorm.DB, error) { LogLevel: level, }) - db, err := openDB(conf.Database, &gorm.Config{ - NamingStrategy: schema.NamingStrategy{ - SingularTable: true, + db, err := openDB( + conf.Database, + &gorm.Config{ + SkipDefaultTransaction: true, + NamingStrategy: schema.NamingStrategy{ + SingularTable: true, + }, + NowFunc: func() time.Time { + return time.Now().UTC().Truncate(time.Microsecond) + }, }, - NowFunc: func() time.Time { - return time.Now().UTC().Truncate(time.Microsecond) - }, - }) + ) if err != nil { return nil, errors.Wrap(err, "open database") } -- cgit v1.2.3