Initial rendering of the node tree
This commit is contained in:
commit
c5bec0afa6
7477 changed files with 8513 additions and 0 deletions
74
db.go
Normal file
74
db.go
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
// External
|
||||
"git.gibonuddevalla.se/go/dbschema"
|
||||
"github.com/jmoiron/sqlx"
|
||||
_ "github.com/lib/pq"
|
||||
|
||||
// Standard
|
||||
"fmt"
|
||||
"os"
|
||||
)
|
||||
|
||||
var (
|
||||
db *sqlx.DB
|
||||
)
|
||||
|
||||
func sqlCallback(dbname string, version int) (sql []byte, found bool) {
|
||||
fname := fmt.Sprintf("sql/%04d.sql", version)
|
||||
|
||||
var err error
|
||||
sql, err = sqlFS.ReadFile(fname)
|
||||
if err != nil {
|
||||
if !os.IsNotExist(err) {
|
||||
logger.Error("database", "error", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
found = true
|
||||
return
|
||||
}
|
||||
|
||||
func logCallback(topic, details string) {
|
||||
logger.Info("database", topic, details)
|
||||
}
|
||||
|
||||
func initDB() (err error) { // {{{
|
||||
dbConn := fmt.Sprintf(
|
||||
"host=%s port=%d user=%s password=%s dbname=%s sslmode=disable",
|
||||
config.Database.Host,
|
||||
config.Database.Port,
|
||||
config.Database.Username,
|
||||
config.Database.Password,
|
||||
config.Database.Db,
|
||||
)
|
||||
|
||||
logger.Info(
|
||||
"database",
|
||||
"host", config.Database.Host,
|
||||
"port", config.Database.Port,
|
||||
)
|
||||
|
||||
if db, err = sqlx.Connect("postgres", dbConn); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
upgrader := dbschema.NewUpgrader()
|
||||
upgrader.SetSqlCallback(sqlCallback)
|
||||
upgrader.SetLogCallback(logCallback)
|
||||
_, err = upgrader.AddDatabase(
|
||||
config.Database.Host,
|
||||
config.Database.Port,
|
||||
config.Database.Db,
|
||||
config.Database.Username,
|
||||
config.Database.Password,
|
||||
)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
err = upgrader.Run()
|
||||
|
||||
return
|
||||
} // }}}
|
||||
Loading…
Add table
Add a link
Reference in a new issue