in operator/pkg/operator/manifests/repo.go [59:82]
func getFilesRecursive(prefix string, root os.FileInfo) ([]string, error) {
if !root.IsDir() {
return nil, fmt.Errorf("not a dir: %s", root.Name())
}
prefix = filepath.Join(prefix, root.Name())
fs, _ := manifests.ReadDir(prefix)
out := make([]string, 0)
for _, f := range fs {
info, err := Stat(filepath.Join(prefix, f.Name()))
if err != nil {
return nil, err
}
if !f.IsDir() {
out = append(out, filepath.Join(prefix, f.Name()))
continue
}
nfs, err := getFilesRecursive(prefix, info)
if err != nil {
return nil, err
}
out = append(out, nfs...)
}
return out, nil
}