From 1f4f6f9b75c4fe9184478edf630cad7163d99f9b Mon Sep 17 00:00:00 2001 From: Vincent Batts Date: Thu, 13 Oct 2016 17:36:42 -0400 Subject: [PATCH] app: add a config load in init Signed-off-by: Vincent Batts --- app.go | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/app.go b/app.go index b8f7b8b..a0aab8f 100644 --- a/app.go +++ b/app.go @@ -6,11 +6,33 @@ package main -import "flag" +import ( + "flag" + "log" + "os" + "path/filepath" +) + +var ( + config *Config + flConfig = flag.String("config", filepath.Join(os.Getenv("HOME"), ".SyncRefs.conf"), "configuration file path") +) func main() { flag.Parse() + fh, err := os.Open(*flConfig) + if err != nil && !os.IsNotExist(err) { + log.Fatal(err) + } + if fh != nil { + config, err = ReadConfig(fh) + if err != nil { + log.Fatal(err) + } + } + // Build relationships of each group + // there needs to be a quit chan to hand off to each watcher and group for _, arg := range flag.Args() { WatchPath(arg) }