Documentation ¶
Index ¶
- func CacheCARoots(c *cache.Cache) proxycfg.CARoots
- func CacheCompiledDiscoveryChain(c *cache.Cache) proxycfg.CompiledDiscoveryChain
- func CacheConfigEntry(c *cache.Cache) proxycfg.ConfigEntry
- func CacheConfigEntryList(c *cache.Cache) proxycfg.ConfigEntryList
- func CacheDatacenters(c *cache.Cache) proxycfg.Datacenters
- func CacheExportedPeeredServices(c *cache.Cache) proxycfg.ExportedPeeredServices
- func CacheFederationStateListMeshGateways(c *cache.Cache) proxycfg.FederationStateListMeshGateways
- func CacheGatewayServices(c *cache.Cache) proxycfg.GatewayServices
- func CacheHTTPChecks(c *cache.Cache) proxycfg.HTTPChecks
- func CacheIntentionUpstreams(c *cache.Cache) proxycfg.IntentionUpstreams
- func CacheIntentionUpstreamsDestination(c *cache.Cache) proxycfg.IntentionUpstreams
- func CacheIntentions(c *cache.Cache) proxycfg.Intentions
- func CacheInternalServiceDump(c *cache.Cache) proxycfg.InternalServiceDump
- func CacheLeafCertificate(c *cache.Cache) proxycfg.LeafCertificate
- func CachePeeredUpstreams(c *cache.Cache) proxycfg.PeeredUpstreams
- func CachePrepraredQuery(c *cache.Cache) proxycfg.PreparedQuery
- func CacheResolvedServiceConfig(c *cache.Cache) proxycfg.ResolvedServiceConfig
- func CacheServiceGateways(c *cache.Cache) proxycfg.GatewayServices
- func CacheServiceList(c *cache.Cache) proxycfg.ServiceList
- func CacheTrustBundle(c *cache.Cache) proxycfg.TrustBundle
- func CacheTrustBundleList(c *cache.Cache) proxycfg.TrustBundleList
- func ClientHealth(client *health.Client) proxycfg.Health
- func ServerCompiledDiscoveryChain(deps ServerDataSourceDeps, remoteSource proxycfg.CompiledDiscoveryChain) proxycfg.CompiledDiscoveryChain
- func ServerConfigEntry(deps ServerDataSourceDeps) proxycfg.ConfigEntry
- func ServerConfigEntryList(deps ServerDataSourceDeps) proxycfg.ConfigEntryList
- func ServerExportedPeeredServices(deps ServerDataSourceDeps) proxycfg.ExportedPeeredServices
- func ServerFederationStateListMeshGateways(deps ServerDataSourceDeps) proxycfg.FederationStateListMeshGateways
- func ServerGatewayServices(deps ServerDataSourceDeps) proxycfg.GatewayServices
- func ServerHealth(deps ServerDataSourceDeps, remoteSource proxycfg.Health) proxycfg.Health
- func ServerIntentionUpstreams(deps ServerDataSourceDeps) proxycfg.IntentionUpstreams
- func ServerIntentions(deps ServerDataSourceDeps) proxycfg.Intentions
- func ServerPeeredUpstreams(deps ServerDataSourceDeps) proxycfg.PeeredUpstreams
- func ServerServiceList(deps ServerDataSourceDeps, remoteSource proxycfg.ServiceList) proxycfg.ServiceList
- func ServerTrustBundle(deps ServerDataSourceDeps) proxycfg.TrustBundle
- func ServerTrustBundleList(deps ServerDataSourceDeps) proxycfg.TrustBundleList
- type ServerDataSourceDeps
- type Store
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CacheCARoots ¶
CacheCARoots satisfies the proxycfg.CARoots interface by sourcing data from the agent cache.
func CacheCompiledDiscoveryChain ¶
func CacheCompiledDiscoveryChain(c *cache.Cache) proxycfg.CompiledDiscoveryChain
CacheCompiledDiscoveryChain satisfies the proxycfg.CompiledDiscoveryChain interface by sourcing data from the agent cache.
func CacheConfigEntry ¶
func CacheConfigEntry(c *cache.Cache) proxycfg.ConfigEntry
CacheConfigEntry satisfies the proxycfg.ConfigEntry interface by sourcing data from the agent cache.
func CacheConfigEntryList ¶
func CacheConfigEntryList(c *cache.Cache) proxycfg.ConfigEntryList
CacheConfigEntryList satisfies the proxycfg.ConfigEntryList interface by sourcing data from the agent cache.
func CacheDatacenters ¶
func CacheDatacenters(c *cache.Cache) proxycfg.Datacenters
CacheDatacenters satisfies the proxycfg.Datacenters interface by sourcing data from the agent cache.
func CacheExportedPeeredServices ¶
func CacheExportedPeeredServices(c *cache.Cache) proxycfg.ExportedPeeredServices
CacheExportedPeeredServices satisfies the proxycfg.ExportedPeeredServices interface by sourcing data from the agent cache.
func CacheFederationStateListMeshGateways ¶
func CacheFederationStateListMeshGateways(c *cache.Cache) proxycfg.FederationStateListMeshGateways
CacheFederationStateListMeshGateways satisfies the proxycfg.FederationStateListMeshGateways interface by sourcing data from the agent cache.
func CacheGatewayServices ¶
func CacheGatewayServices(c *cache.Cache) proxycfg.GatewayServices
CacheGatewayServices satisfies the proxycfg.GatewayServices interface by sourcing data from the agent cache.
func CacheHTTPChecks ¶
func CacheHTTPChecks(c *cache.Cache) proxycfg.HTTPChecks
CacheHTTPChecks satisifies the proxycfg.HTTPChecks interface by sourcing data from the agent cache.
func CacheIntentionUpstreams ¶
func CacheIntentionUpstreams(c *cache.Cache) proxycfg.IntentionUpstreams
CacheIntentionUpstreams satisfies the proxycfg.IntentionUpstreams interface by sourcing data from the agent cache.
func CacheIntentionUpstreamsDestination ¶
func CacheIntentionUpstreamsDestination(c *cache.Cache) proxycfg.IntentionUpstreams
CacheIntentionUpstreamsDestination satisfies the proxycfg.IntentionUpstreamsDestination interface by sourcing data from the agent cache.
func CacheIntentions ¶
func CacheIntentions(c *cache.Cache) proxycfg.Intentions
CacheIntentions satisfies the proxycfg.Intentions interface by sourcing data from the agent cache.
func CacheInternalServiceDump ¶
func CacheInternalServiceDump(c *cache.Cache) proxycfg.InternalServiceDump
CacheInternalServiceDump satisfies the proxycfg.InternalServiceDump interface by sourcing data from the agent cache.
func CacheLeafCertificate ¶
func CacheLeafCertificate(c *cache.Cache) proxycfg.LeafCertificate
CacheLeafCertificate satisifies the proxycfg.LeafCertificate interface by sourcing data from the agent cache.
func CachePeeredUpstreams ¶
func CachePeeredUpstreams(c *cache.Cache) proxycfg.PeeredUpstreams
CachePeeredUpstreams satisfies the proxycfg.PeeredUpstreams interface by sourcing data from the agent cache.
func CachePrepraredQuery ¶
func CachePrepraredQuery(c *cache.Cache) proxycfg.PreparedQuery
CachePrepraredQuery satisfies the proxycfg.PreparedQuery interface by sourcing data from the agent cache.
func CacheResolvedServiceConfig ¶
func CacheResolvedServiceConfig(c *cache.Cache) proxycfg.ResolvedServiceConfig
CacheResolvedServiceConfig satisfies the proxycfg.ResolvedServiceConfig interface by sourcing data from the agent cache.
func CacheServiceGateways ¶
func CacheServiceGateways(c *cache.Cache) proxycfg.GatewayServices
CacheServiceGateways satisfies the proxycfg.ServiceGateways interface by sourcing data from the agent cache.
func CacheServiceList ¶
func CacheServiceList(c *cache.Cache) proxycfg.ServiceList
CacheServiceList satisfies the proxycfg.ServiceList interface by sourcing data from the agent cache.
func CacheTrustBundle ¶
func CacheTrustBundle(c *cache.Cache) proxycfg.TrustBundle
CacheTrustBundle satisfies the proxycfg.TrustBundle interface by sourcing data from the agent cache.
func CacheTrustBundleList ¶
func CacheTrustBundleList(c *cache.Cache) proxycfg.TrustBundleList
CacheTrustBundleList satisfies the proxycfg.TrustBundleList interface by sourcing data from the agent cache.
func ClientHealth ¶
ClientHealth satisfies the proxycfg.Health interface by sourcing data from the given health.Client.
func ServerCompiledDiscoveryChain ¶
func ServerCompiledDiscoveryChain(deps ServerDataSourceDeps, remoteSource proxycfg.CompiledDiscoveryChain) proxycfg.CompiledDiscoveryChain
ServerCompiledDiscoveryChain satisfies the proxycfg.CompiledDiscoveryChain interface by sourcing data from a blocking query against the server's state store.
Requests for services in remote datacenters will be delegated to the given remoteSource (i.e. CacheCompiledDiscoveryChain).
func ServerConfigEntry ¶
func ServerConfigEntry(deps ServerDataSourceDeps) proxycfg.ConfigEntry
ServerConfigEntry satisfies the proxycfg.ConfigEntry interface by sourcing data from a local materialized view (backed by an EventPublisher subscription).
func ServerConfigEntryList ¶
func ServerConfigEntryList(deps ServerDataSourceDeps) proxycfg.ConfigEntryList
ServerConfigEntryList satisfies the proxycfg.ConfigEntry interface by sourcing data from a local materialized view (backed by an EventPublisher subscription).
func ServerExportedPeeredServices ¶
func ServerExportedPeeredServices(deps ServerDataSourceDeps) proxycfg.ExportedPeeredServices
ServerExportedPeeredServices satisifies the proxycfg.ExportedPeeredServices interface by sourcing data from a blocking query against the server's state store.
func ServerFederationStateListMeshGateways ¶
func ServerFederationStateListMeshGateways(deps ServerDataSourceDeps) proxycfg.FederationStateListMeshGateways
ServerFederationStateListMeshGateways satisfies the proxycfg.FederationStateListMeshGateways interface by sourcing data from a blocking query against the server's state store.
func ServerGatewayServices ¶
func ServerGatewayServices(deps ServerDataSourceDeps) proxycfg.GatewayServices
ServerGatewayServices satisfies the proxycfg.GatewayServices interface by sourcing data from a blocking query against the server's state store.
func ServerHealth ¶
func ServerHealth(deps ServerDataSourceDeps, remoteSource proxycfg.Health) proxycfg.Health
ServerHealth satisfies the proxycfg.Health interface by sourcing data from a local materialized view (backed by an EventPublisher subscription).
Requests for services in remote datacenters will be delegated to the given remoteSource (i.e. ClientHealth).
func ServerIntentionUpstreams ¶
func ServerIntentionUpstreams(deps ServerDataSourceDeps) proxycfg.IntentionUpstreams
ServerIntentionUpstreams satisfies the proxycfg.IntentionUpstreams interface by sourcing data from a blocking query against the server's state store.
func ServerIntentions ¶
func ServerIntentions(deps ServerDataSourceDeps) proxycfg.Intentions
ServerIntentions satisfies the proxycfg.Intentions interface by sourcing data from local materialized views (backed by EventPublisher subscriptions).
func ServerPeeredUpstreams ¶
func ServerPeeredUpstreams(deps ServerDataSourceDeps) proxycfg.PeeredUpstreams
ServerPeeredUpstreams satisfies the proxycfg.PeeredUpstreams interface by sourcing data from a blocking query against the server's state store.
func ServerServiceList ¶
func ServerServiceList(deps ServerDataSourceDeps, remoteSource proxycfg.ServiceList) proxycfg.ServiceList
func ServerTrustBundle ¶
func ServerTrustBundle(deps ServerDataSourceDeps) proxycfg.TrustBundle
ServerTrustBundle satisfies the proxycfg.TrustBundle interface by sourcing data from a blocking query against the server's state store.
func ServerTrustBundleList ¶
func ServerTrustBundleList(deps ServerDataSourceDeps) proxycfg.TrustBundleList
ServerTrustBundleList satisfies the proxycfg.TrustBundle interface by sourcing data from a blocking query against the server's state store.
Types ¶
type ServerDataSourceDeps ¶
type ServerDataSourceDeps struct { Datacenter string ViewStore *submatview.Store EventPublisher *stream.EventPublisher Logger hclog.Logger ACLResolver submatview.ACLResolver GetStore func() Store }
ServerDataSourceDeps contains the dependencies needed for sourcing data from server-local sources (e.g. materialized views).
type Store ¶
type Store interface { watch.StateStore ExportedServicesForAllPeersByName(ws memdb.WatchSet, entMeta acl.EnterpriseMeta) (uint64, map[string]structs.ServiceList, error) FederationStateList(ws memdb.WatchSet) (uint64, []*structs.FederationState, error) GatewayServices(ws memdb.WatchSet, gateway string, entMeta *acl.EnterpriseMeta) (uint64, structs.GatewayServices, error) IntentionTopology(ws memdb.WatchSet, target structs.ServiceName, downstreams bool, defaultDecision acl.EnforcementDecision, intentionTarget structs.IntentionTargetType) (uint64, structs.ServiceList, error) ServiceDiscoveryChain(ws memdb.WatchSet, serviceName string, entMeta *acl.EnterpriseMeta, req discoverychain.CompileRequest) (uint64, *structs.CompiledDiscoveryChain, *configentry.DiscoveryChainSet, error) PeeringTrustBundleRead(ws memdb.WatchSet, q state.Query) (uint64, *pbpeering.PeeringTrustBundle, error) PeeringTrustBundleList(ws memdb.WatchSet, entMeta acl.EnterpriseMeta) (uint64, []*pbpeering.PeeringTrustBundle, error) TrustBundleListByService(ws memdb.WatchSet, service, dc string, entMeta acl.EnterpriseMeta) (uint64, []*pbpeering.PeeringTrustBundle, error) VirtualIPsForAllImportedServices(ws memdb.WatchSet, entMeta acl.EnterpriseMeta) (uint64, []state.ServiceVirtualIP, error) }
Store is the state store interface required for server-local data sources.