diff --git a/go/utils/config.go b/go/utils/config.go new file mode 100644 index 0000000..54db0c9 --- /dev/null +++ b/go/utils/config.go @@ -0,0 +1,24 @@ +package utils + +import ( + "errors" + "fmt" + "os" +) + +func GetConfigFile(name string) (*os.File, error) { + _, err := os.Stat(name) + if err != nil { + if errors.Is(err, os.ErrNotExist) { + //create file + file, err := os.Create(name) + if err != nil { + return nil, fmt.Errorf("fail to create config file: %w", err) + } + return file, err + } else { + return nil, err + } + } + return os.OpenFile(name, os.O_RDWR, 0644) +}