Первый прототип с основными возможностями

This commit is contained in:
2024-07-31 07:58:22 +03:00
parent 423cff473f
commit cf036565c4
41 changed files with 6969 additions and 2 deletions

41
db/ent.go Normal file
View File

@@ -0,0 +1,41 @@
package db
import (
"context"
"log"
"code.gurenya.net/carlsmei/muninn-aio/config"
"code.gurenya.net/carlsmei/muninn-aio/ent"
)
var (
entClient *ent.Client
)
func GetEntClient() *ent.Client {
return entClient
}
func SetEntClient(new *ent.Client) {
entClient = new
}
func EntInit() {
driver := config.Env.DBType
dsn := config.Env.DBDSN
if driver != "sqlite3" && driver != "pq" && driver != "mysql" {
panic("unsupported driver")
}
client, err := ent.Open(driver, dsn)
if err != nil {
log.Fatalf("failed opening connection to sqlite: %v", err)
}
if err := client.Schema.Create(context.Background()); err != nil {
log.Fatalf("failed creating schema resources: %v", err)
}
entClient = client
}