github.com/Cloud-Foundations/Dominator@v0.3.4/lib/fsutil/readFileTree.go (about) 1 package fsutil 2 3 import ( 4 "io/ioutil" 5 "os" 6 "path/filepath" 7 ) 8 9 func readFileTree(topdir, prefix string) (map[string][]byte, error) { 10 overlayFiles := make(map[string][]byte) 11 startPos := len(topdir) + 1 12 err := filepath.Walk(topdir, 13 func(path string, info os.FileInfo, err error) error { 14 if err != nil { 15 return err 16 } 17 if info.IsDir() { 18 return nil 19 } 20 data, err := ioutil.ReadFile(path) 21 if err != nil { 22 return err 23 } 24 overlayFiles[filepath.Join(prefix, path[startPos:])] = data 25 return nil 26 }) 27 return overlayFiles, err 28 }