github.com/cloud-foundations/dominator@v0.0.0-20221004181915-6e4fee580046/cmd/subd/loadConfiguration.go (about) 1 package main 2 3 import ( 4 "os" 5 "path" 6 7 "github.com/Cloud-Foundations/Dominator/lib/json" 8 "github.com/Cloud-Foundations/Dominator/lib/log" 9 "github.com/Cloud-Foundations/Dominator/lib/verstr" 10 "github.com/Cloud-Foundations/Dominator/proto/sub" 11 ) 12 13 func loadConfiguration(confDir string, conf *sub.Configuration, 14 logger log.Logger) { 15 file, err := os.Open(confDir) 16 if err != nil { 17 if !os.IsNotExist(err) { 18 logger.Println(err) 19 } 20 return 21 } 22 names, err := file.Readdirnames(-1) 23 file.Close() 24 if err != nil { 25 logger.Println(err) 26 return 27 } 28 verstr.Sort(names) 29 for _, name := range names { 30 filename := path.Join(confDir, name) 31 if err := json.ReadFromFile(filename, conf); err != nil { 32 if !os.IsNotExist(err) { 33 logger.Println(err) 34 } 35 } 36 } 37 }