package database import ( "dove/utils/logger" "gorm.io/driver/sqlite" "gorm.io/gorm" ) var DB *gorm.DB func init() { databaseDSN := resolveDatabasePath() dialector := sqlite.Open(databaseDSN) var connectionError error DB, connectionError = gorm.Open(dialector, &gorm.Config{ Logger: resolveGORMLogLevel(), }) if connectionError != nil { logger.Fatalf(LogPrefix, ConnectionFailed, connectionError) } sqlDB, poolError := DB.DB() if poolError != nil { logger.Fatalf(LogPrefix, PoolConfigFailed, poolError) } sqlDB.SetMaxOpenConns(MaxOpenConnections) sqlDB.SetMaxIdleConns(MaxIdleConnections) sqlDB.SetConnMaxLifetime(MaxConnectionLifetime) logger.Successf(LogPrefix, Connected, databaseDSN) migrate() }