Skip to content
This repository has been archived by the owner on Feb 24, 2021. It is now read-only.

bugthesystem/consulr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

consulr

Build Status Coverage Status npm version NPM

Decode Consul KV data into JSON in Node.js and watch for updates!

Consul is a tool for service discovery, monitoring and configuration. https://www.consul.io/

Important
⚠️⚠️⚠️ Purpose of this project to give extra capabilities to nodejs applications like dynamic configuration changes without SIGHUP signal or manuel restart. So, different solutions have own benefits; this means there is no claim to use consulr instead of file based configuration solutions like consul-template or environment variables based solutions envconsul.

Install with npm

npm i consulr --save

Install with yarn

yarn add consulr

Preview

const Consulr = require('consulr');

function main() {
  const c = new Consulr({
    prefix: "foo/",
    quiescencePeriodInMs: 3 * 1000 // 3 sec
  });

  c.on('update', newValue => {
    console.log(`New value : ${JSON.stringify(newValue)}`);
  });
  
  c.on('error', err => {
    console.log(`Error value : ${JSON.stringify(err)}`);
  });
  
  c.run();
}

main();

Development

It uses yarn for dependency management.

git clone git@github.com:ziyasal/consulr.git
cd consulr
yarn #it will install dependencies

Testing
It uses nock to intercept consul http calls in tests.

Bugs

If you encounter a bug, performance issue, or malfunction, please add an Issue with steps on how to reproduce the problem.

License

Code and documentation are available according to the MIT License (see LICENSE).

z i λ a s a l

About

Decode Consul KV data into JSON in Node.js and watch for updates

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published