telegram-commerce/main.go
2023-10-26 01:24:32 +03:30

46 lines
1.1 KiB
Go

package main
import (
"context"
"fmt"
_ "github.com/go-sql-driver/mysql"
"log"
"tel-commerce/config"
"tel-commerce/database/seeds"
"tel-commerce/ent"
"tel-commerce/router"
"time"
)
func seederTable(ctx *context.Context, client *ent.Client) {
seeds.RunDatabaseSeeder(client, ctx)
}
func main() {
dbConf := config.DatabaseConfig()
client, err := ent.Open("mysql", fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?parseTime=True", dbConf.Username, dbConf.Password, dbConf.Host, dbConf.Port, dbConf.Dbname))
if err != nil {
log.Fatalf("failed opening connection to mysql: %v", err)
}
defer client.Close()
client = client.Debug()
log.Println("Database Connected!")
ctx, cancel := context.WithTimeout(context.Background(), 10000*time.Second)
defer cancel()
// Dump migration changes to stdout.
//if err := client.Schema.WriteTo(ctx, os.Stdout); err != nil {
//log.Fatalf("failed printing schema changes: %v", err)
//}
if err := client.Schema.Create(context.Background()); err != nil {
log.Fatalf("failed creating schema resources: %v", err)
}
router.RunAPI(ctx, client)
}