You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The policyWasm can be a variety of things, including raw byte array, InputStream, Path, File.
The content should be the compiled policy Wasm file, a valid WebAssembly module.
For any opa build created WASM binaries the result set, when defined, will
contain a result key with the value of the compiled entrypoint. See
https://www.openpolicyagent.org/docs/latest/wasm/
for more details.
Builtins support:
At the moment the following builtins are supported(and, by default, automatically injected when needed):
String
sprintfNOTE: this implementation is SDK-dependent and might generate different results depending on the runtime, please, limit the usage to trivial use-cases.
Which is compiling the example.rego policy file with the result set to
data.example.allow. The result will be an OPA bundle with the policy.wasm
binary included. See ./examples for a more comprehensive example.
See opa build --help for more details.
Support
This SDK is community supported and maintained and is not under the umbrella of SDKs eligible for Enterprise support from Styra. For bug reports and feature requests, please use Github issues. For real-time support, please join the Open Policy Agent or Styra Community slack organizations.
Development
To develop this library you need to have installed the following tools:
Java 11+
Maven
the opa cli
tar
the typical command to build and run the tests is:
mvn spotless:apply clean install
to disable the tests based on the Opa testsuite:
OPA_TESTSUITE=disabled mvn spotless:apply install
Releases
The versions in core/pom.xml are updated as part of the release process.
New releases are manually triggered by running the
release workflow.
This workflow requires a number of secrets to be set, while OSSRH_PASSWORD and
username should not need to be rotated, JAVA_GPG_SECRET_KEY should be updated
if the key has expired and has been removed from the
keyserver. This secret is not base64
encoded.
An example error from a release run where they key has expired, note that this
is not the final error about Remote staging failed: Staging rules failure!.
No public key: Key with id: (78fe9b032725616c) was not able to be located on <a href=https://keyserver.ubuntu.com:11371/>https://keyserver.ubuntu.com:11371/</a>. Upload your public key and try the operation again.