mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Accept URL parameter [database] config
This commit is contained in:
parent
af216ecf83
commit
03d0f11407
@ -2,6 +2,7 @@ package sqlstore
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"net/url"
|
||||||
"os"
|
"os"
|
||||||
"path"
|
"path"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
@ -155,16 +156,35 @@ func getEngine() (*xorm.Engine, error) {
|
|||||||
func LoadConfig() {
|
func LoadConfig() {
|
||||||
sec := setting.Cfg.Section("database")
|
sec := setting.Cfg.Section("database")
|
||||||
|
|
||||||
DbCfg.Type = sec.Key("type").String()
|
cfgURL := sec.Key("url").String()
|
||||||
|
if len(cfgURL) != 0 {
|
||||||
|
dbURL, _ := url.Parse(cfgURL)
|
||||||
|
DbCfg.Type = dbURL.Scheme
|
||||||
|
DbCfg.Host = dbURL.Host
|
||||||
|
|
||||||
|
pathSplit := strings.Split(dbURL.Path, "/")
|
||||||
|
if len(pathSplit) > 1 {
|
||||||
|
DbCfg.Name = pathSplit[1]
|
||||||
|
}
|
||||||
|
|
||||||
|
userInfo := dbURL.User
|
||||||
|
if userInfo != nil {
|
||||||
|
DbCfg.User = userInfo.Username()
|
||||||
|
DbCfg.Pwd, _ = userInfo.Password()
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
DbCfg.Type = sec.Key("type").String()
|
||||||
|
DbCfg.Host = sec.Key("host").String()
|
||||||
|
DbCfg.Name = sec.Key("name").String()
|
||||||
|
DbCfg.User = sec.Key("user").String()
|
||||||
|
if len(DbCfg.Pwd) == 0 {
|
||||||
|
DbCfg.Pwd = sec.Key("password").String()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if DbCfg.Type == "sqlite3" {
|
if DbCfg.Type == "sqlite3" {
|
||||||
UseSQLite3 = true
|
UseSQLite3 = true
|
||||||
}
|
}
|
||||||
DbCfg.Host = sec.Key("host").String()
|
|
||||||
DbCfg.Name = sec.Key("name").String()
|
|
||||||
DbCfg.User = sec.Key("user").String()
|
|
||||||
if len(DbCfg.Pwd) == 0 {
|
|
||||||
DbCfg.Pwd = sec.Key("password").String()
|
|
||||||
}
|
|
||||||
DbCfg.SslMode = sec.Key("ssl_mode").String()
|
DbCfg.SslMode = sec.Key("ssl_mode").String()
|
||||||
DbCfg.Path = sec.Key("path").MustString("data/grafana.db")
|
DbCfg.Path = sec.Key("path").MustString("data/grafana.db")
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user