Generate DNS from env
This commit is contained in:
parent
fad2534267
commit
d0f588e47d
3 changed files with 31 additions and 9 deletions
31
libfic/db.go
31
libfic/db.go
|
@ -2,14 +2,40 @@ package fic
|
|||
|
||||
import (
|
||||
"database/sql"
|
||||
"os"
|
||||
_ "github.com/go-sql-driver/mysql"
|
||||
)
|
||||
|
||||
var db *sql.DB
|
||||
|
||||
func DSNGenerator() string {
|
||||
db_user := "fic"
|
||||
db_password := "fic"
|
||||
db_host := ""
|
||||
db_db := "fic"
|
||||
|
||||
if v, exists := os.LookupEnv("MYSQL_HOST"); exists {
|
||||
db_host = v
|
||||
}
|
||||
if v, exists := os.LookupEnv("MYSQL_PASSWORD"); exists {
|
||||
db_password = v
|
||||
} else if v, exists := os.LookupEnv("MYSQL_ROOT_PASSWORD"); exists {
|
||||
db_user = "root"
|
||||
db_password = v
|
||||
}
|
||||
if v, exists := os.LookupEnv("MYSQL_USER"); exists {
|
||||
db_user = v
|
||||
}
|
||||
if v, exists := os.LookupEnv("MYSQL_DATABASE"); exists {
|
||||
db_db = v
|
||||
}
|
||||
|
||||
return db_user + ":" + db_password + "@" + db_host + "/" + db_db
|
||||
}
|
||||
|
||||
func DBInit(dsn string) error {
|
||||
var err error
|
||||
if db, err = sql.Open("mysql", dsn); err != nil {
|
||||
if db, err = sql.Open("mysql", dsn + "?parseTime=true&foreign_key_checks=1"); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
|
@ -158,9 +184,6 @@ CREATE TABLE IF NOT EXISTS team_hints(
|
|||
`); err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := db.Exec("SET FOREIGN_KEY_CHECKS = 1;"); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
Reference in a new issue