πŸ”– Node.js client for etcd3
ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ
Connor Peet 7691f9bf22 chore(dep): update and modernize dependencies 2019-07-03 12:22:56 -07:00
bin feat(rpc): mark clients as failing when streams emit an error 2018-05-20 15:57:37 -07:00
docs chore(docs): rebuild 2018-05-05 22:12:00 -07:00
proto fix(codegen): call stack errors when regenerating proto fildes 2017-11-11 22:09:45 -08:00
src chore(dep): update and modernize dependencies 2019-07-03 12:22:56 -07:00
test chore(dep): update and modernize dependencies 2019-07-03 12:22:56 -07:00
.editorconfig init 2017-04-09 22:25:42 -07:00
.gitignore fix(stm): stm comparisons being invalid when using namespaces 2019-07-03 11:23:17 -07:00
.npmignore Fix files being incorrectly npmignored 2017-04-13 14:52:49 -07:00
.travis.yml fix(connection-pool): DeprecationWarning: grpc.load (fixes #81) (#91) 2019-03-22 11:14:31 -07:00
Dockerfile fix(client): allow mock.getConnection to return promises 2018-02-09 16:06:33 -08:00
LICENSE Initial working version of password auth 2017-06-02 08:49:38 -07:00
changelog.md chore(dep): update and modernize dependencies 2019-07-03 12:22:56 -07:00
package-lock.json 0.2.12 2019-07-03 10:06:55 -07:00
package.json chore(dep): update and modernize dependencies 2019-07-03 12:22:56 -07:00
readme.md docs(readme): add code of conduct link 2018-05-29 09:18:47 -07:00
tsconfig.json fix(stm): address PR comments, add thorough tests and fix bugs 2017-10-15 20:47:01 -07:00
tslint.json chore(dep): update and modernize dependencies 2019-07-03 12:22:56 -07:00

readme.md

etcd3 Build Status

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.

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.

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.