in tools/eksDistroBuildToolingOpsTools/pkg/git/gogitClient.go [534:571]
func (g *GogitClient) ReadFiles(foldername string) (map[string]string, error) {
repo, err := g.Client.OpenRepo()
if err != nil {
logger.Error(err, "Opening repo")
return nil, err
}
ref, err := g.Client.Head(repo)
if err != nil {
return nil, err
}
commit, err := repo.CommitObject(ref.Hash())
if err != nil {
return nil, err
}
tree, err := repo.TreeObject(commit.TreeHash)
if err != nil {
return nil, err
}
files := make(map[string]string)
err = tree.Files().ForEach(func(f *object.File) error {
if strings.Contains(f.Name, foldername) {
p, err := f.Contents()
if err != nil {
return err
}
files[f.Name] = p
}
return nil
})
if err != nil {
return nil, fmt.Errorf("reading files from folder: %s, %v", foldername, err)
}
return files, nil
}