Merge pull request 'Configurable database path' (#26) from config into master
Reviewed-on: #26
This commit is contained in:
commit
91b0e21b7a
@ -1,4 +1,5 @@
|
||||
watbot:
|
||||
database: wat.db # wat.db (in the working directory) is the default
|
||||
server:
|
||||
host: irc.casa # mandatory, no default
|
||||
port: 6697
|
||||
|
2
main.go
2
main.go
@ -20,6 +20,7 @@ type Config struct {
|
||||
}
|
||||
|
||||
type watConfig struct {
|
||||
Database string `default:"wat.db" yaml:"database"`
|
||||
Nick string `yaml:"nick"`
|
||||
Pass string `yaml:"pass"`
|
||||
User string `yaml:"user"`
|
||||
@ -99,6 +100,7 @@ func main() {
|
||||
Name: config.Name,
|
||||
}
|
||||
watConfig := wat.WatConfig{
|
||||
DatabasePath: config.Database,
|
||||
AutoJoinChannels: config.Channels.Join,
|
||||
PermittedChannels: config.Channels.Permitted,
|
||||
IgnoredHosts: config.Ignores.Hosts,
|
||||
|
@ -20,6 +20,7 @@ type WatBot struct {
|
||||
}
|
||||
|
||||
type WatConfig struct {
|
||||
DatabasePath string
|
||||
BotHosts []string
|
||||
BotGames BotGameConfig
|
||||
AdminHosts []string
|
||||
@ -30,7 +31,7 @@ type WatConfig struct {
|
||||
|
||||
func NewWatBot(config *irc.ClientConfig, watConfig *WatConfig, serverConn *tls.Conn) *WatBot {
|
||||
wat := WatBot{conn: serverConn, Nick: config.Nick, c: watConfig}
|
||||
wat.Db = NewWatDb()
|
||||
wat.Db = NewWatDb(watConfig.DatabasePath)
|
||||
wat.game = NewWatGame(&wat, wat.Db)
|
||||
wat.integration = NewWatIntegration(&wat, wat.Db, &WatIntegrationConfig{BotHosts: watConfig.BotHosts, BotGames: watConfig.BotGames})
|
||||
config.Handler = irc.HandlerFunc(wat.HandleIrcMsg)
|
||||
|
@ -52,10 +52,10 @@ type WatDb struct {
|
||||
db *gorm.DB
|
||||
}
|
||||
|
||||
func NewWatDb() *WatDb {
|
||||
func NewWatDb(dbpath string) *WatDb {
|
||||
w := WatDb{}
|
||||
var err error
|
||||
w.db, err = gorm.Open(sqlite.Open("wat.db"), &gorm.Config{})
|
||||
w.db, err = gorm.Open(sqlite.Open(dbpath), &gorm.Config{})
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user