@forest.host/etcd3
TypeScript icon, indicating that this package has built-in type declarations

0.2.20 • Public • Published

etcd3

etcd3 aims to be (with its first stable release) a high-quality, production-ready client for the Protocol Buffer-based etcdv3 API. It includes load balancing, reconnections, transactions, software transactional memory, high-level query builders and lease management, watchers, mocking, and is type-safe for TypeScript consumers.

This fork

As the maintainer of the etcd3 package is unresponsive, i've chosen to publish this for my own usage. This fork includes leader election.

Quickstart

Install via:

npm install --save etcd3

Start CRUD-ing!

const { Etcd3 } = require('etcd3');
const client = new Etcd3();

client.put('foo').value('bar')
  .then(() => client.get('foo').string())
  .then(value => console.log('foo was:', value))
  .then(() => client.getAll().prefix('f').strings())
  .then(keys => console.log('all our keys starting with "f":', keys))
  .then(() => client.delete().all());

API Documentation

Our TypeDoc docs are available here.

Our test cases are also quite readable.

Running tests

$ npm install
$ docker-compose up
$ npm test
$ docker-compose down

Contributing

Running tests for this module requires running an etcd3 server locally. The tests try to use the default port initially, and you can configure this by setting the ETCD_ADDR environment variable, like export ETCD_ADDR=localhost:12345.# Contributing

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Package Sidebar

Install

npm i @forest.host/etcd3

Weekly Downloads

0

Version

0.2.20

License

MIT

Unpacked Size

354 kB

Total Files

77

Last publish

Collaborators

  • mass_im
  • subsoil