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.
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());Our TypeDoc docs are available here.
Our test cases are also quite readable.
$ npm install
$ docker-compose up
$ npm test
$ docker-compose downRunning 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.