A simplified interface for resolving variables via Consul.

Usage no npm install needed!

<script type="module">
  import resolveVars from '';



Retrieving variables stored in a remote system can be painful, so resolve-vars makes it simple to get and set values stored in Consul.


 $ yarn add resolve-vars

or if using npm:

 $ npm install resolve-vars --save



Creating an instance of a variable resolver is simple:

const Resolver = require('resolve-vars');
const resolver = new Resolver();

Retrieving a single value

Retrieving a value is an asynchronous action, as such, get returns a promise that resolves to the retrieved value if one existed.

  .then((val) => {
    console.log(`value is: ${val}`);

Resolving multiple values at once

In some situations, you'll want to resolve variables in bulk, which is why task exists. task returns a promise that resolves to the variables' values (if found).

resolver.task([ 'foo/bar/baz', 'bizz/buzz' ])()
  .then((vals) => {

This is especially useful in situations where you want to resolve a set of variables on startup, such as in Gulp.

gulp.task('resolve-vars', resolver.task([ 'foo/bar/baz', 'bizz/buzz' ]));

Setting the value for a variable

Setting a value is as simple as retrieving one with get. Set also returns a promise that resolves once the value is succcessfuly set, otherwise it rejects.

resolver.set('bizz/buzz', 'super')
  .then(() => {
    console.log('successfully set value')
  }).catch((err) => {
    console.log('failed to set value: ' + err);

Release History

  • 1.0.0 Initial release.