The Oak Functions Launcher loads the Oak Functions enclave binary and exposes a gRPC server for communicating with the binary via the Oak Channel.
First, if running "rootless" Docker, set the permission to access the KVM kernel
module by either (i) sudo setfacl -m u:${USER}:rw /dev/kvm on the host, or by
(ii) adding the user to the KVM group.
Then, run the following from within the Oak Developer Docker Container:
To launch integration tests of the Oak Functions Launcher:
bazel test oak_functions_launcher/...Additional documentation is available via:
bazel run oak_functions_launcher -- --helpTo launch the Oak Functions binary with the default support binaries, use the
just command, providing a wasm target to run and a lookup data file.
just run oak-functions-launcher \
oak_functions_launcher/key_value_lookup \
oak_functions_launcher/mock_lookup_dataRequired artifacts are built automatically. See just run --list for details.
Output:
[2023-02-27T16:54:15Z INFO oak_functions_launcher] read Wasm file from disk oak_functions_launcher/key_value_lookup.wasm (1.65MiB)
[2023-02-27T16:54:15Z INFO oak_functions_launcher] service initialized: InitializeResponse { public_key_info: Some(PublicKeyInfo { public_key: [], attestation: [] }) }
[2023-02-27T16:54:15Z INFO oak_functions_launcher] obtained public key (0 bytes)