Documentation
¶
Index ¶
Constants ¶
View Source
const ( PodVirtualNodeEnvName = "APPMESH_VIRTUAL_NODE_NAME" PodPortsEnvName = "APPMESH_APP_PORTS" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AwsAppMeshConfiguration ¶
type AwsAppMeshConfiguration interface {
// Configure resources to allow traffic from/to all services in the mesh
AllowAll() error
// Handle appmesh routing rule
ProcessRoutingRules(rules v1.RoutingRuleList) error
// Return the set of App Mesh resources
ResourceSnapshot() *ResourceSnapshot
// Return all injected Upstreams
InjectedUpstreams() gloov1.UpstreamList
}
func NewAwsAppMeshConfiguration ¶
func NewAwsAppMeshConfiguration(meshName string, pods kubernetes.PodList, upstreams gloov1.UpstreamList) (AwsAppMeshConfiguration, error)
type AwsAppMeshConfigurationImpl ¶ added in v0.3.14
type AwsAppMeshConfigurationImpl struct {
// We build these objects once in the constructor. They are meant to help in all the translation operations where we
// probably will need to look up pods by upstreams and vice-versa multiple times.
PodList kubernetes.PodList
UpstreamList gloov1.UpstreamList
// These are the actual results of the translations
MeshName string
VirtualNodes virtualNodeByHost
VirtualServices virtualServiceByHost
VirtualRouters []*appmeshApi.VirtualRouterData
Routes []*appmeshApi.RouteData
// contains filtered or unexported fields
}
Represents the output of the App Mesh translator
func (*AwsAppMeshConfigurationImpl) AllowAll ¶ added in v0.3.14
func (c *AwsAppMeshConfigurationImpl) AllowAll() error
func (*AwsAppMeshConfigurationImpl) InjectedUpstreams ¶ added in v0.3.23
func (c *AwsAppMeshConfigurationImpl) InjectedUpstreams() gloov1.UpstreamList
func (*AwsAppMeshConfigurationImpl) ProcessRoutingRules ¶ added in v0.3.14
func (c *AwsAppMeshConfigurationImpl) ProcessRoutingRules(rules v1.RoutingRuleList) error
func (*AwsAppMeshConfigurationImpl) ResourceSnapshot ¶ added in v0.3.14
func (c *AwsAppMeshConfigurationImpl) ResourceSnapshot() *ResourceSnapshot
type ResourceSnapshot ¶ added in v0.3.14
type ResourceSnapshot struct {
MeshName string
VirtualNodes map[string]*appmeshApi.VirtualNodeData
VirtualServices map[string]*appmeshApi.VirtualServiceData
VirtualRouters map[string]*appmeshApi.VirtualRouterData
Routes map[string]*appmeshApi.RouteData
}
Snapshot of App Mesh resources. The maps associate a resource name with its data.
type Translator ¶
type Translator interface {
Translate(ctx context.Context, snapshot *v1.ConfigSnapshot) (map[*v1.Mesh]*ResourceSnapshot, reporter.ResourceErrors, error)
}
func NewAppMeshTranslator ¶
func NewAppMeshTranslator() Translator
Click to show internal directories.
Click to hide internal directories.