INNER CODE UNIT · Go
ParseRegoWithAnnotations
open-policy-agent/conftest · document/metadata.go:19
func ParseRegoWithAnnotations(directory string) (ast.FlatAnnotationsRefSet, error) {
// Recursively find all rego files (ignoring test files), starting at the given directory.
result, err := loader.NewFileLoader().
WithProcessAnnotation(true).
Filtered([]string{directory}, func(_ string, info os.FileInfo, _ int) bool {
if strings.HasSuffix(info.Name(), "_test.rego") {
return true
}
if !info.IsDir() && filepath.Ext(info.Name()) != ".rego" {
return true
}
return false
})
if err != nil {
return nil, fmt.Errorf("load rego files: %w", err)