vault: github.com/hashicorp/vault/physical/consul Index | Files

package consul

import "github.com/hashicorp/vault/physical/consul"

Index

Package Files

consul.go helpers.go

Constants

const (

    // DefaultServiceName is the default Consul service name used when
    // advertising a Vault instance.
    DefaultServiceName = "vault"
)

func DurationMinusBuffer Uses

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 Uses

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 Uses

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 Uses

func RandomStagger(intv time.Duration) time.Duration

RandomStagger returns an interval between 0 and the duration

type ConsulBackend Uses

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 Uses

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

Delete is used to permanently delete an entry

func (*ConsulBackend) DetectHostAddr Uses

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

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

func (*ConsulBackend) Get Uses

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

Get is used to fetch an entry

func (*ConsulBackend) HAEnabled Uses

func (c *ConsulBackend) HAEnabled() bool

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

func (*ConsulBackend) List Uses

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 Uses

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

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

func (*ConsulBackend) NotifyActiveStateChange Uses

func (c *ConsulBackend) NotifyActiveStateChange() error

func (*ConsulBackend) NotifyPerformanceStandbyStateChange Uses

func (c *ConsulBackend) NotifyPerformanceStandbyStateChange() error

func (*ConsulBackend) NotifySealedStateChange Uses

func (c *ConsulBackend) NotifySealedStateChange() error

func (*ConsulBackend) Put Uses

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

Put is used to insert or update an entry

func (*ConsulBackend) RunServiceDiscovery Uses

func (c *ConsulBackend) RunServiceDiscovery(waitGroup *sync.WaitGroup, shutdownCh physical.ShutdownChannel, redirectAddr string, activeFunc physical.ActiveFunction, sealedFunc physical.SealedFunction, perfStandbyFunc physical.PerformanceStandbyFunction) (err error)

func (*ConsulBackend) Transaction Uses

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

Used to run multiple entries via a transaction

type ConsulLock Uses

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

ConsulLock is used to provide the Lock interface backed by Consul

func (*ConsulLock) Lock Uses

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

func (*ConsulLock) Unlock Uses

func (c *ConsulLock) Unlock() error

func (*ConsulLock) Value Uses

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

Package consul imports 27 packages (graph) and is imported by 7 packages. Updated 2019-06-11. Refresh now. Tools for package owners.