Make database path more dynamic

This commit is contained in:
2021-07-26 19:47:29 -05:00
parent fbeb439bc0
commit 3ad49a082c
2 changed files with 26 additions and 4 deletions

View File

@ -1,19 +1,39 @@
package main
import (
"fmt"
"net/http"
"os"
"path"
"haberdasher-twirp/haberdasher"
"haberdasher-twirp/internal/haberdasherserver"
)
func main() {
var cwd, dbPath, dbDir string
var err error
var bind string = ":8080"
cwd, err = os.Getwd()
dbPath = path.Join(cwd, "var/hat.db")
dbDir = path.Dir(dbPath)
if _, err = os.Stat(dbDir); os.IsNotExist(err) {
err = os.Mkdir(dbDir, 0700)
if err != nil {
fmt.Printf("boltdb: %s\n", err)
}
}
if len(os.Args) > 1 {
bind = os.Args[1]
}
server := &haberdasherserver.Server{}
fmt.Printf("boltdb: %s\n", dbPath)
server := &haberdasherserver.Server{DBPath: dbPath}
twirpHandler := haberdasher.NewHaberdasherServer(server)
http.ListenAndServe(bind, twirpHandler)