package database import ( "log" "os" "gorm.io/driver/sqlite" "gorm.io/gorm" "maot-shortner/internal/domain" ) type Database struct { *gorm.DB } func InitDatabase() (database *Database, err error) { log.Println("Starting database...") dbPath := os.Getenv("DATABASE_PATH") if dbPath == "" { dbPath = "/app/data/shortener.db" } db, err := gorm.Open(sqlite.Open(dbPath), &gorm.Config{}) if err != nil { return nil, err } if err = db.AutoMigrate(domain.ImportModels()...); err != nil { return nil, err } database = &Database{db} return database, nil }