github.com/swiftstack/proxyfs@v0.0.0-20201223034610-5434d919416e/pfsconfjsonpacked/main.go (about) 1 package main 2 3 import ( 4 "encoding/json" 5 "fmt" 6 "log" 7 "os" 8 9 "github.com/swiftstack/ProxyFS/conf" 10 "github.com/swiftstack/ProxyFS/transitions" 11 ) 12 13 func main() { 14 args := os.Args[1:] 15 16 // Read in the program's os.Arg[1]-specified (and required) .conf file 17 if len(args) == 0 { 18 log.Fatalf("no .conf file specified") 19 } 20 21 confMap, confErr := conf.MakeConfMapFromFile(args[0]) 22 if nil != confErr { 23 log.Fatalf("failed to load config: %v", confErr) 24 } 25 26 // Update confMap with any extra os.Args supplied 27 confErr = confMap.UpdateFromStrings(args[1:]) 28 if nil != confErr { 29 log.Fatalf("failed to load config overrides: %v", confErr) 30 } 31 32 confErr = transitions.UpgradeConfMapIfNeeded(confMap) 33 if nil != confErr { 34 log.Fatalf("failed to upgrade config: %v", confErr) 35 } 36 37 confMapJSONPacked, _ := json.Marshal(confMap) 38 39 fmt.Printf("%v", string(confMapJSONPacked[:])) 40 }