Files
Clickploy/backend/internal/db/db.go
2026-02-04 00:17:30 +00:00

34 lines
716 B
Go

package db
import (
"log"
"path/filepath"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
"gorm.io/gorm/logger"
"clickploy/internal/models"
)
var DB *gorm.DB
func Init(storagePath string) {
var err error
dbPath := filepath.Join(storagePath, "clickploy.db")
DB, err = gorm.Open(sqlite.Open(dbPath), &gorm.Config{
Logger: logger.Default.LogMode(logger.Info),
})
if err != nil {
log.Fatal("Failed to connect to database:", err)
}
log.Println("Migrating database...")
err = DB.AutoMigrate(&models.User{}, &models.Project{}, &models.Deployment{}, &models.EnvVar{}, &models.Database{})
if err != nil {
log.Fatal("Failed to migrate database:", err)
}
log.Println("Database initialized successfully")
}