initiate multi db config
This commit is contained in:
@@ -15,11 +15,19 @@ dbCfg:
|
|||||||
maxIdleConns: 5
|
maxIdleConns: 5
|
||||||
maxIdleTime: 100
|
maxIdleTime: 100
|
||||||
|
|
||||||
ssDbCfg:
|
multiDbCfg:
|
||||||
dsn:
|
- dbs :
|
||||||
maxOpenConns: 5
|
name:
|
||||||
maxIdleConns: 5
|
dsn:
|
||||||
maxIdleTime: 100
|
maxOpenConns:
|
||||||
|
maxIdleConns:
|
||||||
|
maxIdleTime:
|
||||||
|
- bpjs
|
||||||
|
name: bpjs
|
||||||
|
dsn:
|
||||||
|
maxOpenConns:
|
||||||
|
maxIdleConns:
|
||||||
|
maxIdleTime:
|
||||||
|
|
||||||
loggerCfg:
|
loggerCfg:
|
||||||
hideTime:
|
hideTime:
|
||||||
|
|||||||
@@ -49,3 +49,5 @@ require (
|
|||||||
gorm.io/driver/sqlite v1.5.7 // indirect
|
gorm.io/driver/sqlite v1.5.7 // indirect
|
||||||
gorm.io/driver/sqlserver v1.5.4 // indirect
|
gorm.io/driver/sqlserver v1.5.4 // indirect
|
||||||
)
|
)
|
||||||
|
|
||||||
|
replace github.com/karincake/apem => D:\Kuli\Sabbi\external\apem
|
||||||
@@ -1,36 +1,9 @@
|
|||||||
package ssdb
|
package ssdb
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"log"
|
dg "github.com/karincake/apem/db-gorm-pg"
|
||||||
|
|
||||||
a "github.com/karincake/apem"
|
|
||||||
lo "github.com/karincake/apem/loggero"
|
|
||||||
"gorm.io/driver/postgres"
|
|
||||||
"gorm.io/gorm"
|
|
||||||
"gorm.io/gorm/schema"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() {
|
func SetInstance() {
|
||||||
SetConfig()
|
I = dg.IS["satu-sehat"]
|
||||||
NewInstance()
|
|
||||||
}
|
|
||||||
|
|
||||||
func SetConfig() {
|
|
||||||
a.ParseSingleCfg(&Cfg)
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewInstance() {
|
|
||||||
// create database connection
|
|
||||||
db, err := gorm.Open(postgres.Open(Cfg.Dsn), &gorm.Config{
|
|
||||||
NamingStrategy: schema.NamingStrategy{
|
|
||||||
SingularTable: true,
|
|
||||||
NoLowerCase: true,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
SSDb = db
|
|
||||||
lo.I.Println("Instantiation for satu-sehat database-connetion using db-gorm-pg, status: DONE!!")
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,12 +2,4 @@ package ssdb
|
|||||||
|
|
||||||
import "gorm.io/gorm"
|
import "gorm.io/gorm"
|
||||||
|
|
||||||
type SsDbCfg struct {
|
var I *gorm.DB
|
||||||
Dsn string
|
|
||||||
MaxOpenConns int `yaml:"maxOpenConns"`
|
|
||||||
MaxIdleConns int `yaml:"maxIdleConns"`
|
|
||||||
MaxIdleTime int `yaml:"maxIdleTime"`
|
|
||||||
}
|
|
||||||
|
|
||||||
var Cfg SsDbCfg = SsDbCfg{}
|
|
||||||
var SSDb *gorm.DB
|
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ func SetRoutes() http.Handler {
|
|||||||
/////
|
/////
|
||||||
a.RegisterExtCall(gs.Adjust)
|
a.RegisterExtCall(gs.Adjust)
|
||||||
a.RegisterExtCall(zlc.Adjust)
|
a.RegisterExtCall(zlc.Adjust)
|
||||||
a.RegisterExtCall(ssdb.Init)
|
a.RegisterExtCall(ssdb.SetInstance)
|
||||||
a.RegisterExtCall(lh.Populate)
|
a.RegisterExtCall(lh.Populate)
|
||||||
a.RegisterExtCall(validation.RegisterValidation)
|
a.RegisterExtCall(validation.RegisterValidation)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user