Open Policy Agent Policy as code
Light · Postcard
102 × 152 mm · PDF
Dark · Postcard
102 × 152 mm · PDF
Ink saver · Postcard
102 × 152 mm · PDF
Light · A4 landscape
297 × 210 mm · PDF
Dark · A4 landscape
297 × 210 mm · PDF
Ink saver · A4 landscape
297 × 210 mm · PDF
Light · A3 landscape
420 × 297 mm · PDF
Dark · A3 landscape
420 × 297 mm · PDF
Ink saver · A3 landscape
420 × 297 mm · PDF
Start here
opa eval -d <dir> -i <input.json>
'<query>'
opa test <dir>
opa fmt -w <dir>
opa check <dir>
opa run <dir>
opa run -s <dir>
opa build -b <dir>
opa inspect <bundle>
Concepts
- Policy .rego files
- Tested test_ rules
- Bundle .tar.gz
- Server opa run -s
- Decision JSON result
Eval
opa eval -d <path> '<query>'
opa eval -d <path> -i <input.json>
'<query>'
opa eval -d <path> -I '<query>'
opa eval -b <bundle> '<query>'
opa eval -f pretty '<query>'
opa eval -f raw '<query>'
opa eval -f values '<query>'
opa eval -f bindings '<query>'
opa eval --fail '<query>'
opa eval --fail-defined '<query>'
opa eval --stdin '<query>'
opa eval --explain=full '<query>'
opa eval --profile '<query>'
opa eval --metrics '<query>'
opa eval -p -u input '<query>'
opa eval --strict '<query>'
REPL and server
opa runopa run <path>
opa run -s <path>
opa run -s -a <addr>
opa run -s -b <bundle>
opa run -w <path>
opa run -s -c <config.yaml>
opa run --set <key>=<value>
opa run -l debug
opa run -H <file>
help inputrepl.input:<file>
Testing
opa test <path>
opa test -v <path>
opa test -r '<regex>' <path>
opa test -c <path>
opa test --threshold <pct> -c <path>
opa test -w <path>
opa test -b <bundle>
opa test --bench <path>
opa test -f json <path>
opa test -z <path>
Format and check
opa fmt <path>
opa fmt -w <path>
opa fmt -d <path>
opa fmt -l <path>
opa fmt --fail <path>
opa check <path>
opa check -S <path>
opa check -s <schema>
opa check -f json <path>
opa parse <file>
opa deps -d <path> '<query>'
Bundles
opa build <path>
opa build -b <dir> -o <file>
opa build -r <rev> <path>
opa build -e <entrypoint> <path>
opa build -O=1 -e <entrypoint> <path>
opa build -t wasm -e <entrypoint> <path>
opa build -t plan -e <entrypoint> <path>
opa build --prune-unused -e <entrypoint>
<path>
opa build --signing-key <key> <path>
opa build --verification-key <key> -b
<bundle>
opa sign -b <dir> --signing-key <key>
opa inspect <bundle>
opa inspect -a <path>
Other commands
opa exec -b <bundle> <input.json>
opa exec -c <config> --decision <path>
<files>
opa exec --fail-non-empty <files>
opa bench -d <path> -i <input.json>
'<query>'
opa capabilities --current
opa versionopa version -cRecipes
# deny rule must come back emptyopa eval --fail-defined -d policy/ -i deploy.json 'data.k8s.deny'
opa fmt --fail policy/opa check -S policy/opa test -c --threshold 80 policy/
opa run -s -b bundle.tar.gz &curl -s localhost:8181/v1/data/app/allow -d '{"input": {"user": "bob"}}'
opa build -O=1 -e app/allow -o bundle.tar.gz policy/opa inspect bundle.tar.gz



