From a680639affbdb30b57d8b38749e75a563e02cfc2 Mon Sep 17 00:00:00 2001 From: Georg Krause Date: Fri, 17 Jan 2020 15:22:06 +0100 Subject: [PATCH] Create data directory and file if they do not exist, fixes #1 --- main.go | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/main.go b/main.go index df62456..1a01574 100644 --- a/main.go +++ b/main.go @@ -27,6 +27,7 @@ import ( "time" "encoding/json" "io/ioutil" + "path/filepath" ) type Record struct { @@ -80,13 +81,24 @@ func main() { datafile := os.Getenv("HOME") + "/.gott/data.json" args := os.Args[1:] + dir := filepath.Dir(datafile) + if _, errDir := os.Stat(dir); os.IsNotExist(errDir) { + errCreateDir := os.Mkdir(dir, 0777) + if errCreateDir == nil { + fmt.Println("Created data directory") + } else { + fmt.Println("Cannot create data directory. Please create it on your own") + return + } + } + // representation of the data data := Records { Entries: []Record {}, } - jsonFile, err := os.Open(datafile) + jsonFile, err := os.Create(datafile) if err != nil { fmt.Println(err)