db parameter

This commit is contained in:
Nazar Kanaev 2020-09-18 21:21:54 +01:00
parent 1d977c543a
commit 65ddfc297d
3 changed files with 13 additions and 9 deletions

1
.gitignore vendored
View File

@ -2,3 +2,4 @@
/gofeed /gofeed
/_output /_output
/yarr /yarr
*.db

15
main.go
View File

@ -11,28 +11,31 @@ import (
) )
func main() { func main() {
var addr, storageFile string
flag.StringVar(&addr, "addr", "127.0.0.1:7070", "address to run server on")
flag.StringVar(&storageFile, "db", "", "storage file path")
flag.Parse()
logger := log.New(os.Stdout, "", log.Ldate|log.Ltime|log.Lshortfile) logger := log.New(os.Stdout, "", log.Ldate|log.Ltime|log.Lshortfile)
configPath, err := os.UserConfigDir() configPath, err := os.UserConfigDir()
if err != nil { if err != nil {
logger.Fatal("Failed to get config dir: ", err) logger.Fatal("Failed to get config dir: ", err)
} }
storagePath := filepath.Join(configPath, "yarr")
storageFile := filepath.Join(storagePath, "storage.db")
if storageFile == "" {
storagePath := filepath.Join(configPath, "yarr")
if err := os.MkdirAll(storagePath, 0755); err != nil { if err := os.MkdirAll(storagePath, 0755); err != nil {
logger.Fatal("Failed to create app config dir: ", err) logger.Fatal("Failed to create app config dir: ", err)
} }
storageFile = filepath.Join(storagePath, "storage.db")
}
db, err := storage.New(storageFile, logger) db, err := storage.New(storageFile, logger)
if err != nil { if err != nil {
logger.Fatal("Failed to initialise database: ", err) logger.Fatal("Failed to initialise database: ", err)
} }
var addr string
flag.StringVar(&addr, "addr", "127.0.0.1:7070", "address to run server on")
flag.Parse()
srv := server.New(db, logger, addr) srv := server.New(db, logger, addr)
platform.Start(srv) platform.Start(srv)
} }