diff options
author | Daniel Langesten <daniel.langest@gmail.com> | 2015-03-10 12:17:09 +0100 |
---|---|---|
committer | Daniel Langesten <daniel.langest@gmail.com> | 2015-03-10 12:17:09 +0100 |
commit | 27c2831269972ef48c9926ee5f79650cdc8c27e5 (patch) | |
tree | 3361c4aa36fab532c08132c95587bfdcd01d3f3b | |
parent | 08ba2e4238fdc518afda1191fb56bc457af3b2b6 (diff) |
added support for reading config from file
-rw-r--r-- | config.go | 36 | ||||
-rw-r--r-- | config.json | 15 |
2 files changed, 45 insertions, 6 deletions
diff --git a/config.go b/config.go new file mode 100644 index 0000000..2646c23 --- /dev/null +++ b/config.go @@ -0,0 +1,36 @@ +package main + +import ( + "encoding/json" + "fmt" + "io/ioutil" +) + +type Config struct { + Volumes []VolumeInfo `json:volumes` + Interval string `json:interval` +} + +type VolumeInfo struct { + Size string `json:size` + Lower int `json:lower` + Upper int `json:upper` +} + +func main() { + readConfig() +} + +func readConfig() { + content, err := ioutil.ReadFile("config.json") + if err != nil { + fmt.Print("Error:", err) + } + var conf Config + err = json.Unmarshal(content, &conf) + if err != nil { + fmt.Print("Error:", err) + } + fmt.Println(conf) + +} diff --git a/config.json b/config.json index f236414..2efb464 100644 --- a/config.json +++ b/config.json @@ -1,15 +1,18 @@ { - "volumes": { - "small":{ + "volumes": [ + { + "size": "small", "upper": 100 }, - "medium":{ + { + "size": "medium", "lower": 100, "upper": 200 }, - "large":{ - "lower":200 + { + "size": "large", + "lower": 200 } - }, + ], "interval": "10min" } |