opa-compile-response-parser
v2.0.0
Published
An Open Policy Agent Compile Response Parser
Downloads
11,074
Maintainers
Readme
opa-compile-response-parser
An Open Policy Agent Compile Response Parser
Open Policy Agent provides a compile API that allows you partially evaluate your policy.
This library can parse the compile JSON response and allow you to access the Rego AST (Abstract Syntax Tree) in the response body by Rego language structure.
Moreover, it further processes the AST to:
- eliminate tautological rules
- e.g. r { x; false } => false
- replace rule reference with inline value
- e.g. r1 { r2 } r2 { true } => r1 { true } => true
API document
https://t83714.github.io/opa-compile-response-parser/
Examples
import OpaCompileResponseParser from "opa-compile-response-parser";
const parser = new OpaCompileResponseParser();
parser.parse(jsonResponse);
const result = parser.evaluate();
/**
returned evaluate result:
interface CompleteRuleResult {
fullName: string;
name: string;
value: RegoValue;
isCompleteEvaluated: boolean;
residualRules?: RegoRule[];
}
*/
// --- Print residual rules as human readable string
console.log(parser.evaluateAsHumanReadableString());
More Examples
Todo
- replace rule reference with inline rules
Compatibility
Tested with Open Policy Agent version 0.37.2