etcd v3 API types and gRPC service definitions in pure OCaml
0

Configure Feed

Select the types of activity you want to include in your feed.

OCaml 77.4%
Go 6.6%
Shell 6.5%
Dune 2.0%
Perl 0.6%
Other 6.9%
34 1 0

Clone this repository

https://git.vm.fail/gazagnaire.org/ocaml-etcd https://git.vm.fail/did:plc:ypg2emvygws35cvdn6nqhzrb
ssh://git@git.recoil.org:2222/gazagnaire.org/ocaml-etcd ssh://git@git.recoil.org:2222/did:plc:ypg2emvygws35cvdn6nqhzrb

For self-hosted knots, clone URLs may differ based on your setup.


README.md

etcd#

etcd v3 API types and an Eio client, in pure OCaml.

IO-free protobuf message types and gRPC method definitions for the etcd v3 API (etcdserverpb / mvccpb), plus an Eio client that speaks them over nox-grpc-eio. The library maps the KV service request and response messages to OCaml values with nox-protobuf and names each RPC as an nox-grpc method, so the same definitions back the client and a future server.

Packages#

  • etcd -- IO-free etcd v3 message types and gRPC method definitions.
  • etcd-client -- Eio client for the etcdserverpb.KV service (Range, Put, DeleteRange), exposing get/put/delete over a connection.
  • etcd-server -- server-side scaffolding.
  • etco -- command-line entry point.

Install#

opam install etcd-client

If opam cannot find the package, it may not yet be released in the public opam-repository. Add the overlay repository, then install it:

$ opam repo add samoht https://tangled.org/gazagnaire.org/opam-overlay.git
$ opam update
$ opam install etcd-client

API#

See the .mli files under lib/ (Kv, Lease, Watch, Auth, Cluster, Maintenance, Store) and lib/client/ for the documented interface.

License#

ISC. See LICENSE.md.