Documentation ¶
Index ¶
- Constants
- Variables
- func SetVaultDefaultLeaseDuration(t time.Duration)
- type ByName
- type ByNode
- type ByNodeThenID
- type ByService
- type CatalogDatacentersQuery
- func (d *CatalogDatacentersQuery) CanShare() bool
- func (d *CatalogDatacentersQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
- func (d *CatalogDatacentersQuery) Stop()
- func (d *CatalogDatacentersQuery) String() string
- func (d *CatalogDatacentersQuery) Type() Type
- type CatalogNode
- type CatalogNodeQuery
- type CatalogNodeService
- type CatalogNodesQuery
- type CatalogService
- type CatalogServiceQuery
- func (d *CatalogServiceQuery) CanShare() bool
- func (d *CatalogServiceQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
- func (d *CatalogServiceQuery) Stop()
- func (d *CatalogServiceQuery) String() string
- func (d *CatalogServiceQuery) Type() Type
- type CatalogServicesQuery
- func (d *CatalogServicesQuery) CanShare() bool
- func (d *CatalogServicesQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
- func (d *CatalogServicesQuery) Stop()
- func (d *CatalogServicesQuery) String() string
- func (d *CatalogServicesQuery) Type() Type
- type CatalogSnippet
- type ClientSet
- type ConnectCAQuery
- type ConnectLeafQuery
- type CreateConsulClientInput
- type CreateVaultClientInput
- type Dependency
- type FileQuery
- type HealthService
- type HealthServiceQuery
- func (d *HealthServiceQuery) CanShare() bool
- func (d *HealthServiceQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
- func (d *HealthServiceQuery) Stop()
- func (d *HealthServiceQuery) String() string
- func (d *HealthServiceQuery) Type() Type
- type KVGetQuery
- func (d *KVGetQuery) CanShare() bool
- func (d *KVGetQuery) EnableBlocking()
- func (d *KVGetQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
- func (d *KVGetQuery) Stop()
- func (d *KVGetQuery) String() string
- func (d *KVGetQuery) Type() Type
- type KVKeysQuery
- type KVListQuery
- type KeyPair
- type Node
- type QueryOptions
- type ResponseMetadata
- type Secret
- type SecretAuth
- type SecretWrapInfo
- type ServiceTags
- type Set
- type Type
- type VaultAgentTokenQuery
- func (d *VaultAgentTokenQuery) CanShare() bool
- func (d *VaultAgentTokenQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
- func (d *VaultAgentTokenQuery) Stop()
- func (d *VaultAgentTokenQuery) String() string
- func (d *VaultAgentTokenQuery) Type() Type
- type VaultListQuery
- type VaultReadQuery
- type VaultTokenQuery
- type VaultWriteQuery
Constants ¶
const ( HealthAny = "any" HealthPassing = "passing" HealthWarning = "warning" HealthCritical = "critical" HealthMaint = "maintenance" NodeMaint = "_node_maintenance" ServiceMaint = "_service_maintenance:" )
const ( // VaultAgentTokenSleepTime is the amount of time to sleep between queries, since // the fsnotify library is not compatible with solaris and other OSes yet. VaultAgentTokenSleepTime = 15 * time.Second )
Variables ¶
var ( // CatalogDatacentersQuerySleepTime is the amount of time to sleep between // queries, since the endpoint does not support blocking queries. CatalogDatacentersQuerySleepTime = 15 * time.Second )
var ( // CatalogNodeQueryRe is the regular expression to use. CatalogNodeQueryRe = regexp.MustCompile(`\A` + nodeNameRe + dcRe + `\z`) )
var ( // CatalogNodesQueryRe is the regular expression to use. CatalogNodesQueryRe = regexp.MustCompile(`\A` + dcRe + nearRe + `\z`) )
var ( // CatalogServiceQueryRe is the regular expression to use. CatalogServiceQueryRe = regexp.MustCompile(`\A` + tagRe + serviceNameRe + dcRe + nearRe + `\z`) )
var ( // CatalogServicesQueryRe is the regular expression to use for CatalogNodesQuery. CatalogServicesQueryRe = regexp.MustCompile(`\A` + dcRe + `\z`) )
var ErrContinue = errors.New("dependency continue")
ErrContinue is a special error which says to continue (retry) on error.
var ErrLeaseExpired = errors.New("lease expired or is not renewable")
var ErrStopped = errors.New("dependency stopped")
ErrStopped is a special error that is returned when a dependency is prematurely stopped, usually due to a configuration reload or a process interrupt.
var ( // FileQuerySleepTime is the amount of time to sleep between queries, since // the fsnotify library is not compatible with solaris and other OSes yet. FileQuerySleepTime = 2 * time.Second )
var ( // HealthServiceQueryRe is the regular expression to use. HealthServiceQueryRe = regexp.MustCompile(`\A` + tagRe + serviceNameRe + dcRe + nearRe + filterRe + `\z`) )
var ( // KVGetQueryRe is the regular expression to use. KVGetQueryRe = regexp.MustCompile(`\A` + keyRe + dcRe + `\z`) )
var ( // KVKeysQueryRe is the regular expression to use. KVKeysQueryRe = regexp.MustCompile(`\A` + prefixRe + dcRe + `\z`) )
var ( // KVListQueryRe is the regular expression to use. KVListQueryRe = regexp.MustCompile(`\A` + prefixRe + dcRe + `\z`) )
var ( // VaultDefaultLeaseDuration is the default lease duration in seconds. VaultDefaultLeaseDuration time.Duration )
Functions ¶
func SetVaultDefaultLeaseDuration ¶
Make sure to only set VaultDefaultLeaseDuration once
Types ¶
type ByNodeThenID ¶
type ByNodeThenID []*HealthService
ByNodeThenID is a sortable slice of Service
func (ByNodeThenID) Len ¶
func (s ByNodeThenID) Len() int
Len, Swap, and Less are used to implement the sort.Sort interface.
func (ByNodeThenID) Less ¶
func (s ByNodeThenID) Less(i, j int) bool
func (ByNodeThenID) Swap ¶
func (s ByNodeThenID) Swap(i, j int)
type ByService ¶
type ByService []*CatalogNodeService
ByService is a sorter of node services by their service name and then ID.
type CatalogDatacentersQuery ¶
type CatalogDatacentersQuery struct {
// contains filtered or unexported fields
}
CatalogDatacentersQuery is the dependency to query all datacenters
func NewCatalogDatacentersQuery ¶
func NewCatalogDatacentersQuery(ignoreFailing bool) (*CatalogDatacentersQuery, error)
NewCatalogDatacentersQuery creates a new datacenter dependency.
func (*CatalogDatacentersQuery) CanShare ¶
func (d *CatalogDatacentersQuery) CanShare() bool
CanShare returns if this dependency is shareable.
func (*CatalogDatacentersQuery) Fetch ¶
func (d *CatalogDatacentersQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client and returns a slice of strings representing the datacenters
func (*CatalogDatacentersQuery) Stop ¶
func (d *CatalogDatacentersQuery) Stop()
Stop terminates this dependency's fetch.
func (*CatalogDatacentersQuery) String ¶
func (d *CatalogDatacentersQuery) String() string
String returns the human-friendly version of this dependency.
func (*CatalogDatacentersQuery) Type ¶
func (d *CatalogDatacentersQuery) Type() Type
Type returns the type of this dependency.
type CatalogNode ¶
type CatalogNode struct { Node *Node Services []*CatalogNodeService }
CatalogNode is a wrapper around the node and its services.
type CatalogNodeQuery ¶
type CatalogNodeQuery struct {
// contains filtered or unexported fields
}
CatalogNodeQuery represents a single node from the Consul catalog.
func NewCatalogNodeQuery ¶
func NewCatalogNodeQuery(s string) (*CatalogNodeQuery, error)
NewCatalogNodeQuery parses the given string into a dependency. If the name is empty then the name of the local agent is used.
func (*CatalogNodeQuery) CanShare ¶
func (d *CatalogNodeQuery) CanShare() bool
CanShare returns a boolean if this dependency is shareable.
func (*CatalogNodeQuery) Fetch ¶
func (d *CatalogNodeQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client and returns a of CatalogNode object.
func (*CatalogNodeQuery) Stop ¶
func (d *CatalogNodeQuery) Stop()
Stop halts the dependency's fetch function.
func (*CatalogNodeQuery) String ¶
func (d *CatalogNodeQuery) String() string
String returns the human-friendly version of this dependency.
func (*CatalogNodeQuery) Type ¶
func (d *CatalogNodeQuery) Type() Type
Type returns the type of this dependency.
type CatalogNodeService ¶
type CatalogNodeService struct { ID string Service string Tags ServiceTags Meta map[string]string Port int Address string EnableTagOverride bool }
CatalogNodeService is a service on a single node.
type CatalogNodesQuery ¶
type CatalogNodesQuery struct {
// contains filtered or unexported fields
}
CatalogNodesQuery is the representation of all registered nodes in Consul.
func NewCatalogNodesQuery ¶
func NewCatalogNodesQuery(s string) (*CatalogNodesQuery, error)
NewCatalogNodesQuery parses the given string into a dependency. If the name is empty then the name of the local agent is used.
func (*CatalogNodesQuery) CanShare ¶
func (d *CatalogNodesQuery) CanShare() bool
CanShare returns a boolean if this dependency is shareable.
func (*CatalogNodesQuery) Fetch ¶
func (d *CatalogNodesQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client and returns a slice of Node objects
func (*CatalogNodesQuery) Stop ¶
func (d *CatalogNodesQuery) Stop()
Stop halts the dependency's fetch function.
func (*CatalogNodesQuery) String ¶
func (d *CatalogNodesQuery) String() string
String returns the human-friendly version of this dependency.
func (*CatalogNodesQuery) Type ¶
func (d *CatalogNodesQuery) Type() Type
Type returns the type of this dependency.
type CatalogService ¶
type CatalogService struct { ID string Node string Address string Datacenter string TaggedAddresses map[string]string NodeMeta map[string]string ServiceID string ServiceName string ServiceAddress string ServiceTags ServiceTags ServiceMeta map[string]string ServicePort int }
CatalogService is a catalog entry in Consul.
type CatalogServiceQuery ¶
type CatalogServiceQuery struct {
// contains filtered or unexported fields
}
CatalogServiceQuery is the representation of a requested catalog services dependency from inside a template.
func NewCatalogServiceQuery ¶
func NewCatalogServiceQuery(s string) (*CatalogServiceQuery, error)
NewCatalogServiceQuery parses a string into a CatalogServiceQuery.
func (*CatalogServiceQuery) CanShare ¶
func (d *CatalogServiceQuery) CanShare() bool
CanShare returns a boolean if this dependency is shareable.
func (*CatalogServiceQuery) Fetch ¶
func (d *CatalogServiceQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client and returns a slice of CatalogService objects.
func (*CatalogServiceQuery) Stop ¶
func (d *CatalogServiceQuery) Stop()
Stop halts the dependency's fetch function.
func (*CatalogServiceQuery) String ¶
func (d *CatalogServiceQuery) String() string
String returns the human-friendly version of this dependency.
func (*CatalogServiceQuery) Type ¶
func (d *CatalogServiceQuery) Type() Type
Type returns the type of this dependency.
type CatalogServicesQuery ¶
type CatalogServicesQuery struct {
// contains filtered or unexported fields
}
CatalogServicesQuery is the representation of a requested catalog service dependency from inside a template.
func NewCatalogServicesQuery ¶
func NewCatalogServicesQuery(s string) (*CatalogServicesQuery, error)
NewCatalogServicesQuery parses a string of the format @dc.
func (*CatalogServicesQuery) CanShare ¶
func (d *CatalogServicesQuery) CanShare() bool
CanShare returns a boolean if this dependency is shareable.
func (*CatalogServicesQuery) Fetch ¶
func (d *CatalogServicesQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client and returns a slice of CatalogService objects.
func (*CatalogServicesQuery) Stop ¶
func (d *CatalogServicesQuery) Stop()
Stop halts the dependency's fetch function.
func (*CatalogServicesQuery) String ¶
func (d *CatalogServicesQuery) String() string
String returns the human-friendly version of this dependency.
func (*CatalogServicesQuery) Type ¶
func (d *CatalogServicesQuery) Type() Type
Type returns the type of this dependency.
type CatalogSnippet ¶
type CatalogSnippet struct { Name string Tags ServiceTags }
CatalogSnippet is a catalog entry in Consul.
type ClientSet ¶
ClientSet is a collection of clients that dependencies use to communicate with remote services like Consul or Vault.
func NewClientSet ¶
func NewClientSet() *ClientSet
NewClientSet creates a new client set that is ready to accept clients.
func (*ClientSet) CreateConsulClient ¶
func (c *ClientSet) CreateConsulClient(i *CreateConsulClientInput) error
CreateConsulClient creates a new Consul API client from the given input.
func (*ClientSet) CreateVaultClient ¶
func (c *ClientSet) CreateVaultClient(i *CreateVaultClientInput) error
type ConnectCAQuery ¶
type ConnectCAQuery struct {
// contains filtered or unexported fields
}
func NewConnectCAQuery ¶
func NewConnectCAQuery() *ConnectCAQuery
func (*ConnectCAQuery) CanShare ¶
func (d *ConnectCAQuery) CanShare() bool
func (*ConnectCAQuery) Fetch ¶
func (d *ConnectCAQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) ( interface{}, *ResponseMetadata, error, )
func (*ConnectCAQuery) Stop ¶
func (d *ConnectCAQuery) Stop()
func (*ConnectCAQuery) String ¶
func (d *ConnectCAQuery) String() string
func (*ConnectCAQuery) Type ¶
func (d *ConnectCAQuery) Type() Type
type ConnectLeafQuery ¶
type ConnectLeafQuery struct {
// contains filtered or unexported fields
}
func NewConnectLeafQuery ¶
func NewConnectLeafQuery(service string) *ConnectLeafQuery
func (*ConnectLeafQuery) CanShare ¶
func (d *ConnectLeafQuery) CanShare() bool
func (*ConnectLeafQuery) Fetch ¶
func (d *ConnectLeafQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) ( interface{}, *ResponseMetadata, error, )
func (*ConnectLeafQuery) Stop ¶
func (d *ConnectLeafQuery) Stop()
func (*ConnectLeafQuery) String ¶
func (d *ConnectLeafQuery) String() string
func (*ConnectLeafQuery) Type ¶
func (d *ConnectLeafQuery) Type() Type
type CreateConsulClientInput ¶
type CreateConsulClientInput struct { Address string Namespace string Token string AuthEnabled bool AuthUsername string AuthPassword string SSLEnabled bool SSLVerify bool SSLCert string SSLKey string SSLCACert string SSLCAPath string ServerName string TransportDialKeepAlive time.Duration TransportDialTimeout time.Duration TransportDisableKeepAlives bool TransportIdleConnTimeout time.Duration TransportMaxIdleConns int TransportMaxIdleConnsPerHost int TransportTLSHandshakeTimeout time.Duration }
CreateConsulClientInput is used as input to the CreateConsulClient function.
type CreateVaultClientInput ¶
type CreateVaultClientInput struct { Address string Namespace string Token string UnwrapToken bool SSLEnabled bool SSLVerify bool SSLCert string SSLKey string SSLCACert string SSLCAPath string ServerName string TransportDialKeepAlive time.Duration TransportDialTimeout time.Duration TransportDisableKeepAlives bool TransportIdleConnTimeout time.Duration TransportMaxIdleConns int TransportMaxIdleConnsPerHost int TransportTLSHandshakeTimeout time.Duration }
CreateVaultClientInput is used as input to the CreateVaultClient function.
type Dependency ¶
type Dependency interface { Fetch(*ClientSet, *QueryOptions, hclog.Logger) (interface{}, *ResponseMetadata, error) String() string Stop() Type() Type }
Dependency is an interface for a dependency that Consul Template is capable of watching.
type FileQuery ¶
type FileQuery struct {
// contains filtered or unexported fields
}
FileQuery represents a local file dependency.
func NewFileQuery ¶
NewFileQuery creates a file dependency from the given path.
func (*FileQuery) Fetch ¶
func (d *FileQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch retrieves this dependency and returns the result or any errors that occur in the process.
type HealthService ¶
type HealthService struct { Node string NodeID string NodeAddress string NodeTaggedAddresses map[string]string NodeMeta map[string]string ServiceMeta map[string]string Address string ServiceTaggedAddresses map[string]api.ServiceAddress ID string Name string Tags ServiceTags Checks api.HealthChecks Status string Port int Weights api.AgentWeights }
HealthService is a service entry in Consul.
type HealthServiceQuery ¶
type HealthServiceQuery struct {
// contains filtered or unexported fields
}
HealthServiceQuery is the representation of all a service query in Consul.
func NewHealthConnectQuery ¶
func NewHealthConnectQuery(s string) (*HealthServiceQuery, error)
NewHealthConnect Query processes the strings to build a connect dependency.
func NewHealthServiceQuery ¶
func NewHealthServiceQuery(s string) (*HealthServiceQuery, error)
NewHealthServiceQuery processes the strings to build a service dependency.
func (*HealthServiceQuery) CanShare ¶
func (d *HealthServiceQuery) CanShare() bool
CanShare returns a boolean if this dependency is shareable.
func (*HealthServiceQuery) Fetch ¶
func (d *HealthServiceQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client and returns a slice of HealthService objects.
func (*HealthServiceQuery) Stop ¶
func (d *HealthServiceQuery) Stop()
Stop halts the dependency's fetch function.
func (*HealthServiceQuery) String ¶
func (d *HealthServiceQuery) String() string
String returns the human-friendly version of this dependency.
func (*HealthServiceQuery) Type ¶
func (d *HealthServiceQuery) Type() Type
Type returns the type of this dependency.
type KVGetQuery ¶
type KVGetQuery struct {
// contains filtered or unexported fields
}
KVGetQuery queries the KV store for a single key.
func NewKVGetQuery ¶
func NewKVGetQuery(s string) (*KVGetQuery, error)
NewKVGetQuery parses a string into a dependency.
func (*KVGetQuery) CanShare ¶
func (d *KVGetQuery) CanShare() bool
CanShare returns a boolean if this dependency is shareable.
func (*KVGetQuery) EnableBlocking ¶
func (d *KVGetQuery) EnableBlocking()
EnableBlocking turns this into a blocking KV query.
func (*KVGetQuery) Fetch ¶
func (d *KVGetQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client.
func (*KVGetQuery) String ¶
func (d *KVGetQuery) String() string
String returns the human-friendly version of this dependency.
func (*KVGetQuery) Type ¶
func (d *KVGetQuery) Type() Type
Type returns the type of this dependency.
type KVKeysQuery ¶
type KVKeysQuery struct {
// contains filtered or unexported fields
}
KVKeysQuery queries the KV store for a single key.
func NewKVKeysQuery ¶
func NewKVKeysQuery(s string) (*KVKeysQuery, error)
NewKVKeysQuery parses a string into a dependency.
func (*KVKeysQuery) CanShare ¶
func (d *KVKeysQuery) CanShare() bool
CanShare returns a boolean if this dependency is shareable.
func (*KVKeysQuery) Fetch ¶
func (d *KVKeysQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client.
func (*KVKeysQuery) String ¶
func (d *KVKeysQuery) String() string
String returns the human-friendly version of this dependency.
func (*KVKeysQuery) Type ¶
func (d *KVKeysQuery) Type() Type
Type returns the type of this dependency.
type KVListQuery ¶
type KVListQuery struct {
// contains filtered or unexported fields
}
KVListQuery queries the KV store for a single key.
func NewKVListQuery ¶
func NewKVListQuery(s string) (*KVListQuery, error)
NewKVListQuery parses a string into a dependency.
func (*KVListQuery) CanShare ¶
func (d *KVListQuery) CanShare() bool
CanShare returns a boolean if this dependency is shareable.
func (*KVListQuery) Fetch ¶
func (d *KVListQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Consul API defined by the given client.
func (*KVListQuery) String ¶
func (d *KVListQuery) String() string
String returns the human-friendly version of this dependency.
func (*KVListQuery) Type ¶
func (d *KVListQuery) Type() Type
Type returns the type of this dependency.
type KeyPair ¶
type KeyPair struct { Path string Key string Value string // Lesser-used, but still valuable keys from api.KV CreateIndex uint64 ModifyIndex uint64 LockIndex uint64 Flags uint64 Session string }
KeyPair is a simple Key-Value pair
type Node ¶
type Node struct { ID string Node string Address string Datacenter string TaggedAddresses map[string]string Meta map[string]string }
Node is a node entry in Consul
type QueryOptions ¶
type QueryOptions struct { AllowStale bool Datacenter string Near string RequireConsistent bool VaultGrace time.Duration WaitIndex uint64 WaitTime time.Duration }
QueryOptions is a list of options to send with the query. These options are client-agnostic, and the dependency determines which, if any, of the options to use.
func (*QueryOptions) Merge ¶
func (q *QueryOptions) Merge(o *QueryOptions) *QueryOptions
func (*QueryOptions) String ¶
func (q *QueryOptions) String() string
func (*QueryOptions) ToConsulOpts ¶
func (q *QueryOptions) ToConsulOpts() *consulapi.QueryOptions
type ResponseMetadata ¶
ResponseMetadata is a struct that contains metadata about the response. This is returned from a Fetch function call.
type Secret ¶
type Secret struct { // The request ID that generated this response RequestID string LeaseID string LeaseDuration int Renewable bool // Data is the actual contents of the secret. The format of the data // is arbitrary and up to the secret backend. Data map[string]interface{} // Warnings contains any warnings related to the operation. These // are not issues that caused the command to fail, but that the // client should be aware of. Warnings []string // Auth, if non-nil, means that there was authentication information // attached to this response. Auth *SecretAuth // WrapInfo, if non-nil, means that the initial response was wrapped in the // cubbyhole of the given token (which has a TTL of the given number of // seconds) WrapInfo *SecretWrapInfo }
Secret is the structure returned for every secret within Vault.
type SecretAuth ¶
type SecretAuth struct { ClientToken string Accessor string Policies []string Metadata map[string]string LeaseDuration int Renewable bool }
SecretAuth is the structure containing auth information if we have it.
type SecretWrapInfo ¶
SecretWrapInfo contains wrapping information if we have it. If what is contained is an authentication token, the accessor for the token will be available in WrappedAccessor.
type Set ¶
Set is a dependency-specific set implementation. Relative ordering is preserved.
func (*Set) Add ¶
func (s *Set) Add(d Dependency) bool
Add adds a new element to the set if it does not already exist.
func (*Set) Get ¶
func (s *Set) Get(v string) Dependency
Get retrieves a single element from the set by name.
func (*Set) List ¶
func (s *Set) List() []Dependency
List returns the insertion-ordered list of dependencies.
type VaultAgentTokenQuery ¶
type VaultAgentTokenQuery struct {
// contains filtered or unexported fields
}
VaultAgentTokenQuery is the dependency to Vault Agent token
func NewVaultAgentTokenQuery ¶
func NewVaultAgentTokenQuery(path string) (*VaultAgentTokenQuery, error)
NewVaultAgentTokenQuery creates a new dependency.
func (*VaultAgentTokenQuery) CanShare ¶
func (d *VaultAgentTokenQuery) CanShare() bool
CanShare returns if this dependency is sharable.
func (*VaultAgentTokenQuery) Fetch ¶
func (d *VaultAgentTokenQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch retrieves this dependency and returns the result or any errors that occur in the process.
func (*VaultAgentTokenQuery) Stop ¶
func (d *VaultAgentTokenQuery) Stop()
Stop halts the dependency's fetch function.
func (*VaultAgentTokenQuery) String ¶
func (d *VaultAgentTokenQuery) String() string
String returns the human-friendly version of this dependency.
func (*VaultAgentTokenQuery) Type ¶
func (d *VaultAgentTokenQuery) Type() Type
Type returns the type of this dependency.
type VaultListQuery ¶
type VaultListQuery struct {
// contains filtered or unexported fields
}
VaultListQuery is the dependency to Vault for a secret
func NewVaultListQuery ¶
func NewVaultListQuery(s string) (*VaultListQuery, error)
NewVaultListQuery creates a new datacenter dependency.
func (*VaultListQuery) CanShare ¶
func (d *VaultListQuery) CanShare() bool
CanShare returns if this dependency is shareable.
func (*VaultListQuery) Fetch ¶
func (d *VaultListQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger) (interface{}, *ResponseMetadata, error)
Fetch queries the Vault API
func (*VaultListQuery) Stop ¶
func (d *VaultListQuery) Stop()
Stop halts the given dependency's fetch.
func (*VaultListQuery) String ¶
func (d *VaultListQuery) String() string
String returns the human-friendly version of this dependency.
func (*VaultListQuery) Type ¶
func (d *VaultListQuery) Type() Type
Type returns the type of this dependency.
type VaultReadQuery ¶
type VaultReadQuery struct {
// contains filtered or unexported fields
}
VaultReadQuery is the dependency to Vault for a secret
func NewVaultReadQuery ¶
func NewVaultReadQuery(s string) (*VaultReadQuery, error)
NewVaultReadQuery creates a new datacenter dependency.
func (*VaultReadQuery) CanShare ¶
func (d *VaultReadQuery) CanShare() bool
CanShare returns if this dependency is shareable.
func (*VaultReadQuery) Fetch ¶
func (d *VaultReadQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger, ) (interface{}, *ResponseMetadata, error)
Fetch queries the Vault API
func (*VaultReadQuery) Stop ¶
func (d *VaultReadQuery) Stop()
Stop halts the given dependency's fetch.
func (*VaultReadQuery) String ¶
func (d *VaultReadQuery) String() string
String returns the human-friendly version of this dependency.
func (*VaultReadQuery) Type ¶
func (d *VaultReadQuery) Type() Type
Type returns the type of this dependency.
type VaultTokenQuery ¶
type VaultTokenQuery struct {
// contains filtered or unexported fields
}
VaultTokenQuery is the dependency to Vault for a secret
func NewVaultTokenQuery ¶
func NewVaultTokenQuery(token string) (*VaultTokenQuery, error)
NewVaultTokenQuery creates a new dependency.
func (*VaultTokenQuery) CanShare ¶
func (d *VaultTokenQuery) CanShare() bool
CanShare returns if this dependency is shareable.
func (*VaultTokenQuery) Fetch ¶
func (d *VaultTokenQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger, ) (interface{}, *ResponseMetadata, error)
Fetch queries the Vault API
func (*VaultTokenQuery) Stop ¶
func (d *VaultTokenQuery) Stop()
Stop halts the dependency's fetch function.
func (*VaultTokenQuery) String ¶
func (d *VaultTokenQuery) String() string
String returns the human-friendly version of this dependency.
func (*VaultTokenQuery) Type ¶
func (d *VaultTokenQuery) Type() Type
Type returns the type of this dependency.
type VaultWriteQuery ¶
type VaultWriteQuery struct {
// contains filtered or unexported fields
}
VaultWriteQuery is the dependency to Vault for a secret
func NewVaultWriteQuery ¶
func NewVaultWriteQuery(s string, d map[string]interface{}) (*VaultWriteQuery, error)
NewVaultWriteQuery creates a new datacenter dependency.
func (*VaultWriteQuery) CanShare ¶
func (d *VaultWriteQuery) CanShare() bool
CanShare returns if this dependency is shareable.
func (*VaultWriteQuery) Fetch ¶
func (d *VaultWriteQuery) Fetch(clients *ClientSet, opts *QueryOptions, logger hclog.Logger, ) (interface{}, *ResponseMetadata, error)
Fetch queries the Vault API
func (*VaultWriteQuery) Stop ¶
func (d *VaultWriteQuery) Stop()
Stop halts the given dependency's fetch.
func (*VaultWriteQuery) String ¶
func (d *VaultWriteQuery) String() string
String returns the human-friendly version of this dependency.
func (*VaultWriteQuery) Type ¶
func (d *VaultWriteQuery) Type() Type
Type returns the type of this dependency.
Source Files ¶
- catalog_datacenters.go
- catalog_node.go
- catalog_nodes.go
- catalog_service.go
- catalog_services.go
- client_set.go
- connect_ca.go
- connect_leaf.go
- dependency.go
- errors.go
- file.go
- health_service.go
- kv_get.go
- kv_keys.go
- kv_list.go
- set.go
- vault_agent_token.go
- vault_common.go
- vault_list.go
- vault_read.go
- vault_token.go
- vault_write.go