Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DurationMinusBuffer

func DurationMinusBuffer(intv time.Duration, buffer time.Duration, jitter int64) time.Duration

    DurationMinusBuffer returns a duration, minus a buffer and jitter subtracted from the duration. This function is used primarily for servicing Consul TTL Checks in advance of the TTL.

    func DurationMinusBufferDomain

    func DurationMinusBufferDomain(intv time.Duration, buffer time.Duration, jitter int64) (min time.Duration, max time.Duration)

      DurationMinusBufferDomain returns the domain of valid durations from a call to DurationMinusBuffer. This function is used to check user specified input values to DurationMinusBuffer.

      func NewConsulBackend

      func NewConsulBackend(conf map[string]string, logger log.Logger) (physical.Backend, error)

        NewConsulBackend constructs a Consul backend using the given API client and the prefix in the KV store.

        func RandomStagger

        func RandomStagger(intv time.Duration) time.Duration

          RandomStagger returns an interval between 0 and the duration

          Types

          type ConsulBackend

          type ConsulBackend struct {
          	// contains filtered or unexported fields
          }

            ConsulBackend is a physical backend that stores data at specific prefix within Consul. It is used for most production situations as it allows Vault to run on multiple machines in a highly-available manner.

            func (*ConsulBackend) Delete

            func (c *ConsulBackend) Delete(ctx context.Context, key string) error

              Delete is used to permanently delete an entry

              func (*ConsulBackend) DetectHostAddr

              func (c *ConsulBackend) DetectHostAddr() (string, error)

                DetectHostAddr is used to detect the host address by asking the Consul agent

                func (*ConsulBackend) Get

                func (c *ConsulBackend) Get(ctx context.Context, key string) (*physical.Entry, error)

                  Get is used to fetch an entry

                  func (*ConsulBackend) HAEnabled

                  func (c *ConsulBackend) HAEnabled() bool

                    HAEnabled indicates whether the HA functionality should be exposed. Currently always returns true.

                    func (*ConsulBackend) List

                    func (c *ConsulBackend) List(ctx context.Context, prefix string) ([]string, error)

                      List is used to list all the keys under a given prefix, up to the next prefix.

                      func (*ConsulBackend) LockWith

                      func (c *ConsulBackend) LockWith(key, value string) (physical.Lock, error)

                        Lock is used for mutual exclusion based on the given key.

                        func (*ConsulBackend) Put

                        func (c *ConsulBackend) Put(ctx context.Context, entry *physical.Entry) error

                          Put is used to insert or update an entry

                          func (*ConsulBackend) Transaction

                          func (c *ConsulBackend) Transaction(ctx context.Context, txns []*physical.TxnEntry) error

                            Used to run multiple entries via a transaction

                            type ConsulLock

                            type ConsulLock struct {
                            	// contains filtered or unexported fields
                            }

                              ConsulLock is used to provide the Lock interface backed by Consul

                              func (*ConsulLock) Lock

                              func (c *ConsulLock) Lock(stopCh <-chan struct{}) (<-chan struct{}, error)

                              func (*ConsulLock) Unlock

                              func (c *ConsulLock) Unlock() error

                              func (*ConsulLock) Value

                              func (c *ConsulLock) Value() (bool, string, error)