DB connected
This commit is contained in:
Vendored
+16
@@ -0,0 +1,16 @@
|
||||
{
|
||||
// Use IntelliSense to learn about possible attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Launch Package",
|
||||
"type": "go",
|
||||
"request": "launch",
|
||||
"mode": "auto",
|
||||
"program": "${fileDirname}",
|
||||
"args": []
|
||||
}
|
||||
]
|
||||
}
|
||||
+5
-1
@@ -1,13 +1,17 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"api/src/configs"
|
||||
"api/src/initializers"
|
||||
"log/slog"
|
||||
)
|
||||
|
||||
var APIServerCnf configs.APIserver
|
||||
var PSQLCnf configs.PSQLConfig
|
||||
|
||||
func main() {
|
||||
slog.Info("Start")
|
||||
initializers.InitChiRouting()
|
||||
initializers.InitDBconnection()
|
||||
initializers.InitChiRouting()
|
||||
slog.Info("End")
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package configs
|
||||
|
||||
import(
|
||||
|
||||
)
|
||||
|
||||
type APIserver struct {
|
||||
Server_port string
|
||||
}
|
||||
@@ -1,13 +1,11 @@
|
||||
package initializers
|
||||
|
||||
import (
|
||||
"api/src/configs"
|
||||
"api/src/storages/psql"
|
||||
"fmt"
|
||||
"log/slog"
|
||||
"os"
|
||||
|
||||
"github.com/ilyakaznacheev/cleanenv"
|
||||
"gorm.io/driver/postgres"
|
||||
"gorm.io/gorm"
|
||||
"gorm.io/gorm/logger"
|
||||
@@ -18,18 +16,15 @@ import (
|
||||
"github.com/go-chi/chi/v5/middleware"
|
||||
)
|
||||
|
||||
var cfg *configs.PSQLConfig
|
||||
|
||||
func InitDBconnection() {
|
||||
slog.Info("Init DB connection")
|
||||
cleanenv.ReadEnv(&cfg)
|
||||
dsn := fmt.Sprintf(
|
||||
"host=%s user=%s password=%s dbname=%s port=%s sslmode=disable TimeZone=Asia/Yekaterinburg",
|
||||
cfg.Host_db,
|
||||
cfg.Db_user,
|
||||
cfg.Db_password,
|
||||
cfg.Db_name,
|
||||
cfg.Db_port,
|
||||
os.Getenv("HOST_DB"),
|
||||
os.Getenv("DB_USER"),
|
||||
os.Getenv("DB_PASSWORD"),
|
||||
os.Getenv("DB_NAME"),
|
||||
os.Getenv("DB_PORT"),
|
||||
)
|
||||
db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{
|
||||
Logger: logger.Default.LogMode(logger.Info),
|
||||
@@ -58,10 +53,11 @@ func InitChiRouting() {
|
||||
r := chi.NewRouter()
|
||||
r.Use(middleware.Logger)
|
||||
r.Get("/", func(w http.ResponseWriter, r *http.Request) {
|
||||
w.Write([]byte("welcome developer! Cool. Are you debugging?"))
|
||||
w.Write([]byte("welcome developer! Cool."))
|
||||
})
|
||||
err := http.ListenAndServe(":"+os.Getenv("SERVER_PORT"), r)
|
||||
if err != nil {
|
||||
slog.Info("failed to start server")
|
||||
slog.Error("failed to start server", "error", err)
|
||||
os.Exit(2)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user