5.1.3 • Published 3 months ago

@microfleet/plugin-consul v5.1.3

Weekly downloads
59
License
MIT
Repository
github
Last release
3 months ago

Microfleet Consul Plugin

Adds consul support to microfleet. This can be used to perform service discovery, leader election and other related tasks Read more about Consul at https://www.consul.io

Install

yarn add @microfleet/plugin-consul

Configuration

To make use of the plugin adjust microfleet configuration in the following way:

exports.plugins = [
  ...,
  'consul',
  ...
]

/* this section is optional */
exports.consul = {
  base: {
    host?: string; // consul-agent host instance
    port?: string; // consul-agent port
    secure?: boolean; // https?
    ca?: string[]; // custom CA
    defaults?: { // used for all queries to consul
      consistent?: boolean;
      dc?: string;
      stale?: boolean;
      token?: string;
      wait?: string;
      wan?: boolean;
      timeout?: number;
    }
  },
  lock: {
    key?: string; // defaults `microfleet/${config.name}/leader`,
    session?: Object | string; // session settings
    value?: string | Buffer; // arbitrary data
    lockwaittime?: string;
    lockretrytime?: string;
  }
}

Interface

Microfleet Consul Plugin extends service interface with the following methods:

service.consul: consul.Consul

Initialized instance. Look at the docs here - https://www.npmjs.com/package/consul#documentation

service.consulLeader: consul.Lock

Initialized leader election lock. Detailed docs here - https://www.npmjs.com/package/consul#lock

service.whenLeader(): Promise

Use this to wait until current instance becomes a leader.

// will lock until instance is a leader
// or until service.close() is called
const isLeader = await service.whenLeader()
if (isLeader === true) {
  ... // means we've acquired leader
} else {
  ... // this means that instance is closing down
}
5.1.3

3 months ago

5.1.2

3 months ago

5.1.1

3 months ago

5.1.0

3 months ago

5.0.5

4 months ago

5.0.4

4 months ago

5.0.3

4 months ago

5.0.2

4 months ago

5.0.1

4 months ago

5.0.0

4 months ago

4.3.0

4 months ago

4.2.14

4 months ago

4.2.13

5 months ago

4.2.9

7 months ago

4.2.10

6 months ago

4.2.11

6 months ago

4.2.12

5 months ago

4.2.2

12 months ago

4.2.5

12 months ago

4.2.4

12 months ago

4.2.7

11 months ago

4.2.6

12 months ago

4.2.8

11 months ago

4.0.0

1 year ago

4.2.0

1 year ago

2.29.0

2 years ago

2.27.0

2 years ago

2.25.0

2 years ago

2.25.2

2 years ago

2.23.2

2 years ago

2.19.0

2 years ago

2.21.0

2 years ago

2.23.0

2 years ago

2.17.0

2 years ago

2.15.2

2 years ago

2.15.0

2 years ago

2.11.4

2 years ago

2.13.0

2 years ago

2.11.2

2 years ago

2.11.0

2 years ago

2.9.2

2 years ago

2.9.0

2 years ago

2.7.4

2 years ago

2.7.6

2 years ago

2.7.8

2 years ago

2.5.0

2 years ago

2.7.0

2 years ago

2.7.2

2 years ago

2.7.10

2 years ago

2.7.14

2 years ago

2.7.12

2 years ago

2.4.1

2 years ago

2.4.0

2 years ago

2.4.3

2 years ago

2.4.2

2 years ago

2.3.0

3 years ago

2.2.13-next.57

3 years ago

2.2.13-next.56

3 years ago

2.2.13-next.51

3 years ago

2.2.14

3 years ago

2.2.13-next.49

3 years ago

2.2.13-next.46

3 years ago

2.2.13-next.39

3 years ago

2.2.13-next.35

3 years ago

2.2.13-next.31

3 years ago

2.2.13

3 years ago

2.2.12

4 years ago

2.2.11

4 years ago

2.2.10

4 years ago

2.2.9

4 years ago

2.2.8

4 years ago

2.2.7

4 years ago

2.2.6

4 years ago

2.2.5

4 years ago

2.2.4

4 years ago

2.2.3

4 years ago

2.2.2

4 years ago

2.2.1

4 years ago

2.2.0

4 years ago

2.1.1

4 years ago

2.1.0

4 years ago

2.0.0

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.4.1

4 years ago

0.4.0

4 years ago

0.3.6

4 years ago

0.3.5

4 years ago

0.3.2

4 years ago

0.3.3

4 years ago

0.3.1

4 years ago

0.3.0

4 years ago

0.2.2

5 years ago

0.2.1

5 years ago

0.2.0

5 years ago

0.1.3

5 years ago

0.1.2

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago