Documentation ¶
Index ¶
- func CfnGatewayRoute_CFN_RESOURCE_TYPE_NAME() *string
- func CfnGatewayRoute_IsCfnElement(x interface{}) *bool
- func CfnGatewayRoute_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnGatewayRoute_IsConstruct(x interface{}) *bool
- func CfnMesh_CFN_RESOURCE_TYPE_NAME() *string
- func CfnMesh_IsCfnElement(x interface{}) *bool
- func CfnMesh_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnMesh_IsConstruct(x interface{}) *bool
- func CfnRoute_CFN_RESOURCE_TYPE_NAME() *string
- func CfnRoute_IsCfnElement(x interface{}) *bool
- func CfnRoute_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnRoute_IsConstruct(x interface{}) *bool
- func CfnVirtualGateway_CFN_RESOURCE_TYPE_NAME() *string
- func CfnVirtualGateway_IsCfnElement(x interface{}) *bool
- func CfnVirtualGateway_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnVirtualGateway_IsConstruct(x interface{}) *bool
- func CfnVirtualNode_CFN_RESOURCE_TYPE_NAME() *string
- func CfnVirtualNode_IsCfnElement(x interface{}) *bool
- func CfnVirtualNode_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnVirtualNode_IsConstruct(x interface{}) *bool
- func CfnVirtualRouter_CFN_RESOURCE_TYPE_NAME() *string
- func CfnVirtualRouter_IsCfnElement(x interface{}) *bool
- func CfnVirtualRouter_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnVirtualRouter_IsConstruct(x interface{}) *bool
- func CfnVirtualService_CFN_RESOURCE_TYPE_NAME() *string
- func CfnVirtualService_IsCfnElement(x interface{}) *bool
- func CfnVirtualService_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnVirtualService_IsConstruct(x interface{}) *bool
- func GatewayRoute_IsConstruct(x interface{}) *bool
- func GatewayRoute_IsResource(construct awscdk.IConstruct) *bool
- func Mesh_IsConstruct(x interface{}) *bool
- func Mesh_IsResource(construct awscdk.IConstruct) *bool
- func NewAccessLog_Override(a AccessLog)
- func NewBackend_Override(b Backend)
- func NewCfnGatewayRoute_Override(c CfnGatewayRoute, scope awscdk.Construct, id *string, ...)
- func NewCfnMesh_Override(c CfnMesh, scope awscdk.Construct, id *string, props *CfnMeshProps)
- func NewCfnRoute_Override(c CfnRoute, scope awscdk.Construct, id *string, props *CfnRouteProps)
- func NewCfnVirtualGateway_Override(c CfnVirtualGateway, scope awscdk.Construct, id *string, ...)
- func NewCfnVirtualNode_Override(c CfnVirtualNode, scope awscdk.Construct, id *string, ...)
- func NewCfnVirtualRouter_Override(c CfnVirtualRouter, scope awscdk.Construct, id *string, ...)
- func NewCfnVirtualService_Override(c CfnVirtualService, scope awscdk.Construct, id *string, ...)
- func NewGatewayRouteHostnameMatch_Override(g GatewayRouteHostnameMatch)
- func NewGatewayRouteSpec_Override(g GatewayRouteSpec)
- func NewGatewayRoute_Override(g GatewayRoute, scope constructs.Construct, id *string, ...)
- func NewHeaderMatch_Override(h HeaderMatch)
- func NewHealthCheck_Override(h HealthCheck)
- func NewHttpGatewayRoutePathMatch_Override(h HttpGatewayRoutePathMatch)
- func NewHttpRoutePathMatch_Override(h HttpRoutePathMatch)
- func NewMesh_Override(m Mesh, scope constructs.Construct, id *string, props *MeshProps)
- func NewMutualTlsCertificate_Override(m MutualTlsCertificate)
- func NewMutualTlsValidationTrust_Override(m MutualTlsValidationTrust)
- func NewQueryParameterMatch_Override(q QueryParameterMatch)
- func NewRouteSpec_Override(r RouteSpec)
- func NewRoute_Override(r Route, scope constructs.Construct, id *string, props *RouteProps)
- func NewServiceDiscovery_Override(s ServiceDiscovery)
- func NewSubjectAlternativeNames_Override(s SubjectAlternativeNames)
- func NewTlsCertificate_Override(t TlsCertificate)
- func NewTlsValidationTrust_Override(t TlsValidationTrust)
- func NewVirtualGatewayListener_Override(v VirtualGatewayListener)
- func NewVirtualGateway_Override(v VirtualGateway, scope constructs.Construct, id *string, ...)
- func NewVirtualNodeListener_Override(v VirtualNodeListener)
- func NewVirtualNode_Override(v VirtualNode, scope constructs.Construct, id *string, props *VirtualNodeProps)
- func NewVirtualRouterListener_Override(v VirtualRouterListener)
- func NewVirtualRouter_Override(v VirtualRouter, scope constructs.Construct, id *string, ...)
- func NewVirtualServiceProvider_Override(v VirtualServiceProvider)
- func NewVirtualService_Override(v VirtualService, scope constructs.Construct, id *string, ...)
- func Route_IsConstruct(x interface{}) *bool
- func Route_IsResource(construct awscdk.IConstruct) *bool
- func VirtualGateway_IsConstruct(x interface{}) *bool
- func VirtualGateway_IsResource(construct awscdk.IConstruct) *bool
- func VirtualNode_IsConstruct(x interface{}) *bool
- func VirtualNode_IsResource(construct awscdk.IConstruct) *bool
- func VirtualRouter_IsConstruct(x interface{}) *bool
- func VirtualRouter_IsResource(construct awscdk.IConstruct) *bool
- func VirtualService_IsConstruct(x interface{}) *bool
- func VirtualService_IsResource(construct awscdk.IConstruct) *bool
- type AccessLog
- type AccessLogConfig
- type Backend
- type BackendConfig
- type BackendDefaults
- type CfnGatewayRoute
- type CfnGatewayRouteProps
- type CfnGatewayRoute_GatewayRouteHostnameMatchProperty
- type CfnGatewayRoute_GatewayRouteHostnameRewriteProperty
- type CfnGatewayRoute_GatewayRouteMetadataMatchProperty
- type CfnGatewayRoute_GatewayRouteRangeMatchProperty
- type CfnGatewayRoute_GatewayRouteSpecProperty
- type CfnGatewayRoute_GatewayRouteTargetProperty
- type CfnGatewayRoute_GatewayRouteVirtualServiceProperty
- type CfnGatewayRoute_GrpcGatewayRouteActionProperty
- type CfnGatewayRoute_GrpcGatewayRouteMatchProperty
- type CfnGatewayRoute_GrpcGatewayRouteMetadataProperty
- type CfnGatewayRoute_GrpcGatewayRouteProperty
- type CfnGatewayRoute_GrpcGatewayRouteRewriteProperty
- type CfnGatewayRoute_HttpGatewayRouteActionProperty
- type CfnGatewayRoute_HttpGatewayRouteHeaderMatchProperty
- type CfnGatewayRoute_HttpGatewayRouteHeaderProperty
- type CfnGatewayRoute_HttpGatewayRouteMatchProperty
- type CfnGatewayRoute_HttpGatewayRoutePathRewriteProperty
- type CfnGatewayRoute_HttpGatewayRoutePrefixRewriteProperty
- type CfnGatewayRoute_HttpGatewayRouteProperty
- type CfnGatewayRoute_HttpGatewayRouteRewriteProperty
- type CfnGatewayRoute_HttpPathMatchProperty
- type CfnGatewayRoute_HttpQueryParameterMatchProperty
- type CfnGatewayRoute_QueryParameterProperty
- type CfnMesh
- type CfnMeshProps
- type CfnMesh_EgressFilterProperty
- type CfnMesh_MeshSpecProperty
- type CfnRoute
- type CfnRouteProps
- type CfnRoute_DurationProperty
- type CfnRoute_GrpcRetryPolicyProperty
- type CfnRoute_GrpcRouteActionProperty
- type CfnRoute_GrpcRouteMatchProperty
- type CfnRoute_GrpcRouteMetadataMatchMethodProperty
- type CfnRoute_GrpcRouteMetadataProperty
- type CfnRoute_GrpcRouteProperty
- type CfnRoute_GrpcTimeoutProperty
- type CfnRoute_HeaderMatchMethodProperty
- type CfnRoute_HttpPathMatchProperty
- type CfnRoute_HttpQueryParameterMatchProperty
- type CfnRoute_HttpRetryPolicyProperty
- type CfnRoute_HttpRouteActionProperty
- type CfnRoute_HttpRouteHeaderProperty
- type CfnRoute_HttpRouteMatchProperty
- type CfnRoute_HttpRouteProperty
- type CfnRoute_HttpTimeoutProperty
- type CfnRoute_MatchRangeProperty
- type CfnRoute_QueryParameterProperty
- type CfnRoute_RouteSpecProperty
- type CfnRoute_TcpRouteActionProperty
- type CfnRoute_TcpRouteProperty
- type CfnRoute_TcpTimeoutProperty
- type CfnRoute_WeightedTargetProperty
- type CfnVirtualGateway
- type CfnVirtualGatewayProps
- type CfnVirtualGateway_SubjectAlternativeNameMatchersProperty
- type CfnVirtualGateway_SubjectAlternativeNamesProperty
- type CfnVirtualGateway_VirtualGatewayAccessLogProperty
- type CfnVirtualGateway_VirtualGatewayBackendDefaultsProperty
- type CfnVirtualGateway_VirtualGatewayClientPolicyProperty
- type CfnVirtualGateway_VirtualGatewayClientPolicyTlsProperty
- type CfnVirtualGateway_VirtualGatewayClientTlsCertificateProperty
- type CfnVirtualGateway_VirtualGatewayConnectionPoolProperty
- type CfnVirtualGateway_VirtualGatewayFileAccessLogProperty
- type CfnVirtualGateway_VirtualGatewayGrpcConnectionPoolProperty
- type CfnVirtualGateway_VirtualGatewayHealthCheckPolicyProperty
- type CfnVirtualGateway_VirtualGatewayHttp2ConnectionPoolProperty
- type CfnVirtualGateway_VirtualGatewayHttpConnectionPoolProperty
- type CfnVirtualGateway_VirtualGatewayListenerProperty
- type CfnVirtualGateway_VirtualGatewayListenerTlsAcmCertificateProperty
- type CfnVirtualGateway_VirtualGatewayListenerTlsCertificateProperty
- type CfnVirtualGateway_VirtualGatewayListenerTlsFileCertificateProperty
- type CfnVirtualGateway_VirtualGatewayListenerTlsProperty
- type CfnVirtualGateway_VirtualGatewayListenerTlsSdsCertificateProperty
- type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextProperty
- type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextTrustProperty
- type CfnVirtualGateway_VirtualGatewayLoggingProperty
- type CfnVirtualGateway_VirtualGatewayPortMappingProperty
- type CfnVirtualGateway_VirtualGatewaySpecProperty
- type CfnVirtualGateway_VirtualGatewayTlsValidationContextAcmTrustProperty
- type CfnVirtualGateway_VirtualGatewayTlsValidationContextFileTrustProperty
- type CfnVirtualGateway_VirtualGatewayTlsValidationContextProperty
- type CfnVirtualGateway_VirtualGatewayTlsValidationContextSdsTrustProperty
- type CfnVirtualGateway_VirtualGatewayTlsValidationContextTrustProperty
- type CfnVirtualNode
- type CfnVirtualNodeProps
- type CfnVirtualNode_AccessLogProperty
- type CfnVirtualNode_AwsCloudMapInstanceAttributeProperty
- type CfnVirtualNode_AwsCloudMapServiceDiscoveryProperty
- type CfnVirtualNode_BackendDefaultsProperty
- type CfnVirtualNode_BackendProperty
- type CfnVirtualNode_ClientPolicyProperty
- type CfnVirtualNode_ClientPolicyTlsProperty
- type CfnVirtualNode_ClientTlsCertificateProperty
- type CfnVirtualNode_DnsServiceDiscoveryProperty
- type CfnVirtualNode_DurationProperty
- type CfnVirtualNode_FileAccessLogProperty
- type CfnVirtualNode_GrpcTimeoutProperty
- type CfnVirtualNode_HealthCheckProperty
- type CfnVirtualNode_HttpTimeoutProperty
- type CfnVirtualNode_ListenerProperty
- type CfnVirtualNode_ListenerTimeoutProperty
- type CfnVirtualNode_ListenerTlsAcmCertificateProperty
- type CfnVirtualNode_ListenerTlsCertificateProperty
- type CfnVirtualNode_ListenerTlsFileCertificateProperty
- type CfnVirtualNode_ListenerTlsProperty
- type CfnVirtualNode_ListenerTlsSdsCertificateProperty
- type CfnVirtualNode_ListenerTlsValidationContextProperty
- type CfnVirtualNode_ListenerTlsValidationContextTrustProperty
- type CfnVirtualNode_LoggingProperty
- type CfnVirtualNode_OutlierDetectionProperty
- type CfnVirtualNode_PortMappingProperty
- type CfnVirtualNode_ServiceDiscoveryProperty
- type CfnVirtualNode_SubjectAlternativeNameMatchersProperty
- type CfnVirtualNode_SubjectAlternativeNamesProperty
- type CfnVirtualNode_TcpTimeoutProperty
- type CfnVirtualNode_TlsValidationContextAcmTrustProperty
- type CfnVirtualNode_TlsValidationContextFileTrustProperty
- type CfnVirtualNode_TlsValidationContextProperty
- type CfnVirtualNode_TlsValidationContextSdsTrustProperty
- type CfnVirtualNode_TlsValidationContextTrustProperty
- type CfnVirtualNode_VirtualNodeConnectionPoolProperty
- type CfnVirtualNode_VirtualNodeGrpcConnectionPoolProperty
- type CfnVirtualNode_VirtualNodeHttp2ConnectionPoolProperty
- type CfnVirtualNode_VirtualNodeHttpConnectionPoolProperty
- type CfnVirtualNode_VirtualNodeSpecProperty
- type CfnVirtualNode_VirtualNodeTcpConnectionPoolProperty
- type CfnVirtualNode_VirtualServiceBackendProperty
- type CfnVirtualRouter
- type CfnVirtualRouterProps
- type CfnVirtualRouter_PortMappingProperty
- type CfnVirtualRouter_VirtualRouterListenerProperty
- type CfnVirtualRouter_VirtualRouterSpecProperty
- type CfnVirtualService
- type CfnVirtualServiceProps
- type CfnVirtualService_VirtualNodeServiceProviderProperty
- type CfnVirtualService_VirtualRouterServiceProviderProperty
- type CfnVirtualService_VirtualServiceProviderProperty
- type CfnVirtualService_VirtualServiceSpecProperty
- type CommonGatewayRouteSpecOptions
- type DnsResponseType
- type GatewayRoute
- type GatewayRouteAttributes
- type GatewayRouteBaseProps
- type GatewayRouteHostnameMatch
- type GatewayRouteHostnameMatchConfig
- type GatewayRouteProps
- type GatewayRouteSpec
- type GatewayRouteSpecConfig
- type GrpcConnectionPool
- type GrpcGatewayListenerOptions
- type GrpcGatewayRouteMatch
- type GrpcGatewayRouteSpecOptions
- type GrpcHealthCheckOptions
- type GrpcRetryEvent
- type GrpcRetryPolicy
- type GrpcRouteMatch
- type GrpcRouteSpecOptions
- type GrpcTimeout
- type GrpcVirtualNodeListenerOptions
- type HeaderMatch
- func HeaderMatch_ValueDoesNotEndWith(headerName *string, suffix *string) HeaderMatch
- func HeaderMatch_ValueDoesNotMatchRegex(headerName *string, regex *string) HeaderMatch
- func HeaderMatch_ValueDoesNotStartWith(headerName *string, prefix *string) HeaderMatch
- func HeaderMatch_ValueEndsWith(headerName *string, suffix *string) HeaderMatch
- func HeaderMatch_ValueIs(headerName *string, headerValue *string) HeaderMatch
- func HeaderMatch_ValueIsNot(headerName *string, headerValue *string) HeaderMatch
- func HeaderMatch_ValueMatchesRegex(headerName *string, regex *string) HeaderMatch
- func HeaderMatch_ValueStartsWith(headerName *string, prefix *string) HeaderMatch
- func HeaderMatch_ValuesIsInRange(headerName *string, start *float64, end *float64) HeaderMatch
- func HeaderMatch_ValuesIsNotInRange(headerName *string, start *float64, end *float64) HeaderMatch
- type HeaderMatchConfig
- type HealthCheck
- type HealthCheckBindOptions
- type HealthCheckConfig
- type Http2ConnectionPool
- type Http2GatewayListenerOptions
- type Http2VirtualNodeListenerOptions
- type HttpConnectionPool
- type HttpGatewayListenerOptions
- type HttpGatewayRouteMatch
- type HttpGatewayRoutePathMatch
- type HttpGatewayRoutePathMatchConfig
- type HttpGatewayRouteSpecOptions
- type HttpHealthCheckOptions
- type HttpRetryEvent
- type HttpRetryPolicy
- type HttpRouteMatch
- type HttpRouteMethod
- type HttpRoutePathMatch
- type HttpRoutePathMatchConfig
- type HttpRouteProtocol
- type HttpRouteSpecOptions
- type HttpTimeout
- type HttpVirtualNodeListenerOptions
- type IGatewayRoute
- type IMesh
- type IRoute
- type IVirtualGateway
- type IVirtualNode
- type IVirtualRouter
- type IVirtualService
- type ListenerTlsOptions
- type Mesh
- type MeshFilterType
- type MeshProps
- type MutualTlsCertificate
- func MutualTlsCertificate_File(certificateChainPath *string, privateKeyPath *string) MutualTlsCertificate
- func MutualTlsCertificate_Sds(secretName *string) MutualTlsCertificate
- func TlsCertificate_File(certificateChainPath *string, privateKeyPath *string) MutualTlsCertificate
- func TlsCertificate_Sds(secretName *string) MutualTlsCertificate
- type MutualTlsValidation
- type MutualTlsValidationTrust
- func MutualTlsValidationTrust_File(certificateChain *string) MutualTlsValidationTrust
- func MutualTlsValidationTrust_Sds(secretName *string) MutualTlsValidationTrust
- func TlsValidationTrust_File(certificateChain *string) MutualTlsValidationTrust
- func TlsValidationTrust_Sds(secretName *string) MutualTlsValidationTrust
- type OutlierDetection
- type Protocol
- type QueryParameterMatch
- type QueryParameterMatchConfig
- type Route
- type RouteAttributes
- type RouteBaseProps
- type RouteProps
- type RouteSpec
- type RouteSpecConfig
- type RouteSpecOptionsBase
- type ServiceDiscovery
- type ServiceDiscoveryConfig
- type SubjectAlternativeNames
- type SubjectAlternativeNamesMatcherConfig
- type TcpConnectionPool
- type TcpHealthCheckOptions
- type TcpRetryEvent
- type TcpRouteSpecOptions
- type TcpTimeout
- type TcpVirtualNodeListenerOptions
- type TlsCertificate
- type TlsCertificateConfig
- type TlsClientPolicy
- type TlsMode
- type TlsValidation
- type TlsValidationTrust
- type TlsValidationTrustConfig
- type VirtualGateway
- type VirtualGatewayAttributes
- type VirtualGatewayBaseProps
- type VirtualGatewayListener
- type VirtualGatewayListenerConfig
- type VirtualGatewayProps
- type VirtualNode
- type VirtualNodeAttributes
- type VirtualNodeBaseProps
- type VirtualNodeListener
- func VirtualNodeListener_Grpc(props *GrpcVirtualNodeListenerOptions) VirtualNodeListener
- func VirtualNodeListener_Http(props *HttpVirtualNodeListenerOptions) VirtualNodeListener
- func VirtualNodeListener_Http2(props *Http2VirtualNodeListenerOptions) VirtualNodeListener
- func VirtualNodeListener_Tcp(props *TcpVirtualNodeListenerOptions) VirtualNodeListener
- type VirtualNodeListenerConfig
- type VirtualNodeProps
- type VirtualRouter
- type VirtualRouterAttributes
- type VirtualRouterBaseProps
- type VirtualRouterListener
- type VirtualRouterListenerConfig
- type VirtualRouterProps
- type VirtualService
- type VirtualServiceAttributes
- type VirtualServiceBackendOptions
- type VirtualServiceProps
- type VirtualServiceProvider
- type VirtualServiceProviderConfig
- type WeightedTarget
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnGatewayRoute_CFN_RESOURCE_TYPE_NAME ¶
func CfnGatewayRoute_CFN_RESOURCE_TYPE_NAME() *string
func CfnGatewayRoute_IsCfnElement ¶
func CfnGatewayRoute_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnGatewayRoute_IsCfnResource ¶
func CfnGatewayRoute_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnGatewayRoute_IsConstruct ¶
func CfnGatewayRoute_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnMesh_CFN_RESOURCE_TYPE_NAME ¶
func CfnMesh_CFN_RESOURCE_TYPE_NAME() *string
func CfnMesh_IsCfnElement ¶
func CfnMesh_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnMesh_IsCfnResource ¶
func CfnMesh_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnMesh_IsConstruct ¶
func CfnMesh_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnRoute_CFN_RESOURCE_TYPE_NAME ¶
func CfnRoute_CFN_RESOURCE_TYPE_NAME() *string
func CfnRoute_IsCfnElement ¶
func CfnRoute_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnRoute_IsCfnResource ¶
func CfnRoute_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnRoute_IsConstruct ¶
func CfnRoute_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnVirtualGateway_CFN_RESOURCE_TYPE_NAME ¶
func CfnVirtualGateway_CFN_RESOURCE_TYPE_NAME() *string
func CfnVirtualGateway_IsCfnElement ¶
func CfnVirtualGateway_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnVirtualGateway_IsCfnResource ¶
func CfnVirtualGateway_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnVirtualGateway_IsConstruct ¶
func CfnVirtualGateway_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnVirtualNode_CFN_RESOURCE_TYPE_NAME ¶
func CfnVirtualNode_CFN_RESOURCE_TYPE_NAME() *string
func CfnVirtualNode_IsCfnElement ¶
func CfnVirtualNode_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnVirtualNode_IsCfnResource ¶
func CfnVirtualNode_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnVirtualNode_IsConstruct ¶
func CfnVirtualNode_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnVirtualRouter_CFN_RESOURCE_TYPE_NAME ¶
func CfnVirtualRouter_CFN_RESOURCE_TYPE_NAME() *string
func CfnVirtualRouter_IsCfnElement ¶
func CfnVirtualRouter_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnVirtualRouter_IsCfnResource ¶
func CfnVirtualRouter_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnVirtualRouter_IsConstruct ¶
func CfnVirtualRouter_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnVirtualService_CFN_RESOURCE_TYPE_NAME ¶
func CfnVirtualService_CFN_RESOURCE_TYPE_NAME() *string
func CfnVirtualService_IsCfnElement ¶
func CfnVirtualService_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnVirtualService_IsCfnResource ¶
func CfnVirtualService_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnVirtualService_IsConstruct ¶
func CfnVirtualService_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func GatewayRoute_IsConstruct ¶
func GatewayRoute_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func GatewayRoute_IsResource ¶
func GatewayRoute_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func Mesh_IsConstruct ¶
func Mesh_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func Mesh_IsResource ¶
func Mesh_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func NewCfnGatewayRoute_Override ¶
func NewCfnGatewayRoute_Override(c CfnGatewayRoute, scope awscdk.Construct, id *string, props *CfnGatewayRouteProps)
Create a new `AWS::AppMesh::GatewayRoute`.
func NewCfnMesh_Override ¶
func NewCfnMesh_Override(c CfnMesh, scope awscdk.Construct, id *string, props *CfnMeshProps)
Create a new `AWS::AppMesh::Mesh`.
func NewCfnRoute_Override ¶
func NewCfnRoute_Override(c CfnRoute, scope awscdk.Construct, id *string, props *CfnRouteProps)
Create a new `AWS::AppMesh::Route`.
func NewCfnVirtualGateway_Override ¶
func NewCfnVirtualGateway_Override(c CfnVirtualGateway, scope awscdk.Construct, id *string, props *CfnVirtualGatewayProps)
Create a new `AWS::AppMesh::VirtualGateway`.
func NewCfnVirtualNode_Override ¶
func NewCfnVirtualNode_Override(c CfnVirtualNode, scope awscdk.Construct, id *string, props *CfnVirtualNodeProps)
Create a new `AWS::AppMesh::VirtualNode`.
func NewCfnVirtualRouter_Override ¶
func NewCfnVirtualRouter_Override(c CfnVirtualRouter, scope awscdk.Construct, id *string, props *CfnVirtualRouterProps)
Create a new `AWS::AppMesh::VirtualRouter`.
func NewCfnVirtualService_Override ¶
func NewCfnVirtualService_Override(c CfnVirtualService, scope awscdk.Construct, id *string, props *CfnVirtualServiceProps)
Create a new `AWS::AppMesh::VirtualService`.
func NewGatewayRouteHostnameMatch_Override ¶
func NewGatewayRouteHostnameMatch_Override(g GatewayRouteHostnameMatch)
Experimental.
func NewGatewayRouteSpec_Override ¶
func NewGatewayRouteSpec_Override(g GatewayRouteSpec)
Experimental.
func NewGatewayRoute_Override ¶
func NewGatewayRoute_Override(g GatewayRoute, scope constructs.Construct, id *string, props *GatewayRouteProps)
Experimental.
func NewHttpGatewayRoutePathMatch_Override ¶
func NewHttpGatewayRoutePathMatch_Override(h HttpGatewayRoutePathMatch)
Experimental.
func NewHttpRoutePathMatch_Override ¶
func NewHttpRoutePathMatch_Override(h HttpRoutePathMatch)
Experimental.
func NewMesh_Override ¶
Experimental.
func NewMutualTlsCertificate_Override ¶
func NewMutualTlsCertificate_Override(m MutualTlsCertificate)
Experimental.
func NewMutualTlsValidationTrust_Override ¶
func NewMutualTlsValidationTrust_Override(m MutualTlsValidationTrust)
Experimental.
func NewQueryParameterMatch_Override ¶
func NewQueryParameterMatch_Override(q QueryParameterMatch)
Experimental.
func NewRoute_Override ¶
func NewRoute_Override(r Route, scope constructs.Construct, id *string, props *RouteProps)
Experimental.
func NewServiceDiscovery_Override ¶
func NewServiceDiscovery_Override(s ServiceDiscovery)
Experimental.
func NewSubjectAlternativeNames_Override ¶
func NewSubjectAlternativeNames_Override(s SubjectAlternativeNames)
Experimental.
func NewTlsValidationTrust_Override ¶
func NewTlsValidationTrust_Override(t TlsValidationTrust)
Experimental.
func NewVirtualGatewayListener_Override ¶
func NewVirtualGatewayListener_Override(v VirtualGatewayListener)
Experimental.
func NewVirtualGateway_Override ¶
func NewVirtualGateway_Override(v VirtualGateway, scope constructs.Construct, id *string, props *VirtualGatewayProps)
Experimental.
func NewVirtualNodeListener_Override ¶
func NewVirtualNodeListener_Override(v VirtualNodeListener)
Experimental.
func NewVirtualNode_Override ¶
func NewVirtualNode_Override(v VirtualNode, scope constructs.Construct, id *string, props *VirtualNodeProps)
Experimental.
func NewVirtualRouterListener_Override ¶
func NewVirtualRouterListener_Override(v VirtualRouterListener)
Experimental.
func NewVirtualRouter_Override ¶
func NewVirtualRouter_Override(v VirtualRouter, scope constructs.Construct, id *string, props *VirtualRouterProps)
Experimental.
func NewVirtualServiceProvider_Override ¶
func NewVirtualServiceProvider_Override(v VirtualServiceProvider)
Experimental.
func NewVirtualService_Override ¶
func NewVirtualService_Override(v VirtualService, scope constructs.Construct, id *string, props *VirtualServiceProps)
Experimental.
func Route_IsConstruct ¶
func Route_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func Route_IsResource ¶
func Route_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func VirtualGateway_IsConstruct ¶
func VirtualGateway_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func VirtualGateway_IsResource ¶
func VirtualGateway_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func VirtualNode_IsConstruct ¶
func VirtualNode_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func VirtualNode_IsResource ¶
func VirtualNode_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func VirtualRouter_IsConstruct ¶
func VirtualRouter_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func VirtualRouter_IsResource ¶
func VirtualRouter_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func VirtualService_IsConstruct ¶
func VirtualService_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func VirtualService_IsResource ¶
func VirtualService_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
Types ¶
type AccessLog ¶
type AccessLog interface {
Bind(scope awscdk.Construct) *AccessLogConfig
}
Configuration for Envoy Access logs for mesh endpoints.
TODO: EXAMPLE
Experimental.
func AccessLog_FromFilePath ¶
Path to a file to write access logs to. Experimental.
type AccessLogConfig ¶
type AccessLogConfig struct { // VirtualGateway CFN configuration for Access Logging. // Experimental. VirtualGatewayAccessLog *CfnVirtualGateway_VirtualGatewayAccessLogProperty `json:"virtualGatewayAccessLog" yaml:"virtualGatewayAccessLog"` // VirtualNode CFN configuration for Access Logging. // Experimental. VirtualNodeAccessLog *CfnVirtualNode_AccessLogProperty `json:"virtualNodeAccessLog" yaml:"virtualNodeAccessLog"` }
All Properties for Envoy Access logs for mesh endpoints.
TODO: EXAMPLE
Experimental.
type Backend ¶
type Backend interface {
Bind(_scope awscdk.Construct) *BackendConfig
}
Contains static factory methods to create backends.
TODO: EXAMPLE
Experimental.
func Backend_VirtualService ¶
func Backend_VirtualService(virtualService IVirtualService, props *VirtualServiceBackendOptions) Backend
Construct a Virtual Service backend. Experimental.
type BackendConfig ¶
type BackendConfig struct { // Config for a Virtual Service backend. // Experimental. VirtualServiceBackend *CfnVirtualNode_BackendProperty `json:"virtualServiceBackend" yaml:"virtualServiceBackend"` }
Properties for a backend.
TODO: EXAMPLE
Experimental.
type BackendDefaults ¶
type BackendDefaults struct { // TLS properties for Client policy for backend defaults. // Experimental. TlsClientPolicy *TlsClientPolicy `json:"tlsClientPolicy" yaml:"tlsClientPolicy"` }
Represents the properties needed to define backend defaults.
TODO: EXAMPLE
Experimental.
type CfnGatewayRoute ¶
type CfnGatewayRoute interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string AttrGatewayRouteName() *string AttrMeshName() *string AttrMeshOwner() *string AttrResourceOwner() *string AttrUid() *string AttrVirtualGatewayName() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string GatewayRouteName() *string SetGatewayRouteName(val *string) LogicalId() *string MeshName() *string SetMeshName(val *string) MeshOwner() *string SetMeshOwner(val *string) Node() awscdk.ConstructNode Ref() *string Spec() interface{} SetSpec(val interface{}) Stack() awscdk.Stack Tags() awscdk.TagManager UpdatedProperites() *map[string]interface{} VirtualGatewayName() *string SetVirtualGatewayName(val *string) AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string OverrideLogicalId(newLogicalId *string) Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AppMesh::GatewayRoute`.
Creates a gateway route.
A gateway route is attached to a virtual gateway and routes traffic to an existing virtual service. If a route matches a request, it can distribute traffic to a target virtual service.
For more information about gateway routes, see [Gateway routes](https://docs.aws.amazon.com/app-mesh/latest/userguide/gateway-routes.html) .
TODO: EXAMPLE
func NewCfnGatewayRoute ¶
func NewCfnGatewayRoute(scope awscdk.Construct, id *string, props *CfnGatewayRouteProps) CfnGatewayRoute
Create a new `AWS::AppMesh::GatewayRoute`.
type CfnGatewayRouteProps ¶
type CfnGatewayRouteProps struct { // The name of the service mesh that the resource resides in. MeshName *string `json:"meshName" yaml:"meshName"` // The specifications of the gateway route. Spec interface{} `json:"spec" yaml:"spec"` // The virtual gateway that the gateway route is associated with. VirtualGatewayName *string `json:"virtualGatewayName" yaml:"virtualGatewayName"` // The name of the gateway route. GatewayRouteName *string `json:"gatewayRouteName" yaml:"gatewayRouteName"` // The AWS IAM account ID of the service mesh owner. // // If the account ID is not your own, then it's the ID of the account that shared the mesh with your account. For more information about mesh sharing, see [Working with shared meshes](https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html) . MeshOwner *string `json:"meshOwner" yaml:"meshOwner"` // Optional metadata that you can apply to the gateway route to assist with categorization and organization. // // Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` }
Properties for defining a `CfnGatewayRoute`.
TODO: EXAMPLE
type CfnGatewayRoute_GatewayRouteHostnameMatchProperty ¶
type CfnGatewayRoute_GatewayRouteHostnameMatchProperty struct { // The exact host name to match on. Exact *string `json:"exact" yaml:"exact"` // The specified ending characters of the host name to match on. Suffix *string `json:"suffix" yaml:"suffix"` }
An object representing the gateway route host name to match.
TODO: EXAMPLE
type CfnGatewayRoute_GatewayRouteHostnameRewriteProperty ¶
type CfnGatewayRoute_GatewayRouteHostnameRewriteProperty struct { // The default target host name to write to. DefaultTargetHostname *string `json:"defaultTargetHostname" yaml:"defaultTargetHostname"` }
An object representing the gateway route host name to rewrite.
TODO: EXAMPLE
type CfnGatewayRoute_GatewayRouteMetadataMatchProperty ¶
type CfnGatewayRoute_GatewayRouteMetadataMatchProperty struct { // The exact method header to be matched on. Exact *string `json:"exact" yaml:"exact"` // The specified beginning characters of the method header to be matched on. Prefix *string `json:"prefix" yaml:"prefix"` // An object that represents the range of values to match on. Range interface{} `json:"range" yaml:"range"` // The regex used to match the method header. Regex *string `json:"regex" yaml:"regex"` // The specified ending characters of the method header to match on. Suffix *string `json:"suffix" yaml:"suffix"` }
An object representing the method header to be matched.
TODO: EXAMPLE
type CfnGatewayRoute_GatewayRouteRangeMatchProperty ¶
type CfnGatewayRoute_GatewayRouteRangeMatchProperty struct { // The end of the range. End *float64 `json:"end" yaml:"end"` // The start of the range. Start *float64 `json:"start" yaml:"start"` }
An object that represents the range of values to match on.
The first character of the range is included in the range, though the last character is not. For example, if the range specified were 1-100, only values 1-99 would be matched.
TODO: EXAMPLE
type CfnGatewayRoute_GatewayRouteSpecProperty ¶
type CfnGatewayRoute_GatewayRouteSpecProperty struct { // An object that represents the specification of a gRPC gateway route. GrpcRoute interface{} `json:"grpcRoute" yaml:"grpcRoute"` // An object that represents the specification of an HTTP/2 gateway route. Http2Route interface{} `json:"http2Route" yaml:"http2Route"` // An object that represents the specification of an HTTP gateway route. HttpRoute interface{} `json:"httpRoute" yaml:"httpRoute"` // The ordering of the gateway routes spec. Priority *float64 `json:"priority" yaml:"priority"` }
An object that represents a gateway route specification.
Specify one gateway route type.
TODO: EXAMPLE
type CfnGatewayRoute_GatewayRouteTargetProperty ¶
type CfnGatewayRoute_GatewayRouteTargetProperty struct {
// An object that represents a virtual service gateway route target.
VirtualService interface{} `json:"virtualService" yaml:"virtualService"`
}
An object that represents a gateway route target.
TODO: EXAMPLE
type CfnGatewayRoute_GatewayRouteVirtualServiceProperty ¶
type CfnGatewayRoute_GatewayRouteVirtualServiceProperty struct { // The name of the virtual service that traffic is routed to. VirtualServiceName *string `json:"virtualServiceName" yaml:"virtualServiceName"` }
An object that represents the virtual service that traffic is routed to.
TODO: EXAMPLE
type CfnGatewayRoute_GrpcGatewayRouteActionProperty ¶
type CfnGatewayRoute_GrpcGatewayRouteActionProperty struct { // An object that represents the target that traffic is routed to when a request matches the gateway route. Target interface{} `json:"target" yaml:"target"` // The gateway route action to rewrite. Rewrite interface{} `json:"rewrite" yaml:"rewrite"` }
An object that represents the action to take if a match is determined.
TODO: EXAMPLE
type CfnGatewayRoute_GrpcGatewayRouteMatchProperty ¶
type CfnGatewayRoute_GrpcGatewayRouteMatchProperty struct { // The gateway route host name to be matched on. Hostname interface{} `json:"hostname" yaml:"hostname"` // The gateway route metadata to be matched on. Metadata interface{} `json:"metadata" yaml:"metadata"` // The fully qualified domain name for the service to match from the request. ServiceName *string `json:"serviceName" yaml:"serviceName"` }
An object that represents the criteria for determining a request match.
TODO: EXAMPLE
type CfnGatewayRoute_GrpcGatewayRouteMetadataProperty ¶
type CfnGatewayRoute_GrpcGatewayRouteMetadataProperty struct { // A name for the gateway route metadata. Name *string `json:"name" yaml:"name"` // Specify `True` to match anything except the match criteria. // // The default value is `False` . Invert interface{} `json:"invert" yaml:"invert"` // The criteria for determining a metadata match. Match interface{} `json:"match" yaml:"match"` }
An object representing the metadata of the gateway route.
TODO: EXAMPLE
type CfnGatewayRoute_GrpcGatewayRouteProperty ¶
type CfnGatewayRoute_GrpcGatewayRouteProperty struct { // An object that represents the action to take if a match is determined. Action interface{} `json:"action" yaml:"action"` // An object that represents the criteria for determining a request match. Match interface{} `json:"match" yaml:"match"` }
An object that represents a gRPC gateway route.
TODO: EXAMPLE
type CfnGatewayRoute_GrpcGatewayRouteRewriteProperty ¶
type CfnGatewayRoute_GrpcGatewayRouteRewriteProperty struct {
// The host name of the gateway route to rewrite.
Hostname interface{} `json:"hostname" yaml:"hostname"`
}
An object that represents the gateway route to rewrite.
TODO: EXAMPLE
type CfnGatewayRoute_HttpGatewayRouteActionProperty ¶
type CfnGatewayRoute_HttpGatewayRouteActionProperty struct { // An object that represents the target that traffic is routed to when a request matches the gateway route. Target interface{} `json:"target" yaml:"target"` // The gateway route action to rewrite. Rewrite interface{} `json:"rewrite" yaml:"rewrite"` }
An object that represents the action to take if a match is determined.
TODO: EXAMPLE
type CfnGatewayRoute_HttpGatewayRouteHeaderMatchProperty ¶
type CfnGatewayRoute_HttpGatewayRouteHeaderMatchProperty struct { // The value sent by the client must match the specified value exactly. Exact *string `json:"exact" yaml:"exact"` // The value sent by the client must begin with the specified characters. Prefix *string `json:"prefix" yaml:"prefix"` // An object that represents the range of values to match on. Range interface{} `json:"range" yaml:"range"` // The value sent by the client must include the specified characters. Regex *string `json:"regex" yaml:"regex"` // The value sent by the client must end with the specified characters. Suffix *string `json:"suffix" yaml:"suffix"` }
An object that represents the method and value to match with the header value sent in a request.
Specify one match method.
TODO: EXAMPLE
type CfnGatewayRoute_HttpGatewayRouteHeaderProperty ¶
type CfnGatewayRoute_HttpGatewayRouteHeaderProperty struct { // A name for the HTTP header in the gateway route that will be matched on. Name *string `json:"name" yaml:"name"` // Specify `True` to match anything except the match criteria. // // The default value is `False` . Invert interface{} `json:"invert" yaml:"invert"` // An object that represents the method and value to match with the header value sent in a request. // // Specify one match method. Match interface{} `json:"match" yaml:"match"` }
An object that represents the HTTP header in the gateway route.
TODO: EXAMPLE
type CfnGatewayRoute_HttpGatewayRouteMatchProperty ¶
type CfnGatewayRoute_HttpGatewayRouteMatchProperty struct { // The client request headers to match on. Headers interface{} `json:"headers" yaml:"headers"` // The host name to match on. Hostname interface{} `json:"hostname" yaml:"hostname"` // The method to match on. Method *string `json:"method" yaml:"method"` // The path to match on. Path interface{} `json:"path" yaml:"path"` // Specifies the path to match requests with. // // This parameter must always start with `/` , which by itself matches all requests to the virtual service name. You can also match for path-based routing of requests. For example, if your virtual service name is `my-service.local` and you want the route to match requests to `my-service.local/metrics` , your prefix should be `/metrics` . Prefix *string `json:"prefix" yaml:"prefix"` // The query parameter to match on. QueryParameters interface{} `json:"queryParameters" yaml:"queryParameters"` }
An object that represents the criteria for determining a request match.
TODO: EXAMPLE
type CfnGatewayRoute_HttpGatewayRoutePathRewriteProperty ¶
type CfnGatewayRoute_HttpGatewayRoutePathRewriteProperty struct { // The exact path to rewrite. Exact *string `json:"exact" yaml:"exact"` }
An object that represents the path to rewrite.
TODO: EXAMPLE
type CfnGatewayRoute_HttpGatewayRoutePrefixRewriteProperty ¶
type CfnGatewayRoute_HttpGatewayRoutePrefixRewriteProperty struct { // The default prefix used to replace the incoming route prefix when rewritten. DefaultPrefix *string `json:"defaultPrefix" yaml:"defaultPrefix"` // The value used to replace the incoming route prefix when rewritten. Value *string `json:"value" yaml:"value"` }
An object representing the beginning characters of the route to rewrite.
TODO: EXAMPLE
type CfnGatewayRoute_HttpGatewayRouteProperty ¶
type CfnGatewayRoute_HttpGatewayRouteProperty struct { // An object that represents the action to take if a match is determined. Action interface{} `json:"action" yaml:"action"` // An object that represents the criteria for determining a request match. Match interface{} `json:"match" yaml:"match"` }
An object that represents an HTTP gateway route.
TODO: EXAMPLE
type CfnGatewayRoute_HttpGatewayRouteRewriteProperty ¶
type CfnGatewayRoute_HttpGatewayRouteRewriteProperty struct { // The host name to rewrite. Hostname interface{} `json:"hostname" yaml:"hostname"` // The path to rewrite. Path interface{} `json:"path" yaml:"path"` // The specified beginning characters to rewrite. Prefix interface{} `json:"prefix" yaml:"prefix"` }
An object representing the gateway route to rewrite.
TODO: EXAMPLE
type CfnGatewayRoute_HttpPathMatchProperty ¶
type CfnGatewayRoute_HttpPathMatchProperty struct { // The exact path to match on. Exact *string `json:"exact" yaml:"exact"` // The regex used to match the path. Regex *string `json:"regex" yaml:"regex"` }
An object representing the path to match in the request.
TODO: EXAMPLE
type CfnGatewayRoute_HttpQueryParameterMatchProperty ¶
type CfnGatewayRoute_HttpQueryParameterMatchProperty struct { // The exact query parameter to match on. Exact *string `json:"exact" yaml:"exact"` }
An object representing the query parameter to match.
TODO: EXAMPLE
type CfnGatewayRoute_QueryParameterProperty ¶
type CfnGatewayRoute_QueryParameterProperty struct { // A name for the query parameter that will be matched on. Name *string `json:"name" yaml:"name"` // The query parameter to match on. Match interface{} `json:"match" yaml:"match"` }
An object that represents the query parameter in the request.
TODO: EXAMPLE
type CfnMesh ¶
type CfnMesh interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string AttrMeshName() *string AttrMeshOwner() *string AttrResourceOwner() *string AttrUid() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string LogicalId() *string MeshName() *string SetMeshName(val *string) Node() awscdk.ConstructNode Ref() *string Spec() interface{} SetSpec(val interface{}) Stack() awscdk.Stack Tags() awscdk.TagManager UpdatedProperites() *map[string]interface{} AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string OverrideLogicalId(newLogicalId *string) Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AppMesh::Mesh`.
Creates a service mesh.
A service mesh is a logical boundary for network traffic between services that are represented by resources within the mesh. After you create your service mesh, you can create virtual services, virtual nodes, virtual routers, and routes to distribute traffic between the applications in your mesh.
For more information about service meshes, see [Service meshes](https://docs.aws.amazon.com/app-mesh/latest/userguide/meshes.html) .
TODO: EXAMPLE
func NewCfnMesh ¶
func NewCfnMesh(scope awscdk.Construct, id *string, props *CfnMeshProps) CfnMesh
Create a new `AWS::AppMesh::Mesh`.
type CfnMeshProps ¶
type CfnMeshProps struct { // The name to use for the service mesh. MeshName *string `json:"meshName" yaml:"meshName"` // The service mesh specification to apply. Spec interface{} `json:"spec" yaml:"spec"` // Optional metadata that you can apply to the service mesh to assist with categorization and organization. // // Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` }
Properties for defining a `CfnMesh`.
TODO: EXAMPLE
type CfnMesh_EgressFilterProperty ¶
type CfnMesh_EgressFilterProperty struct { // The egress filter type. // // By default, the type is `DROP_ALL` , which allows egress only from virtual nodes to other defined resources in the service mesh (and any traffic to `*.amazonaws.com` for AWS API calls). You can set the egress filter type to `ALLOW_ALL` to allow egress to any endpoint inside or outside of the service mesh. Type *string `json:"type" yaml:"type"` }
An object that represents the egress filter rules for a service mesh.
TODO: EXAMPLE
type CfnMesh_MeshSpecProperty ¶
type CfnMesh_MeshSpecProperty struct {
// The egress filter rules for the service mesh.
EgressFilter interface{} `json:"egressFilter" yaml:"egressFilter"`
}
An object that represents the specification of a service mesh.
TODO: EXAMPLE
type CfnRoute ¶
type CfnRoute interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string AttrMeshName() *string AttrMeshOwner() *string AttrResourceOwner() *string AttrRouteName() *string AttrUid() *string AttrVirtualRouterName() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string LogicalId() *string MeshName() *string SetMeshName(val *string) MeshOwner() *string SetMeshOwner(val *string) Node() awscdk.ConstructNode Ref() *string RouteName() *string SetRouteName(val *string) Spec() interface{} SetSpec(val interface{}) Stack() awscdk.Stack Tags() awscdk.TagManager UpdatedProperites() *map[string]interface{} VirtualRouterName() *string SetVirtualRouterName(val *string) AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string OverrideLogicalId(newLogicalId *string) Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AppMesh::Route`.
Creates a route that is associated with a virtual router.
You can route several different protocols and define a retry policy for a route. Traffic can be routed to one or more virtual nodes.
For more information about routes, see [Routes](https://docs.aws.amazon.com/app-mesh/latest/userguide/routes.html) .
TODO: EXAMPLE
func NewCfnRoute ¶
func NewCfnRoute(scope awscdk.Construct, id *string, props *CfnRouteProps) CfnRoute
Create a new `AWS::AppMesh::Route`.
type CfnRouteProps ¶
type CfnRouteProps struct { // The name of the service mesh to create the route in. MeshName *string `json:"meshName" yaml:"meshName"` // The route specification to apply. Spec interface{} `json:"spec" yaml:"spec"` // The name of the virtual router in which to create the route. // // If the virtual router is in a shared mesh, then you must be the owner of the virtual router resource. VirtualRouterName *string `json:"virtualRouterName" yaml:"virtualRouterName"` // The AWS IAM account ID of the service mesh owner. // // If the account ID is not your own, then the account that you specify must share the mesh with your account before you can create the resource in the service mesh. For more information about mesh sharing, see [Working with shared meshes](https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html) . MeshOwner *string `json:"meshOwner" yaml:"meshOwner"` // The name to use for the route. RouteName *string `json:"routeName" yaml:"routeName"` // Optional metadata that you can apply to the route to assist with categorization and organization. // // Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` }
Properties for defining a `CfnRoute`.
TODO: EXAMPLE
type CfnRoute_DurationProperty ¶
type CfnRoute_DurationProperty struct { // A unit of time. Unit *string `json:"unit" yaml:"unit"` // A number of time units. Value *float64 `json:"value" yaml:"value"` }
An object that represents a duration of time.
TODO: EXAMPLE
type CfnRoute_GrpcRetryPolicyProperty ¶
type CfnRoute_GrpcRetryPolicyProperty struct { // The maximum number of retry attempts. MaxRetries *float64 `json:"maxRetries" yaml:"maxRetries"` // The timeout for each retry attempt. PerRetryTimeout interface{} `json:"perRetryTimeout" yaml:"perRetryTimeout"` // Specify at least one of the valid values. GrpcRetryEvents *[]*string `json:"grpcRetryEvents" yaml:"grpcRetryEvents"` // Specify at least one of the following values. // // - *server-error* – HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511 // - *gateway-error* – HTTP status codes 502, 503, and 504 // - *client-error* – HTTP status code 409 // - *stream-error* – Retry on refused stream HttpRetryEvents *[]*string `json:"httpRetryEvents" yaml:"httpRetryEvents"` // Specify a valid value. // // The event occurs before any processing of a request has started and is encountered when the upstream is temporarily or permanently unavailable. TcpRetryEvents *[]*string `json:"tcpRetryEvents" yaml:"tcpRetryEvents"` }
An object that represents a retry policy.
Specify at least one value for at least one of the types of `RetryEvents` , a value for `maxRetries` , and a value for `perRetryTimeout` . Both `server-error` and `gateway-error` under `httpRetryEvents` include the Envoy `reset` policy. For more information on the `reset` policy, see the [Envoy documentation](https://docs.aws.amazon.com/https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/router_filter#x-envoy-retry-on) .
TODO: EXAMPLE
type CfnRoute_GrpcRouteActionProperty ¶
type CfnRoute_GrpcRouteActionProperty struct {
// An object that represents the targets that traffic is routed to when a request matches the route.
WeightedTargets interface{} `json:"weightedTargets" yaml:"weightedTargets"`
}
An object that represents the action to take if a match is determined.
TODO: EXAMPLE
type CfnRoute_GrpcRouteMatchProperty ¶
type CfnRoute_GrpcRouteMatchProperty struct { // An object that represents the data to match from the request. Metadata interface{} `json:"metadata" yaml:"metadata"` // The method name to match from the request. // // If you specify a name, you must also specify a `serviceName` . MethodName *string `json:"methodName" yaml:"methodName"` // The fully qualified domain name for the service to match from the request. ServiceName *string `json:"serviceName" yaml:"serviceName"` }
An object that represents the criteria for determining a request match.
TODO: EXAMPLE
type CfnRoute_GrpcRouteMetadataMatchMethodProperty ¶
type CfnRoute_GrpcRouteMetadataMatchMethodProperty struct { // The value sent by the client must match the specified value exactly. Exact *string `json:"exact" yaml:"exact"` // The value sent by the client must begin with the specified characters. Prefix *string `json:"prefix" yaml:"prefix"` // An object that represents the range of values to match on. Range interface{} `json:"range" yaml:"range"` // The value sent by the client must include the specified characters. Regex *string `json:"regex" yaml:"regex"` // The value sent by the client must end with the specified characters. Suffix *string `json:"suffix" yaml:"suffix"` }
An object that represents the match method.
Specify one of the match values.
TODO: EXAMPLE
type CfnRoute_GrpcRouteMetadataProperty ¶
type CfnRoute_GrpcRouteMetadataProperty struct { // The name of the route. Name *string `json:"name" yaml:"name"` // Specify `True` to match anything except the match criteria. // // The default value is `False` . Invert interface{} `json:"invert" yaml:"invert"` // An object that represents the data to match from the request. Match interface{} `json:"match" yaml:"match"` }
An object that represents the match metadata for the route.
TODO: EXAMPLE
type CfnRoute_GrpcRouteProperty ¶
type CfnRoute_GrpcRouteProperty struct { // An object that represents the action to take if a match is determined. Action interface{} `json:"action" yaml:"action"` // An object that represents the criteria for determining a request match. Match interface{} `json:"match" yaml:"match"` // An object that represents a retry policy. RetryPolicy interface{} `json:"retryPolicy" yaml:"retryPolicy"` // An object that represents types of timeouts. Timeout interface{} `json:"timeout" yaml:"timeout"` }
An object that represents a gRPC route type.
TODO: EXAMPLE
type CfnRoute_GrpcTimeoutProperty ¶
type CfnRoute_GrpcTimeoutProperty struct { // An object that represents an idle timeout. // // An idle timeout bounds the amount of time that a connection may be idle. The default value is none. Idle interface{} `json:"idle" yaml:"idle"` // An object that represents a per request timeout. // // The default value is 15 seconds. If you set a higher timeout, then make sure that the higher value is set for each App Mesh resource in a conversation. For example, if a virtual node backend uses a virtual router provider to route to another virtual node, then the timeout should be greater than 15 seconds for the source and destination virtual node and the route. PerRequest interface{} `json:"perRequest" yaml:"perRequest"` }
An object that represents types of timeouts.
TODO: EXAMPLE
type CfnRoute_HeaderMatchMethodProperty ¶
type CfnRoute_HeaderMatchMethodProperty struct { // The value sent by the client must match the specified value exactly. Exact *string `json:"exact" yaml:"exact"` // The value sent by the client must begin with the specified characters. Prefix *string `json:"prefix" yaml:"prefix"` // An object that represents the range of values to match on. Range interface{} `json:"range" yaml:"range"` // The value sent by the client must include the specified characters. Regex *string `json:"regex" yaml:"regex"` // The value sent by the client must end with the specified characters. Suffix *string `json:"suffix" yaml:"suffix"` }
An object that represents the method and value to match with the header value sent in a request.
Specify one match method.
TODO: EXAMPLE
type CfnRoute_HttpPathMatchProperty ¶
type CfnRoute_HttpPathMatchProperty struct { // The exact path to match on. Exact *string `json:"exact" yaml:"exact"` // The regex used to match the path. Regex *string `json:"regex" yaml:"regex"` }
An object representing the path to match in the request.
TODO: EXAMPLE
type CfnRoute_HttpQueryParameterMatchProperty ¶
type CfnRoute_HttpQueryParameterMatchProperty struct { // The exact query parameter to match on. Exact *string `json:"exact" yaml:"exact"` }
An object representing the query parameter to match.
TODO: EXAMPLE
type CfnRoute_HttpRetryPolicyProperty ¶
type CfnRoute_HttpRetryPolicyProperty struct { // The maximum number of retry attempts. MaxRetries *float64 `json:"maxRetries" yaml:"maxRetries"` // The timeout for each retry attempt. PerRetryTimeout interface{} `json:"perRetryTimeout" yaml:"perRetryTimeout"` // Specify at least one of the following values. // // - *server-error* – HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511 // - *gateway-error* – HTTP status codes 502, 503, and 504 // - *client-error* – HTTP status code 409 // - *stream-error* – Retry on refused stream HttpRetryEvents *[]*string `json:"httpRetryEvents" yaml:"httpRetryEvents"` // Specify a valid value. // // The event occurs before any processing of a request has started and is encountered when the upstream is temporarily or permanently unavailable. TcpRetryEvents *[]*string `json:"tcpRetryEvents" yaml:"tcpRetryEvents"` }
An object that represents a retry policy.
Specify at least one value for at least one of the types of `RetryEvents` , a value for `maxRetries` , and a value for `perRetryTimeout` . Both `server-error` and `gateway-error` under `httpRetryEvents` include the Envoy `reset` policy. For more information on the `reset` policy, see the [Envoy documentation](https://docs.aws.amazon.com/https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/router_filter#x-envoy-retry-on) .
TODO: EXAMPLE
type CfnRoute_HttpRouteActionProperty ¶
type CfnRoute_HttpRouteActionProperty struct {
// An object that represents the targets that traffic is routed to when a request matches the route.
WeightedTargets interface{} `json:"weightedTargets" yaml:"weightedTargets"`
}
An object that represents the action to take if a match is determined.
TODO: EXAMPLE
type CfnRoute_HttpRouteHeaderProperty ¶
type CfnRoute_HttpRouteHeaderProperty struct { // A name for the HTTP header in the client request that will be matched on. Name *string `json:"name" yaml:"name"` // Specify `True` to match anything except the match criteria. // // The default value is `False` . Invert interface{} `json:"invert" yaml:"invert"` // The `HeaderMatchMethod` object. Match interface{} `json:"match" yaml:"match"` }
An object that represents the HTTP header in the request.
TODO: EXAMPLE
type CfnRoute_HttpRouteMatchProperty ¶
type CfnRoute_HttpRouteMatchProperty struct { // The client request headers to match on. Headers interface{} `json:"headers" yaml:"headers"` // The client request method to match on. // // Specify only one. Method *string `json:"method" yaml:"method"` // The client request path to match on. Path interface{} `json:"path" yaml:"path"` // Specifies the path to match requests with. // // This parameter must always start with `/` , which by itself matches all requests to the virtual service name. You can also match for path-based routing of requests. For example, if your virtual service name is `my-service.local` and you want the route to match requests to `my-service.local/metrics` , your prefix should be `/metrics` . Prefix *string `json:"prefix" yaml:"prefix"` // The client request query parameters to match on. QueryParameters interface{} `json:"queryParameters" yaml:"queryParameters"` // The client request scheme to match on. // // Specify only one. Applicable only for HTTP2 routes. Scheme *string `json:"scheme" yaml:"scheme"` }
An object that represents the requirements for a route to match HTTP requests for a virtual router.
TODO: EXAMPLE
type CfnRoute_HttpRouteProperty ¶
type CfnRoute_HttpRouteProperty struct { // An object that represents the action to take if a match is determined. Action interface{} `json:"action" yaml:"action"` // An object that represents the criteria for determining a request match. Match interface{} `json:"match" yaml:"match"` // An object that represents a retry policy. RetryPolicy interface{} `json:"retryPolicy" yaml:"retryPolicy"` // An object that represents types of timeouts. Timeout interface{} `json:"timeout" yaml:"timeout"` }
An object that represents an HTTP or HTTP/2 route type.
TODO: EXAMPLE
type CfnRoute_HttpTimeoutProperty ¶
type CfnRoute_HttpTimeoutProperty struct { // An object that represents an idle timeout. // // An idle timeout bounds the amount of time that a connection may be idle. The default value is none. Idle interface{} `json:"idle" yaml:"idle"` // An object that represents a per request timeout. // // The default value is 15 seconds. If you set a higher timeout, then make sure that the higher value is set for each App Mesh resource in a conversation. For example, if a virtual node backend uses a virtual router provider to route to another virtual node, then the timeout should be greater than 15 seconds for the source and destination virtual node and the route. PerRequest interface{} `json:"perRequest" yaml:"perRequest"` }
An object that represents types of timeouts.
TODO: EXAMPLE
type CfnRoute_MatchRangeProperty ¶
type CfnRoute_MatchRangeProperty struct { // The end of the range. End *float64 `json:"end" yaml:"end"` // The start of the range. Start *float64 `json:"start" yaml:"start"` }
An object that represents the range of values to match on.
The first character of the range is included in the range, though the last character is not. For example, if the range specified were 1-100, only values 1-99 would be matched.
TODO: EXAMPLE
type CfnRoute_QueryParameterProperty ¶
type CfnRoute_QueryParameterProperty struct { // A name for the query parameter that will be matched on. Name *string `json:"name" yaml:"name"` // The query parameter to match on. Match interface{} `json:"match" yaml:"match"` }
An object that represents the query parameter in the request.
TODO: EXAMPLE
type CfnRoute_RouteSpecProperty ¶
type CfnRoute_RouteSpecProperty struct { // An object that represents the specification of a gRPC route. GrpcRoute interface{} `json:"grpcRoute" yaml:"grpcRoute"` // An object that represents the specification of an HTTP/2 route. Http2Route interface{} `json:"http2Route" yaml:"http2Route"` // An object that represents the specification of an HTTP route. HttpRoute interface{} `json:"httpRoute" yaml:"httpRoute"` // The priority for the route. // // Routes are matched based on the specified value, where 0 is the highest priority. Priority *float64 `json:"priority" yaml:"priority"` // An object that represents the specification of a TCP route. TcpRoute interface{} `json:"tcpRoute" yaml:"tcpRoute"` }
An object that represents a route specification.
Specify one route type.
TODO: EXAMPLE
type CfnRoute_TcpRouteActionProperty ¶
type CfnRoute_TcpRouteActionProperty struct {
// An object that represents the targets that traffic is routed to when a request matches the route.
WeightedTargets interface{} `json:"weightedTargets" yaml:"weightedTargets"`
}
An object that represents the action to take if a match is determined.
TODO: EXAMPLE
type CfnRoute_TcpRouteProperty ¶
type CfnRoute_TcpRouteProperty struct { // The action to take if a match is determined. Action interface{} `json:"action" yaml:"action"` // An object that represents types of timeouts. Timeout interface{} `json:"timeout" yaml:"timeout"` }
An object that represents a TCP route type.
TODO: EXAMPLE
type CfnRoute_TcpTimeoutProperty ¶
type CfnRoute_TcpTimeoutProperty struct { // An object that represents an idle timeout. // // An idle timeout bounds the amount of time that a connection may be idle. The default value is none. Idle interface{} `json:"idle" yaml:"idle"` }
An object that represents types of timeouts.
TODO: EXAMPLE
type CfnRoute_WeightedTargetProperty ¶
type CfnRoute_WeightedTargetProperty struct { // The virtual node to associate with the weighted target. VirtualNode *string `json:"virtualNode" yaml:"virtualNode"` // The relative weight of the weighted target. Weight *float64 `json:"weight" yaml:"weight"` }
An object that represents a target and its relative weight.
Traffic is distributed across targets according to their relative weight. For example, a weighted target with a relative weight of 50 receives five times as much traffic as one with a relative weight of 10. The total weight for all targets combined must be less than or equal to 100.
TODO: EXAMPLE
type CfnVirtualGateway ¶
type CfnVirtualGateway interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string AttrMeshName() *string AttrMeshOwner() *string AttrResourceOwner() *string AttrUid() *string AttrVirtualGatewayName() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string LogicalId() *string MeshName() *string SetMeshName(val *string) MeshOwner() *string SetMeshOwner(val *string) Node() awscdk.ConstructNode Ref() *string Spec() interface{} SetSpec(val interface{}) Stack() awscdk.Stack Tags() awscdk.TagManager UpdatedProperites() *map[string]interface{} VirtualGatewayName() *string SetVirtualGatewayName(val *string) AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string OverrideLogicalId(newLogicalId *string) Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AppMesh::VirtualGateway`.
Creates a virtual gateway.
A virtual gateway allows resources outside your mesh to communicate to resources that are inside your mesh. The virtual gateway represents an Envoy proxy running in an Amazon ECS task, in a Kubernetes service, or on an Amazon EC2 instance. Unlike a virtual node, which represents an Envoy running with an application, a virtual gateway represents Envoy deployed by itself.
For more information about virtual gateways, see [Virtual gateways](https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html) .
TODO: EXAMPLE
func NewCfnVirtualGateway ¶
func NewCfnVirtualGateway(scope awscdk.Construct, id *string, props *CfnVirtualGatewayProps) CfnVirtualGateway
Create a new `AWS::AppMesh::VirtualGateway`.
type CfnVirtualGatewayProps ¶
type CfnVirtualGatewayProps struct { // The name of the service mesh that the virtual gateway resides in. MeshName *string `json:"meshName" yaml:"meshName"` // The specifications of the virtual gateway. Spec interface{} `json:"spec" yaml:"spec"` // The AWS IAM account ID of the service mesh owner. // // If the account ID is not your own, then it's the ID of the account that shared the mesh with your account. For more information about mesh sharing, see [Working with shared meshes](https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html) . MeshOwner *string `json:"meshOwner" yaml:"meshOwner"` // Optional metadata that you can apply to the virtual gateway to assist with categorization and organization. // // Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` // The name of the virtual gateway. VirtualGatewayName *string `json:"virtualGatewayName" yaml:"virtualGatewayName"` }
Properties for defining a `CfnVirtualGateway`.
TODO: EXAMPLE
type CfnVirtualGateway_SubjectAlternativeNameMatchersProperty ¶
type CfnVirtualGateway_SubjectAlternativeNameMatchersProperty struct { // The values sent must match the specified values exactly. Exact *[]*string `json:"exact" yaml:"exact"` }
An object that represents the methods by which a subject alternative name on a peer Transport Layer Security (TLS) certificate can be matched.
TODO: EXAMPLE
type CfnVirtualGateway_SubjectAlternativeNamesProperty ¶
type CfnVirtualGateway_SubjectAlternativeNamesProperty struct {
// An object that represents the criteria for determining a SANs match.
Match interface{} `json:"match" yaml:"match"`
}
An object that represents the subject alternative names secured by the certificate.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayAccessLogProperty ¶
type CfnVirtualGateway_VirtualGatewayAccessLogProperty struct {
// The file object to send virtual gateway access logs to.
File interface{} `json:"file" yaml:"file"`
}
The access log configuration for a virtual gateway.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayBackendDefaultsProperty ¶
type CfnVirtualGateway_VirtualGatewayBackendDefaultsProperty struct {
// A reference to an object that represents a client policy.
ClientPolicy interface{} `json:"clientPolicy" yaml:"clientPolicy"`
}
An object that represents the default properties for a backend.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayClientPolicyProperty ¶
type CfnVirtualGateway_VirtualGatewayClientPolicyProperty struct {
// A reference to an object that represents a Transport Layer Security (TLS) client policy.
Tls interface{} `json:"tls" yaml:"tls"`
}
An object that represents a client policy.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayClientPolicyTlsProperty ¶
type CfnVirtualGateway_VirtualGatewayClientPolicyTlsProperty struct { // A reference to an object that represents a Transport Layer Security (TLS) validation context. Validation interface{} `json:"validation" yaml:"validation"` // A reference to an object that represents a virtual gateway's client's Transport Layer Security (TLS) certificate. Certificate interface{} `json:"certificate" yaml:"certificate"` // Whether the policy is enforced. // // The default is `True` , if a value isn't specified. Enforce interface{} `json:"enforce" yaml:"enforce"` // One or more ports that the policy is enforced for. Ports interface{} `json:"ports" yaml:"ports"` }
An object that represents a Transport Layer Security (TLS) client policy.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayClientTlsCertificateProperty ¶
type CfnVirtualGateway_VirtualGatewayClientTlsCertificateProperty struct { // An object that represents a local file certificate. // // The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see [Transport Layer Security (TLS)](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html) . File interface{} `json:"file" yaml:"file"` // A reference to an object that represents a virtual gateway's client's Secret Discovery Service certificate. Sds interface{} `json:"sds" yaml:"sds"` }
An object that represents the virtual gateway's client's Transport Layer Security (TLS) certificate.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayConnectionPoolProperty ¶
type CfnVirtualGateway_VirtualGatewayConnectionPoolProperty struct { // An object that represents a type of connection pool. Grpc interface{} `json:"grpc" yaml:"grpc"` // An object that represents a type of connection pool. Http interface{} `json:"http" yaml:"http"` // An object that represents a type of connection pool. Http2 interface{} `json:"http2" yaml:"http2"` }
An object that represents the type of virtual gateway connection pool.
Only one protocol is used at a time and should be the same protocol as the one chosen under port mapping.
If not present the default value for `maxPendingRequests` is `2147483647` .
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayFileAccessLogProperty ¶
type CfnVirtualGateway_VirtualGatewayFileAccessLogProperty struct { // The file path to write access logs to. // // You can use `/dev/stdout` to send access logs to standard out and configure your Envoy container to use a log driver, such as `awslogs` , to export the access logs to a log storage service such as Amazon CloudWatch Logs. You can also specify a path in the Envoy container's file system to write the files to disk. Path *string `json:"path" yaml:"path"` }
An object that represents an access log file.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayGrpcConnectionPoolProperty ¶
type CfnVirtualGateway_VirtualGatewayGrpcConnectionPoolProperty struct { // Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. MaxRequests *float64 `json:"maxRequests" yaml:"maxRequests"` }
An object that represents a type of connection pool.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayHealthCheckPolicyProperty ¶
type CfnVirtualGateway_VirtualGatewayHealthCheckPolicyProperty struct { // The number of consecutive successful health checks that must occur before declaring the listener healthy. HealthyThreshold *float64 `json:"healthyThreshold" yaml:"healthyThreshold"` // The time period in milliseconds between each health check execution. IntervalMillis *float64 `json:"intervalMillis" yaml:"intervalMillis"` // The protocol for the health check request. // // If you specify `grpc` , then your service must conform to the [GRPC Health Checking Protocol](https://docs.aws.amazon.com/https://github.com/grpc/grpc/blob/master/doc/health-checking.md) . Protocol *string `json:"protocol" yaml:"protocol"` // The amount of time to wait when receiving a response from the health check, in milliseconds. TimeoutMillis *float64 `json:"timeoutMillis" yaml:"timeoutMillis"` // The number of consecutive failed health checks that must occur before declaring a virtual gateway unhealthy. UnhealthyThreshold *float64 `json:"unhealthyThreshold" yaml:"unhealthyThreshold"` // The destination path for the health check request. // // This value is only used if the specified protocol is HTTP or HTTP/2. For any other protocol, this value is ignored. Path *string `json:"path" yaml:"path"` // The destination port for the health check request. // // This port must match the port defined in the `PortMapping` for the listener. Port *float64 `json:"port" yaml:"port"` }
An object that represents the health check policy for a virtual gateway's listener.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayHttp2ConnectionPoolProperty ¶
type CfnVirtualGateway_VirtualGatewayHttp2ConnectionPoolProperty struct { // Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. MaxRequests *float64 `json:"maxRequests" yaml:"maxRequests"` }
An object that represents a type of connection pool.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayHttpConnectionPoolProperty ¶
type CfnVirtualGateway_VirtualGatewayHttpConnectionPoolProperty struct { // Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. MaxConnections *float64 `json:"maxConnections" yaml:"maxConnections"` // Number of overflowing requests after `max_connections` Envoy will queue to upstream cluster. MaxPendingRequests *float64 `json:"maxPendingRequests" yaml:"maxPendingRequests"` }
An object that represents a type of connection pool.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayListenerProperty ¶
type CfnVirtualGateway_VirtualGatewayListenerProperty struct { // The port mapping information for the listener. PortMapping interface{} `json:"portMapping" yaml:"portMapping"` // The connection pool information for the listener. ConnectionPool interface{} `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. HealthCheck interface{} `json:"healthCheck" yaml:"healthCheck"` // A reference to an object that represents the Transport Layer Security (TLS) properties for the listener. Tls interface{} `json:"tls" yaml:"tls"` }
An object that represents a listener for a virtual gateway.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayListenerTlsAcmCertificateProperty ¶
type CfnVirtualGateway_VirtualGatewayListenerTlsAcmCertificateProperty struct { // The Amazon Resource Name (ARN) for the certificate. // // The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see [Transport Layer Security (TLS)](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites) . CertificateArn *string `json:"certificateArn" yaml:"certificateArn"` }
An object that represents an AWS Certificate Manager certificate.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayListenerTlsCertificateProperty ¶
type CfnVirtualGateway_VirtualGatewayListenerTlsCertificateProperty struct { // A reference to an object that represents an AWS Certificate Manager certificate. Acm interface{} `json:"acm" yaml:"acm"` // A reference to an object that represents a local file certificate. File interface{} `json:"file" yaml:"file"` // A reference to an object that represents a virtual gateway's listener's Secret Discovery Service certificate. Sds interface{} `json:"sds" yaml:"sds"` }
An object that represents a listener's Transport Layer Security (TLS) certificate.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayListenerTlsFileCertificateProperty ¶
type CfnVirtualGateway_VirtualGatewayListenerTlsFileCertificateProperty struct { // The certificate chain for the certificate. CertificateChain *string `json:"certificateChain" yaml:"certificateChain"` // The private key for a certificate stored on the file system of the mesh endpoint that the proxy is running on. PrivateKey *string `json:"privateKey" yaml:"privateKey"` }
An object that represents a local file certificate.
The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see [Transport Layer Security (TLS)](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites) .
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayListenerTlsProperty ¶
type CfnVirtualGateway_VirtualGatewayListenerTlsProperty struct { // An object that represents a Transport Layer Security (TLS) certificate. Certificate interface{} `json:"certificate" yaml:"certificate"` // Specify one of the following modes. // // - ** STRICT – Listener only accepts connections with TLS enabled. // - ** PERMISSIVE – Listener accepts connections with or without TLS enabled. // - ** DISABLED – Listener only accepts connections without TLS. Mode *string `json:"mode" yaml:"mode"` // A reference to an object that represents a virtual gateway's listener's Transport Layer Security (TLS) validation context. Validation interface{} `json:"validation" yaml:"validation"` }
An object that represents the Transport Layer Security (TLS) properties for a listener.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayListenerTlsSdsCertificateProperty ¶
type CfnVirtualGateway_VirtualGatewayListenerTlsSdsCertificateProperty struct { // A reference to an object that represents the name of the secret secret requested from the Secret Discovery Service provider representing Transport Layer Security (TLS) materials like a certificate or certificate chain. SecretName *string `json:"secretName" yaml:"secretName"` }
An object that represents the virtual gateway's listener's Secret Discovery Service certificate.The proxy must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh [TLS documentation](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html) for more info.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextProperty ¶
type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextProperty struct { // A reference to where to retrieve the trust chain when validating a peer’s Transport Layer Security (TLS) certificate. Trust interface{} `json:"trust" yaml:"trust"` // A reference to an object that represents the SANs for a virtual gateway listener's Transport Layer Security (TLS) validation context. SubjectAlternativeNames interface{} `json:"subjectAlternativeNames" yaml:"subjectAlternativeNames"` }
An object that represents a virtual gateway's listener's Transport Layer Security (TLS) validation context.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextTrustProperty ¶
type CfnVirtualGateway_VirtualGatewayListenerTlsValidationContextTrustProperty struct { // An object that represents a Transport Layer Security (TLS) validation context trust for a local file. File interface{} `json:"file" yaml:"file"` // A reference to an object that represents a virtual gateway's listener's Transport Layer Security (TLS) Secret Discovery Service validation context trust. Sds interface{} `json:"sds" yaml:"sds"` }
An object that represents a virtual gateway's listener's Transport Layer Security (TLS) validation context trust.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayLoggingProperty ¶
type CfnVirtualGateway_VirtualGatewayLoggingProperty struct {
// The access log configuration.
AccessLog interface{} `json:"accessLog" yaml:"accessLog"`
}
An object that represents logging information.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayPortMappingProperty ¶
type CfnVirtualGateway_VirtualGatewayPortMappingProperty struct { // The port used for the port mapping. // // Specify one protocol. Port *float64 `json:"port" yaml:"port"` // The protocol used for the port mapping. Protocol *string `json:"protocol" yaml:"protocol"` }
An object that represents a port mapping.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewaySpecProperty ¶
type CfnVirtualGateway_VirtualGatewaySpecProperty struct { // The listeners that the mesh endpoint is expected to receive inbound traffic from. // // You can specify one listener. Listeners interface{} `json:"listeners" yaml:"listeners"` // A reference to an object that represents the defaults for backends. BackendDefaults interface{} `json:"backendDefaults" yaml:"backendDefaults"` // An object that represents logging information. Logging interface{} `json:"logging" yaml:"logging"` }
An object that represents the specification of a service mesh resource.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayTlsValidationContextAcmTrustProperty ¶
type CfnVirtualGateway_VirtualGatewayTlsValidationContextAcmTrustProperty struct { // One or more ACM Amazon Resource Name (ARN)s. CertificateAuthorityArns *[]*string `json:"certificateAuthorityArns" yaml:"certificateAuthorityArns"` }
An object that represents a Transport Layer Security (TLS) validation context trust for an AWS Certificate Manager certificate.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayTlsValidationContextFileTrustProperty ¶
type CfnVirtualGateway_VirtualGatewayTlsValidationContextFileTrustProperty struct { // The certificate trust chain for a certificate stored on the file system of the virtual node that the proxy is running on. CertificateChain *string `json:"certificateChain" yaml:"certificateChain"` }
An object that represents a Transport Layer Security (TLS) validation context trust for a local file.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayTlsValidationContextProperty ¶
type CfnVirtualGateway_VirtualGatewayTlsValidationContextProperty struct { // A reference to where to retrieve the trust chain when validating a peer’s Transport Layer Security (TLS) certificate. Trust interface{} `json:"trust" yaml:"trust"` // A reference to an object that represents the SANs for a virtual gateway's listener's Transport Layer Security (TLS) validation context. SubjectAlternativeNames interface{} `json:"subjectAlternativeNames" yaml:"subjectAlternativeNames"` }
An object that represents a Transport Layer Security (TLS) validation context.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayTlsValidationContextSdsTrustProperty ¶
type CfnVirtualGateway_VirtualGatewayTlsValidationContextSdsTrustProperty struct { // A reference to an object that represents the name of the secret for a virtual gateway's Transport Layer Security (TLS) Secret Discovery Service validation context trust. SecretName *string `json:"secretName" yaml:"secretName"` }
An object that represents a virtual gateway's listener's Transport Layer Security (TLS) Secret Discovery Service validation context trust.
The proxy must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh [TLS documentation](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html) for more info.
TODO: EXAMPLE
type CfnVirtualGateway_VirtualGatewayTlsValidationContextTrustProperty ¶
type CfnVirtualGateway_VirtualGatewayTlsValidationContextTrustProperty struct { // A reference to an object that represents a Transport Layer Security (TLS) validation context trust for an AWS Certificate Manager certificate. Acm interface{} `json:"acm" yaml:"acm"` // An object that represents a Transport Layer Security (TLS) validation context trust for a local file. File interface{} `json:"file" yaml:"file"` // A reference to an object that represents a virtual gateway's Transport Layer Security (TLS) Secret Discovery Service validation context trust. Sds interface{} `json:"sds" yaml:"sds"` }
An object that represents a Transport Layer Security (TLS) validation context trust.
TODO: EXAMPLE
type CfnVirtualNode ¶
type CfnVirtualNode interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string AttrMeshName() *string AttrMeshOwner() *string AttrResourceOwner() *string AttrUid() *string AttrVirtualNodeName() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string LogicalId() *string MeshName() *string SetMeshName(val *string) MeshOwner() *string SetMeshOwner(val *string) Node() awscdk.ConstructNode Ref() *string Spec() interface{} SetSpec(val interface{}) Stack() awscdk.Stack Tags() awscdk.TagManager UpdatedProperites() *map[string]interface{} VirtualNodeName() *string SetVirtualNodeName(val *string) AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string OverrideLogicalId(newLogicalId *string) Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AppMesh::VirtualNode`.
Creates a virtual node within a service mesh.
A virtual node acts as a logical pointer to a particular task group, such as an Amazon ECS service or a Kubernetes deployment. When you create a virtual node, you can specify the service discovery information for your task group, and whether the proxy running in a task group will communicate with other proxies using Transport Layer Security (TLS).
You define a `listener` for any inbound traffic that your virtual node expects. Any virtual service that your virtual node expects to communicate to is specified as a `backend` .
The response metadata for your new virtual node contains the `arn` that is associated with the virtual node. Set this value to the full ARN; for example, `arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp` ) as the `APPMESH_RESOURCE_ARN` environment variable for your task group's Envoy proxy container in your task definition or pod spec. This is then mapped to the `node.id` and `node.cluster` Envoy parameters.
> By default, App Mesh uses the name of the resource you specified in `APPMESH_RESOURCE_ARN` when Envoy is referring to itself in metrics and traces. You can override this behavior by setting the `APPMESH_RESOURCE_CLUSTER` environment variable with your own name.
For more information about virtual nodes, see [Virtual nodes](https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_nodes.html) . You must be using `1.15.0` or later of the Envoy image when setting these variables. For more information about App Mesh Envoy variables, see [Envoy image](https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy.html) in the AWS App Mesh User Guide.
TODO: EXAMPLE
func NewCfnVirtualNode ¶
func NewCfnVirtualNode(scope awscdk.Construct, id *string, props *CfnVirtualNodeProps) CfnVirtualNode
Create a new `AWS::AppMesh::VirtualNode`.
type CfnVirtualNodeProps ¶
type CfnVirtualNodeProps struct { // The name of the service mesh to create the virtual node in. MeshName *string `json:"meshName" yaml:"meshName"` // The virtual node specification to apply. Spec interface{} `json:"spec" yaml:"spec"` // The AWS IAM account ID of the service mesh owner. // // If the account ID is not your own, then the account that you specify must share the mesh with your account before you can create the resource in the service mesh. For more information about mesh sharing, see [Working with shared meshes](https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html) . MeshOwner *string `json:"meshOwner" yaml:"meshOwner"` // Optional metadata that you can apply to the virtual node to assist with categorization and organization. // // Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` // The name to use for the virtual node. VirtualNodeName *string `json:"virtualNodeName" yaml:"virtualNodeName"` }
Properties for defining a `CfnVirtualNode`.
TODO: EXAMPLE
type CfnVirtualNode_AccessLogProperty ¶
type CfnVirtualNode_AccessLogProperty struct {
// The file object to send virtual node access logs to.
File interface{} `json:"file" yaml:"file"`
}
An object that represents the access logging information for a virtual node.
TODO: EXAMPLE
type CfnVirtualNode_AwsCloudMapInstanceAttributeProperty ¶
type CfnVirtualNode_AwsCloudMapInstanceAttributeProperty struct { // The name of an AWS Cloud Map service instance attribute key. // // Any AWS Cloud Map service instance that contains the specified key and value is returned. Key *string `json:"key" yaml:"key"` // The value of an AWS Cloud Map service instance attribute key. // // Any AWS Cloud Map service instance that contains the specified key and value is returned. Value *string `json:"value" yaml:"value"` }
An object that represents the AWS Cloud Map attribute information for your virtual node.
> AWS Cloud Map is not available in the eu-south-1 Region.
TODO: EXAMPLE
type CfnVirtualNode_AwsCloudMapServiceDiscoveryProperty ¶
type CfnVirtualNode_AwsCloudMapServiceDiscoveryProperty struct { // The name of the AWS Cloud Map namespace to use. NamespaceName *string `json:"namespaceName" yaml:"namespaceName"` // The name of the AWS Cloud Map service to use. ServiceName *string `json:"serviceName" yaml:"serviceName"` // A string map that contains attributes with values that you can use to filter instances by any custom attribute that you specified when you registered the instance. // // Only instances that match all of the specified key/value pairs will be returned. Attributes interface{} `json:"attributes" yaml:"attributes"` }
An object that represents the AWS Cloud Map service discovery information for your virtual node.
> AWS Cloud Map is not available in the eu-south-1 Region.
TODO: EXAMPLE
type CfnVirtualNode_BackendDefaultsProperty ¶
type CfnVirtualNode_BackendDefaultsProperty struct {
// A reference to an object that represents a client policy.
ClientPolicy interface{} `json:"clientPolicy" yaml:"clientPolicy"`
}
An object that represents the default properties for a backend.
TODO: EXAMPLE
type CfnVirtualNode_BackendProperty ¶
type CfnVirtualNode_BackendProperty struct {
// Specifies a virtual service to use as a backend.
VirtualService interface{} `json:"virtualService" yaml:"virtualService"`
}
An object that represents the backends that a virtual node is expected to send outbound traffic to.
TODO: EXAMPLE
type CfnVirtualNode_ClientPolicyProperty ¶
type CfnVirtualNode_ClientPolicyProperty struct {
// A reference to an object that represents a Transport Layer Security (TLS) client policy.
Tls interface{} `json:"tls" yaml:"tls"`
}
An object that represents a client policy.
TODO: EXAMPLE
type CfnVirtualNode_ClientPolicyTlsProperty ¶
type CfnVirtualNode_ClientPolicyTlsProperty struct { // A reference to an object that represents a TLS validation context. Validation interface{} `json:"validation" yaml:"validation"` // A reference to an object that represents a client's TLS certificate. Certificate interface{} `json:"certificate" yaml:"certificate"` // Whether the policy is enforced. // // The default is `True` , if a value isn't specified. Enforce interface{} `json:"enforce" yaml:"enforce"` // One or more ports that the policy is enforced for. Ports interface{} `json:"ports" yaml:"ports"` }
A reference to an object that represents a Transport Layer Security (TLS) client policy.
TODO: EXAMPLE
type CfnVirtualNode_ClientTlsCertificateProperty ¶
type CfnVirtualNode_ClientTlsCertificateProperty struct { // An object that represents a local file certificate. // // The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see [Transport Layer Security (TLS)](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html) . File interface{} `json:"file" yaml:"file"` // A reference to an object that represents a client's TLS Secret Discovery Service certificate. Sds interface{} `json:"sds" yaml:"sds"` }
An object that represents the client's certificate.
TODO: EXAMPLE
type CfnVirtualNode_DnsServiceDiscoveryProperty ¶
type CfnVirtualNode_DnsServiceDiscoveryProperty struct { // Specifies the DNS service discovery hostname for the virtual node. Hostname *string `json:"hostname" yaml:"hostname"` // Specifies the DNS response type for the virtual node. ResponseType *string `json:"responseType" yaml:"responseType"` }
An object that represents the DNS service discovery information for your virtual node.
TODO: EXAMPLE
type CfnVirtualNode_DurationProperty ¶
type CfnVirtualNode_DurationProperty struct { // A unit of time. Unit *string `json:"unit" yaml:"unit"` // A number of time units. Value *float64 `json:"value" yaml:"value"` }
An object that represents a duration of time.
TODO: EXAMPLE
type CfnVirtualNode_FileAccessLogProperty ¶
type CfnVirtualNode_FileAccessLogProperty struct { // The file path to write access logs to. // // You can use `/dev/stdout` to send access logs to standard out and configure your Envoy container to use a log driver, such as `awslogs` , to export the access logs to a log storage service such as Amazon CloudWatch Logs. You can also specify a path in the Envoy container's file system to write the files to disk. // // > The Envoy process must have write permissions to the path that you specify here. Otherwise, Envoy fails to bootstrap properly. Path *string `json:"path" yaml:"path"` }
An object that represents an access log file.
TODO: EXAMPLE
type CfnVirtualNode_GrpcTimeoutProperty ¶
type CfnVirtualNode_GrpcTimeoutProperty struct { // An object that represents an idle timeout. // // An idle timeout bounds the amount of time that a connection may be idle. The default value is none. Idle interface{} `json:"idle" yaml:"idle"` // An object that represents a per request timeout. // // The default value is 15 seconds. If you set a higher timeout, then make sure that the higher value is set for each App Mesh resource in a conversation. For example, if a virtual node backend uses a virtual router provider to route to another virtual node, then the timeout should be greater than 15 seconds for the source and destination virtual node and the route. PerRequest interface{} `json:"perRequest" yaml:"perRequest"` }
An object that represents types of timeouts.
TODO: EXAMPLE
type CfnVirtualNode_HealthCheckProperty ¶
type CfnVirtualNode_HealthCheckProperty struct { // The number of consecutive successful health checks that must occur before declaring listener healthy. HealthyThreshold *float64 `json:"healthyThreshold" yaml:"healthyThreshold"` // The time period in milliseconds between each health check execution. IntervalMillis *float64 `json:"intervalMillis" yaml:"intervalMillis"` // The protocol for the health check request. // // If you specify `grpc` , then your service must conform to the [GRPC Health Checking Protocol](https://docs.aws.amazon.com/https://github.com/grpc/grpc/blob/master/doc/health-checking.md) . Protocol *string `json:"protocol" yaml:"protocol"` // The amount of time to wait when receiving a response from the health check, in milliseconds. TimeoutMillis *float64 `json:"timeoutMillis" yaml:"timeoutMillis"` // The number of consecutive failed health checks that must occur before declaring a virtual node unhealthy. UnhealthyThreshold *float64 `json:"unhealthyThreshold" yaml:"unhealthyThreshold"` // The destination path for the health check request. // // This value is only used if the specified protocol is HTTP or HTTP/2. For any other protocol, this value is ignored. Path *string `json:"path" yaml:"path"` // The destination port for the health check request. // // This port must match the port defined in the `PortMapping` for the listener. Port *float64 `json:"port" yaml:"port"` }
An object that represents the health check policy for a virtual node's listener.
TODO: EXAMPLE
type CfnVirtualNode_HttpTimeoutProperty ¶
type CfnVirtualNode_HttpTimeoutProperty struct { // An object that represents an idle timeout. // // An idle timeout bounds the amount of time that a connection may be idle. The default value is none. Idle interface{} `json:"idle" yaml:"idle"` // An object that represents a per request timeout. // // The default value is 15 seconds. If you set a higher timeout, then make sure that the higher value is set for each App Mesh resource in a conversation. For example, if a virtual node backend uses a virtual router provider to route to another virtual node, then the timeout should be greater than 15 seconds for the source and destination virtual node and the route. PerRequest interface{} `json:"perRequest" yaml:"perRequest"` }
An object that represents types of timeouts.
TODO: EXAMPLE
type CfnVirtualNode_ListenerProperty ¶
type CfnVirtualNode_ListenerProperty struct { // The port mapping information for the listener. PortMapping interface{} `json:"portMapping" yaml:"portMapping"` // The connection pool information for the listener. ConnectionPool interface{} `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. HealthCheck interface{} `json:"healthCheck" yaml:"healthCheck"` // The outlier detection information for the listener. OutlierDetection interface{} `json:"outlierDetection" yaml:"outlierDetection"` // An object that represents timeouts for different protocols. Timeout interface{} `json:"timeout" yaml:"timeout"` // A reference to an object that represents the Transport Layer Security (TLS) properties for a listener. Tls interface{} `json:"tls" yaml:"tls"` }
An object that represents a listener for a virtual node.
TODO: EXAMPLE
type CfnVirtualNode_ListenerTimeoutProperty ¶
type CfnVirtualNode_ListenerTimeoutProperty struct { // An object that represents types of timeouts. Grpc interface{} `json:"grpc" yaml:"grpc"` // An object that represents types of timeouts. Http interface{} `json:"http" yaml:"http"` // An object that represents types of timeouts. Http2 interface{} `json:"http2" yaml:"http2"` // An object that represents types of timeouts. Tcp interface{} `json:"tcp" yaml:"tcp"` }
An object that represents timeouts for different protocols.
TODO: EXAMPLE
type CfnVirtualNode_ListenerTlsAcmCertificateProperty ¶
type CfnVirtualNode_ListenerTlsAcmCertificateProperty struct { // The Amazon Resource Name (ARN) for the certificate. // // The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see [Transport Layer Security (TLS)](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites) . CertificateArn *string `json:"certificateArn" yaml:"certificateArn"` }
An object that represents an AWS Certificate Manager certificate.
TODO: EXAMPLE
type CfnVirtualNode_ListenerTlsCertificateProperty ¶
type CfnVirtualNode_ListenerTlsCertificateProperty struct { // A reference to an object that represents an AWS Certificate Manager certificate. Acm interface{} `json:"acm" yaml:"acm"` // A reference to an object that represents a local file certificate. File interface{} `json:"file" yaml:"file"` // A reference to an object that represents a listener's Secret Discovery Service certificate. Sds interface{} `json:"sds" yaml:"sds"` }
An object that represents a listener's Transport Layer Security (TLS) certificate.
TODO: EXAMPLE
type CfnVirtualNode_ListenerTlsFileCertificateProperty ¶
type CfnVirtualNode_ListenerTlsFileCertificateProperty struct { // The certificate chain for the certificate. CertificateChain *string `json:"certificateChain" yaml:"certificateChain"` // The private key for a certificate stored on the file system of the virtual node that the proxy is running on. PrivateKey *string `json:"privateKey" yaml:"privateKey"` }
An object that represents a local file certificate.
The certificate must meet specific requirements and you must have proxy authorization enabled. For more information, see [Transport Layer Security (TLS)](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites) .
TODO: EXAMPLE
type CfnVirtualNode_ListenerTlsProperty ¶
type CfnVirtualNode_ListenerTlsProperty struct { // A reference to an object that represents a listener's Transport Layer Security (TLS) certificate. Certificate interface{} `json:"certificate" yaml:"certificate"` // Specify one of the following modes. // // - ** STRICT – Listener only accepts connections with TLS enabled. // - ** PERMISSIVE – Listener accepts connections with or without TLS enabled. // - ** DISABLED – Listener only accepts connections without TLS. Mode *string `json:"mode" yaml:"mode"` // A reference to an object that represents a listener's Transport Layer Security (TLS) validation context. Validation interface{} `json:"validation" yaml:"validation"` }
An object that represents the Transport Layer Security (TLS) properties for a listener.
TODO: EXAMPLE
type CfnVirtualNode_ListenerTlsSdsCertificateProperty ¶
type CfnVirtualNode_ListenerTlsSdsCertificateProperty struct { // A reference to an object that represents the name of the secret requested from the Secret Discovery Service provider representing Transport Layer Security (TLS) materials like a certificate or certificate chain. SecretName *string `json:"secretName" yaml:"secretName"` }
An object that represents the listener's Secret Discovery Service certificate.
The proxy must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh [TLS documentation](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html) for more info.
TODO: EXAMPLE
type CfnVirtualNode_ListenerTlsValidationContextProperty ¶
type CfnVirtualNode_ListenerTlsValidationContextProperty struct { // A reference to where to retrieve the trust chain when validating a peer’s Transport Layer Security (TLS) certificate. Trust interface{} `json:"trust" yaml:"trust"` // A reference to an object that represents the SANs for a listener's Transport Layer Security (TLS) validation context. SubjectAlternativeNames interface{} `json:"subjectAlternativeNames" yaml:"subjectAlternativeNames"` }
An object that represents a listener's Transport Layer Security (TLS) validation context.
TODO: EXAMPLE
type CfnVirtualNode_ListenerTlsValidationContextTrustProperty ¶
type CfnVirtualNode_ListenerTlsValidationContextTrustProperty struct { // An object that represents a Transport Layer Security (TLS) validation context trust for a local file. File interface{} `json:"file" yaml:"file"` // A reference to an object that represents a listener's Transport Layer Security (TLS) Secret Discovery Service validation context trust. Sds interface{} `json:"sds" yaml:"sds"` }
An object that represents a listener's Transport Layer Security (TLS) validation context trust.
TODO: EXAMPLE
type CfnVirtualNode_LoggingProperty ¶
type CfnVirtualNode_LoggingProperty struct {
// The access log configuration for a virtual node.
AccessLog interface{} `json:"accessLog" yaml:"accessLog"`
}
An object that represents the logging information for a virtual node.
TODO: EXAMPLE
type CfnVirtualNode_OutlierDetectionProperty ¶
type CfnVirtualNode_OutlierDetectionProperty struct { // The base amount of time for which a host is ejected. BaseEjectionDuration interface{} `json:"baseEjectionDuration" yaml:"baseEjectionDuration"` // The time interval between ejection sweep analysis. Interval interface{} `json:"interval" yaml:"interval"` // Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. // // Will eject at least one host regardless of the value. MaxEjectionPercent *float64 `json:"maxEjectionPercent" yaml:"maxEjectionPercent"` // Number of consecutive `5xx` errors required for ejection. MaxServerErrors *float64 `json:"maxServerErrors" yaml:"maxServerErrors"` }
An object that represents the outlier detection for a virtual node's listener.
TODO: EXAMPLE
type CfnVirtualNode_PortMappingProperty ¶
type CfnVirtualNode_PortMappingProperty struct { // The port used for the port mapping. Port *float64 `json:"port" yaml:"port"` // The protocol used for the port mapping. // // Specify `http` , `http2` , `grpc` , or `tcp` . Protocol *string `json:"protocol" yaml:"protocol"` }
An object representing a virtual node or virtual router listener port mapping.
TODO: EXAMPLE
type CfnVirtualNode_ServiceDiscoveryProperty ¶
type CfnVirtualNode_ServiceDiscoveryProperty struct { // Specifies any AWS Cloud Map information for the virtual node. AwsCloudMap interface{} `json:"awsCloudMap" yaml:"awsCloudMap"` // Specifies the DNS information for the virtual node. Dns interface{} `json:"dns" yaml:"dns"` }
An object that represents the service discovery information for a virtual node.
TODO: EXAMPLE
type CfnVirtualNode_SubjectAlternativeNameMatchersProperty ¶
type CfnVirtualNode_SubjectAlternativeNameMatchersProperty struct { // The values sent must match the specified values exactly. Exact *[]*string `json:"exact" yaml:"exact"` }
An object that represents the methods by which a subject alternative name on a peer Transport Layer Security (TLS) certificate can be matched.
TODO: EXAMPLE
type CfnVirtualNode_SubjectAlternativeNamesProperty ¶
type CfnVirtualNode_SubjectAlternativeNamesProperty struct {
// An object that represents the criteria for determining a SANs match.
Match interface{} `json:"match" yaml:"match"`
}
An object that represents the subject alternative names secured by the certificate.
TODO: EXAMPLE
type CfnVirtualNode_TcpTimeoutProperty ¶
type CfnVirtualNode_TcpTimeoutProperty struct { // An object that represents an idle timeout. // // An idle timeout bounds the amount of time that a connection may be idle. The default value is none. Idle interface{} `json:"idle" yaml:"idle"` }
An object that represents types of timeouts.
TODO: EXAMPLE
type CfnVirtualNode_TlsValidationContextAcmTrustProperty ¶
type CfnVirtualNode_TlsValidationContextAcmTrustProperty struct { // One or more ACM Amazon Resource Name (ARN)s. CertificateAuthorityArns *[]*string `json:"certificateAuthorityArns" yaml:"certificateAuthorityArns"` }
An object that represents a Transport Layer Security (TLS) validation context trust for an AWS Certificate Manager certificate.
TODO: EXAMPLE
type CfnVirtualNode_TlsValidationContextFileTrustProperty ¶
type CfnVirtualNode_TlsValidationContextFileTrustProperty struct { // The certificate trust chain for a certificate stored on the file system of the virtual node that the proxy is running on. CertificateChain *string `json:"certificateChain" yaml:"certificateChain"` }
An object that represents a Transport Layer Security (TLS) validation context trust for a local file.
TODO: EXAMPLE
type CfnVirtualNode_TlsValidationContextProperty ¶
type CfnVirtualNode_TlsValidationContextProperty struct { // A reference to where to retrieve the trust chain when validating a peer’s Transport Layer Security (TLS) certificate. Trust interface{} `json:"trust" yaml:"trust"` // A reference to an object that represents the SANs for a Transport Layer Security (TLS) validation context. SubjectAlternativeNames interface{} `json:"subjectAlternativeNames" yaml:"subjectAlternativeNames"` }
An object that represents how the proxy will validate its peer during Transport Layer Security (TLS) negotiation.
TODO: EXAMPLE
type CfnVirtualNode_TlsValidationContextSdsTrustProperty ¶
type CfnVirtualNode_TlsValidationContextSdsTrustProperty struct { // A reference to an object that represents the name of the secret for a Transport Layer Security (TLS) Secret Discovery Service validation context trust. SecretName *string `json:"secretName" yaml:"secretName"` }
An object that represents a Transport Layer Security (TLS) Secret Discovery Service validation context trust.
The proxy must be configured with a local SDS provider via a Unix Domain Socket. See App Mesh [TLS documentation](https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html) for more info.
TODO: EXAMPLE
type CfnVirtualNode_TlsValidationContextTrustProperty ¶
type CfnVirtualNode_TlsValidationContextTrustProperty struct { // A reference to an object that represents a Transport Layer Security (TLS) validation context trust for an AWS Certificate Manager certificate. Acm interface{} `json:"acm" yaml:"acm"` // An object that represents a Transport Layer Security (TLS) validation context trust for a local file. File interface{} `json:"file" yaml:"file"` // A reference to an object that represents a Transport Layer Security (TLS) Secret Discovery Service validation context trust. Sds interface{} `json:"sds" yaml:"sds"` }
An object that represents a Transport Layer Security (TLS) validation context trust.
TODO: EXAMPLE
type CfnVirtualNode_VirtualNodeConnectionPoolProperty ¶
type CfnVirtualNode_VirtualNodeConnectionPoolProperty struct { // An object that represents a type of connection pool. Grpc interface{} `json:"grpc" yaml:"grpc"` // An object that represents a type of connection pool. Http interface{} `json:"http" yaml:"http"` // An object that represents a type of connection pool. Http2 interface{} `json:"http2" yaml:"http2"` // An object that represents a type of connection pool. Tcp interface{} `json:"tcp" yaml:"tcp"` }
An object that represents the type of virtual node connection pool.
Only one protocol is used at a time and should be the same protocol as the one chosen under port mapping.
If not present the default value for `maxPendingRequests` is `2147483647` .
TODO: EXAMPLE
type CfnVirtualNode_VirtualNodeGrpcConnectionPoolProperty ¶
type CfnVirtualNode_VirtualNodeGrpcConnectionPoolProperty struct { // Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. MaxRequests *float64 `json:"maxRequests" yaml:"maxRequests"` }
An object that represents a type of connection pool.
TODO: EXAMPLE
type CfnVirtualNode_VirtualNodeHttp2ConnectionPoolProperty ¶
type CfnVirtualNode_VirtualNodeHttp2ConnectionPoolProperty struct { // Maximum number of inflight requests Envoy can concurrently support across hosts in upstream cluster. MaxRequests *float64 `json:"maxRequests" yaml:"maxRequests"` }
An object that represents a type of connection pool.
TODO: EXAMPLE
type CfnVirtualNode_VirtualNodeHttpConnectionPoolProperty ¶
type CfnVirtualNode_VirtualNodeHttpConnectionPoolProperty struct { // Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. MaxConnections *float64 `json:"maxConnections" yaml:"maxConnections"` // Number of overflowing requests after `max_connections` Envoy will queue to upstream cluster. MaxPendingRequests *float64 `json:"maxPendingRequests" yaml:"maxPendingRequests"` }
An object that represents a type of connection pool.
TODO: EXAMPLE
type CfnVirtualNode_VirtualNodeSpecProperty ¶
type CfnVirtualNode_VirtualNodeSpecProperty struct { // A reference to an object that represents the defaults for backends. BackendDefaults interface{} `json:"backendDefaults" yaml:"backendDefaults"` // The backends that the virtual node is expected to send outbound traffic to. Backends interface{} `json:"backends" yaml:"backends"` // The listener that the virtual node is expected to receive inbound traffic from. // // You can specify one listener. Listeners interface{} `json:"listeners" yaml:"listeners"` // The inbound and outbound access logging information for the virtual node. Logging interface{} `json:"logging" yaml:"logging"` // The service discovery information for the virtual node. // // If your virtual node does not expect ingress traffic, you can omit this parameter. If you specify a `listener` , then you must specify service discovery information. ServiceDiscovery interface{} `json:"serviceDiscovery" yaml:"serviceDiscovery"` }
An object that represents the specification of a virtual node.
TODO: EXAMPLE
type CfnVirtualNode_VirtualNodeTcpConnectionPoolProperty ¶
type CfnVirtualNode_VirtualNodeTcpConnectionPoolProperty struct { // Maximum number of outbound TCP connections Envoy can establish concurrently with all hosts in upstream cluster. MaxConnections *float64 `json:"maxConnections" yaml:"maxConnections"` }
An object that represents a type of connection pool.
TODO: EXAMPLE
type CfnVirtualNode_VirtualServiceBackendProperty ¶
type CfnVirtualNode_VirtualServiceBackendProperty struct { // The name of the virtual service that is acting as a virtual node backend. VirtualServiceName *string `json:"virtualServiceName" yaml:"virtualServiceName"` // A reference to an object that represents the client policy for a backend. ClientPolicy interface{} `json:"clientPolicy" yaml:"clientPolicy"` }
An object that represents a virtual service backend for a virtual node.
TODO: EXAMPLE
type CfnVirtualRouter ¶
type CfnVirtualRouter interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string AttrMeshName() *string AttrMeshOwner() *string AttrResourceOwner() *string AttrUid() *string AttrVirtualRouterName() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string LogicalId() *string MeshName() *string SetMeshName(val *string) MeshOwner() *string SetMeshOwner(val *string) Node() awscdk.ConstructNode Ref() *string Spec() interface{} SetSpec(val interface{}) Stack() awscdk.Stack Tags() awscdk.TagManager UpdatedProperites() *map[string]interface{} VirtualRouterName() *string SetVirtualRouterName(val *string) AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string OverrideLogicalId(newLogicalId *string) Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AppMesh::VirtualRouter`.
Creates a virtual router within a service mesh.
Specify a `listener` for any inbound traffic that your virtual router receives. Create a virtual router for each protocol and port that you need to route. Virtual routers handle traffic for one or more virtual services within your mesh. After you create your virtual router, create and associate routes for your virtual router that direct incoming requests to different virtual nodes.
For more information about virtual routers, see [Virtual routers](https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_routers.html) .
TODO: EXAMPLE
func NewCfnVirtualRouter ¶
func NewCfnVirtualRouter(scope awscdk.Construct, id *string, props *CfnVirtualRouterProps) CfnVirtualRouter
Create a new `AWS::AppMesh::VirtualRouter`.
type CfnVirtualRouterProps ¶
type CfnVirtualRouterProps struct { // The name of the service mesh to create the virtual router in. MeshName *string `json:"meshName" yaml:"meshName"` // The virtual router specification to apply. Spec interface{} `json:"spec" yaml:"spec"` // The AWS IAM account ID of the service mesh owner. // // If the account ID is not your own, then the account that you specify must share the mesh with your account before you can create the resource in the service mesh. For more information about mesh sharing, see [Working with shared meshes](https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html) . MeshOwner *string `json:"meshOwner" yaml:"meshOwner"` // Optional metadata that you can apply to the virtual router to assist with categorization and organization. // // Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` // The name to use for the virtual router. VirtualRouterName *string `json:"virtualRouterName" yaml:"virtualRouterName"` }
Properties for defining a `CfnVirtualRouter`.
TODO: EXAMPLE
type CfnVirtualRouter_PortMappingProperty ¶
type CfnVirtualRouter_PortMappingProperty struct { // The port used for the port mapping. Port *float64 `json:"port" yaml:"port"` // The protocol used for the port mapping. // // Specify one protocol. Protocol *string `json:"protocol" yaml:"protocol"` }
An object representing a virtual router listener port mapping.
TODO: EXAMPLE
type CfnVirtualRouter_VirtualRouterListenerProperty ¶
type CfnVirtualRouter_VirtualRouterListenerProperty struct {
// The port mapping information for the listener.
PortMapping interface{} `json:"portMapping" yaml:"portMapping"`
}
An object that represents a virtual router listener.
TODO: EXAMPLE
type CfnVirtualRouter_VirtualRouterSpecProperty ¶
type CfnVirtualRouter_VirtualRouterSpecProperty struct { // The listeners that the virtual router is expected to receive inbound traffic from. // // You can specify one listener. Listeners interface{} `json:"listeners" yaml:"listeners"` }
An object that represents the specification of a virtual router.
TODO: EXAMPLE
type CfnVirtualService ¶
type CfnVirtualService interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string AttrMeshName() *string AttrMeshOwner() *string AttrResourceOwner() *string AttrUid() *string AttrVirtualServiceName() *string CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} CfnResourceType() *string CreationStack() *[]*string LogicalId() *string MeshName() *string SetMeshName(val *string) MeshOwner() *string SetMeshOwner(val *string) Node() awscdk.ConstructNode Ref() *string Spec() interface{} SetSpec(val interface{}) Stack() awscdk.Stack Tags() awscdk.TagManager UpdatedProperites() *map[string]interface{} VirtualServiceName() *string SetVirtualServiceName(val *string) AddDeletionOverride(path *string) AddDependsOn(target awscdk.CfnResource) AddMetadata(key *string, value interface{}) AddOverride(path *string, value interface{}) AddPropertyDeletionOverride(propertyPath *string) AddPropertyOverride(propertyPath *string, value interface{}) ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) GetAtt(attributeName *string) awscdk.Reference GetMetadata(key *string) interface{} Inspect(inspector awscdk.TreeInspector) OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string OverrideLogicalId(newLogicalId *string) Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} ShouldSynthesize() *bool Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::AppMesh::VirtualService`.
Creates a virtual service within a service mesh.
A virtual service is an abstraction of a real service that is provided by a virtual node directly or indirectly by means of a virtual router. Dependent services call your virtual service by its `virtualServiceName` , and those requests are routed to the virtual node or virtual router that is specified as the provider for the virtual service.
For more information about virtual services, see [Virtual services](https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_services.html) .
TODO: EXAMPLE
func NewCfnVirtualService ¶
func NewCfnVirtualService(scope awscdk.Construct, id *string, props *CfnVirtualServiceProps) CfnVirtualService
Create a new `AWS::AppMesh::VirtualService`.
type CfnVirtualServiceProps ¶
type CfnVirtualServiceProps struct { // The name of the service mesh to create the virtual service in. MeshName *string `json:"meshName" yaml:"meshName"` // The virtual service specification to apply. Spec interface{} `json:"spec" yaml:"spec"` // The name to use for the virtual service. VirtualServiceName *string `json:"virtualServiceName" yaml:"virtualServiceName"` // The AWS IAM account ID of the service mesh owner. // // If the account ID is not your own, then the account that you specify must share the mesh with your account before you can create the resource in the service mesh. For more information about mesh sharing, see [Working with shared meshes](https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html) . MeshOwner *string `json:"meshOwner" yaml:"meshOwner"` // Optional metadata that you can apply to the virtual service to assist with categorization and organization. // // Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` }
Properties for defining a `CfnVirtualService`.
TODO: EXAMPLE
type CfnVirtualService_VirtualNodeServiceProviderProperty ¶
type CfnVirtualService_VirtualNodeServiceProviderProperty struct { // The name of the virtual node that is acting as a service provider. VirtualNodeName *string `json:"virtualNodeName" yaml:"virtualNodeName"` }
An object that represents a virtual node service provider.
TODO: EXAMPLE
type CfnVirtualService_VirtualRouterServiceProviderProperty ¶
type CfnVirtualService_VirtualRouterServiceProviderProperty struct { // The name of the virtual router that is acting as a service provider. VirtualRouterName *string `json:"virtualRouterName" yaml:"virtualRouterName"` }
An object that represents a virtual node service provider.
TODO: EXAMPLE
type CfnVirtualService_VirtualServiceProviderProperty ¶
type CfnVirtualService_VirtualServiceProviderProperty struct { // The virtual node associated with a virtual service. VirtualNode interface{} `json:"virtualNode" yaml:"virtualNode"` // The virtual router associated with a virtual service. VirtualRouter interface{} `json:"virtualRouter" yaml:"virtualRouter"` }
An object that represents the provider for a virtual service.
TODO: EXAMPLE
type CfnVirtualService_VirtualServiceSpecProperty ¶
type CfnVirtualService_VirtualServiceSpecProperty struct { // The App Mesh object that is acting as the provider for a virtual service. // // You can specify a single virtual node or virtual router. Provider interface{} `json:"provider" yaml:"provider"` }
An object that represents the specification of a virtual service.
TODO: EXAMPLE
type CommonGatewayRouteSpecOptions ¶
type CommonGatewayRouteSpecOptions struct { // The priority for the gateway route. // // When a Virtual Gateway has multiple gateway routes, gateway route match // is performed in the order of specified value, where 0 is the highest priority, // and first matched gateway route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` }
Base options for all gateway route specs.
TODO: EXAMPLE
Experimental.
type DnsResponseType ¶
type DnsResponseType string
Enum of DNS service discovery response type.
TODO: EXAMPLE
Experimental.
const ( DnsResponseType_LOAD_BALANCER DnsResponseType = "LOAD_BALANCER" DnsResponseType_ENDPOINTS DnsResponseType = "ENDPOINTS" )
type GatewayRoute ¶
type GatewayRoute interface { awscdk.Resource IGatewayRoute Env() *awscdk.ResourceEnvironment GatewayRouteArn() *string GatewayRouteName() *string Node() awscdk.ConstructNode PhysicalName() *string Stack() awscdk.Stack VirtualGateway() IVirtualGateway ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string Prepare() Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string }
GatewayRoute represents a new or existing gateway route attached to a VirtualGateway and Mesh.
TODO: EXAMPLE
See: https://docs.aws.amazon.com/app-mesh/latest/userguide/gateway-routes.html
Experimental.
func NewGatewayRoute ¶
func NewGatewayRoute(scope constructs.Construct, id *string, props *GatewayRouteProps) GatewayRoute
Experimental.
type GatewayRouteAttributes ¶
type GatewayRouteAttributes struct { // The name of the GatewayRoute. // Experimental. GatewayRouteName *string `json:"gatewayRouteName" yaml:"gatewayRouteName"` // The VirtualGateway this GatewayRoute is associated with. // Experimental. VirtualGateway IVirtualGateway `json:"virtualGateway" yaml:"virtualGateway"` }
Interface with properties necessary to import a reusable GatewayRoute.
TODO: EXAMPLE
Experimental.
type GatewayRouteBaseProps ¶
type GatewayRouteBaseProps struct { // What protocol the route uses. // Experimental. RouteSpec GatewayRouteSpec `json:"routeSpec" yaml:"routeSpec"` // The name of the GatewayRoute. // Experimental. GatewayRouteName *string `json:"gatewayRouteName" yaml:"gatewayRouteName"` }
Basic configuration properties for a GatewayRoute.
TODO: EXAMPLE
Experimental.
type GatewayRouteHostnameMatch ¶
type GatewayRouteHostnameMatch interface {
Bind(scope awscdk.Construct) *GatewayRouteHostnameMatchConfig
}
Used to generate host name matching methods.
TODO: EXAMPLE
Experimental.
func GatewayRouteHostnameMatch_EndsWith ¶
func GatewayRouteHostnameMatch_EndsWith(suffix *string) GatewayRouteHostnameMatch
The value of the host name with the given name must end with the specified characters. Experimental.
func GatewayRouteHostnameMatch_Exactly ¶
func GatewayRouteHostnameMatch_Exactly(name *string) GatewayRouteHostnameMatch
The value of the host name must match the specified value exactly. Experimental.
type GatewayRouteHostnameMatchConfig ¶
type GatewayRouteHostnameMatchConfig struct { // GatewayRoute CFN configuration for host name match. // Experimental. HostnameMatch *CfnGatewayRoute_GatewayRouteHostnameMatchProperty `json:"hostnameMatch" yaml:"hostnameMatch"` }
Configuration for gateway route host name match.
TODO: EXAMPLE
Experimental.
type GatewayRouteProps ¶
type GatewayRouteProps struct { // What protocol the route uses. // Experimental. RouteSpec GatewayRouteSpec `json:"routeSpec" yaml:"routeSpec"` // The name of the GatewayRoute. // Experimental. GatewayRouteName *string `json:"gatewayRouteName" yaml:"gatewayRouteName"` // The VirtualGateway this GatewayRoute is associated with. // Experimental. VirtualGateway IVirtualGateway `json:"virtualGateway" yaml:"virtualGateway"` }
Properties to define a new GatewayRoute.
TODO: EXAMPLE
Experimental.
type GatewayRouteSpec ¶
type GatewayRouteSpec interface {
Bind(scope awscdk.Construct) *GatewayRouteSpecConfig
}
Used to generate specs with different protocols for a GatewayRoute.
TODO: EXAMPLE
Experimental.
func GatewayRouteSpec_Grpc ¶
func GatewayRouteSpec_Grpc(options *GrpcGatewayRouteSpecOptions) GatewayRouteSpec
Creates an gRPC Based GatewayRoute. Experimental.
func GatewayRouteSpec_Http ¶
func GatewayRouteSpec_Http(options *HttpGatewayRouteSpecOptions) GatewayRouteSpec
Creates an HTTP Based GatewayRoute. Experimental.
func GatewayRouteSpec_Http2 ¶
func GatewayRouteSpec_Http2(options *HttpGatewayRouteSpecOptions) GatewayRouteSpec
Creates an HTTP2 Based GatewayRoute. Experimental.
type GatewayRouteSpecConfig ¶
type GatewayRouteSpecConfig struct { // The spec for a grpc gateway route. // Experimental. GrpcSpecConfig *CfnGatewayRoute_GrpcGatewayRouteProperty `json:"grpcSpecConfig" yaml:"grpcSpecConfig"` // The spec for an http2 gateway route. // Experimental. Http2SpecConfig *CfnGatewayRoute_HttpGatewayRouteProperty `json:"http2SpecConfig" yaml:"http2SpecConfig"` // The spec for an http gateway route. // Experimental. HttpSpecConfig *CfnGatewayRoute_HttpGatewayRouteProperty `json:"httpSpecConfig" yaml:"httpSpecConfig"` // The priority for the gateway route. // // When a Virtual Gateway has multiple gateway routes, gateway route match // is performed in the order of specified value, where 0 is the highest priority, // and first matched gateway route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` }
All Properties for GatewayRoute Specs.
TODO: EXAMPLE
Experimental.
type GrpcConnectionPool ¶
type GrpcConnectionPool struct { // The maximum requests in the pool. // Experimental. MaxRequests *float64 `json:"maxRequests" yaml:"maxRequests"` }
Connection pool properties for gRPC listeners.
TODO: EXAMPLE
Experimental.
type GrpcGatewayListenerOptions ¶
type GrpcGatewayListenerOptions struct { // Connection pool for http listeners. // Experimental. ConnectionPool *GrpcConnectionPool `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. // Experimental. HealthCheck HealthCheck `json:"healthCheck" yaml:"healthCheck"` // Port to listen for connections on. // Experimental. Port *float64 `json:"port" yaml:"port"` // Represents the configuration for enabling TLS on a listener. // Experimental. Tls *ListenerTlsOptions `json:"tls" yaml:"tls"` }
Represents the properties needed to define GRPC Listeners for a VirtualGateway.
TODO: EXAMPLE
Experimental.
type GrpcGatewayRouteMatch ¶
type GrpcGatewayRouteMatch struct { // Create host name based gRPC gateway route match. // Experimental. Hostname GatewayRouteHostnameMatch `json:"hostname" yaml:"hostname"` // Create metadata based gRPC gateway route match. // // All specified metadata must match for the route to match. // Experimental. Metadata *[]HeaderMatch `json:"metadata" yaml:"metadata"` // When `true`, rewrites the original request received at the Virtual Gateway to the destination Virtual Service name. // // When `false`, retains the original hostname from the request. // Experimental. RewriteRequestHostname *bool `json:"rewriteRequestHostname" yaml:"rewriteRequestHostname"` // Create service name based gRPC gateway route match. // Experimental. ServiceName *string `json:"serviceName" yaml:"serviceName"` }
The criterion for determining a request match for this GatewayRoute.
TODO: EXAMPLE
Experimental.
type GrpcGatewayRouteSpecOptions ¶
type GrpcGatewayRouteSpecOptions struct { // The priority for the gateway route. // // When a Virtual Gateway has multiple gateway routes, gateway route match // is performed in the order of specified value, where 0 is the highest priority, // and first matched gateway route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` // The criterion for determining a request match for this GatewayRoute. // Experimental. Match *GrpcGatewayRouteMatch `json:"match" yaml:"match"` // The VirtualService this GatewayRoute directs traffic to. // Experimental. RouteTarget IVirtualService `json:"routeTarget" yaml:"routeTarget"` }
Properties specific for a gRPC GatewayRoute.
TODO: EXAMPLE
Experimental.
type GrpcHealthCheckOptions ¶
type GrpcHealthCheckOptions struct { // The number of consecutive successful health checks that must occur before declaring listener healthy. // Experimental. HealthyThreshold *float64 `json:"healthyThreshold" yaml:"healthyThreshold"` // The time period between each health check execution. // Experimental. Interval awscdk.Duration `json:"interval" yaml:"interval"` // The amount of time to wait when receiving a response from the health check. // Experimental. Timeout awscdk.Duration `json:"timeout" yaml:"timeout"` // The number of consecutive failed health checks that must occur before declaring a listener unhealthy. // Experimental. UnhealthyThreshold *float64 `json:"unhealthyThreshold" yaml:"unhealthyThreshold"` }
Properties used to define GRPC Based healthchecks.
TODO: EXAMPLE
Experimental.
type GrpcRetryEvent ¶
type GrpcRetryEvent string
gRPC events.
TODO: EXAMPLE
Experimental.
const ( GrpcRetryEvent_CANCELLED GrpcRetryEvent = "CANCELLED" GrpcRetryEvent_DEADLINE_EXCEEDED GrpcRetryEvent = "DEADLINE_EXCEEDED" GrpcRetryEvent_INTERNAL_ERROR GrpcRetryEvent = "INTERNAL_ERROR" GrpcRetryEvent_RESOURCE_EXHAUSTED GrpcRetryEvent = "RESOURCE_EXHAUSTED" GrpcRetryEvent_UNAVAILABLE GrpcRetryEvent = "UNAVAILABLE" )
type GrpcRetryPolicy ¶
type GrpcRetryPolicy struct { // The maximum number of retry attempts. // Experimental. RetryAttempts *float64 `json:"retryAttempts" yaml:"retryAttempts"` // The timeout for each retry attempt. // Experimental. RetryTimeout awscdk.Duration `json:"retryTimeout" yaml:"retryTimeout"` // Specify HTTP events on which to retry. // // You must specify at least one value // for at least one types of retry events. // Experimental. HttpRetryEvents *[]HttpRetryEvent `json:"httpRetryEvents" yaml:"httpRetryEvents"` // TCP events on which to retry. // // The event occurs before any processing of a // request has started and is encountered when the upstream is temporarily or // permanently unavailable. You must specify at least one value for at least // one types of retry events. // Experimental. TcpRetryEvents *[]TcpRetryEvent `json:"tcpRetryEvents" yaml:"tcpRetryEvents"` // gRPC events on which to retry. // // You must specify at least one value // for at least one types of retry events. // Experimental. GrpcRetryEvents *[]GrpcRetryEvent `json:"grpcRetryEvents" yaml:"grpcRetryEvents"` }
gRPC retry policy.
TODO: EXAMPLE
Experimental.
type GrpcRouteMatch ¶
type GrpcRouteMatch struct { // Create metadata based gRPC route match. // // All specified metadata must match for the route to match. // Experimental. Metadata *[]HeaderMatch `json:"metadata" yaml:"metadata"` // The method name to match from the request. // // If the method name is specified, service name must be also provided. // Experimental. MethodName *string `json:"methodName" yaml:"methodName"` // Create service name based gRPC route match. // Experimental. ServiceName *string `json:"serviceName" yaml:"serviceName"` }
The criterion for determining a request match for this Route.
At least one match type must be selected.
TODO: EXAMPLE
Experimental.
type GrpcRouteSpecOptions ¶
type GrpcRouteSpecOptions struct { // The priority for the route. // // When a Virtual Router has multiple routes, route match is performed in the // order of specified value, where 0 is the highest priority, and first matched route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` // The criterion for determining a request match for this Route. // Experimental. Match *GrpcRouteMatch `json:"match" yaml:"match"` // List of targets that traffic is routed to when a request matches the route. // Experimental. WeightedTargets *[]*WeightedTarget `json:"weightedTargets" yaml:"weightedTargets"` // The retry policy. // Experimental. RetryPolicy *GrpcRetryPolicy `json:"retryPolicy" yaml:"retryPolicy"` // An object that represents a grpc timeout. // Experimental. Timeout *GrpcTimeout `json:"timeout" yaml:"timeout"` }
Properties specific for a GRPC Based Routes.
TODO: EXAMPLE
Experimental.
type GrpcTimeout ¶
type GrpcTimeout struct { // Represents an idle timeout. // // The amount of time that a connection may be idle. // Experimental. Idle awscdk.Duration `json:"idle" yaml:"idle"` // Represents per request timeout. // Experimental. PerRequest awscdk.Duration `json:"perRequest" yaml:"perRequest"` }
Represents timeouts for GRPC protocols.
TODO: EXAMPLE
Experimental.
type GrpcVirtualNodeListenerOptions ¶
type GrpcVirtualNodeListenerOptions struct { // Connection pool for http listeners. // Experimental. ConnectionPool *GrpcConnectionPool `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. // Experimental. HealthCheck HealthCheck `json:"healthCheck" yaml:"healthCheck"` // Represents the configuration for enabling outlier detection. // Experimental. OutlierDetection *OutlierDetection `json:"outlierDetection" yaml:"outlierDetection"` // Port to listen for connections on. // Experimental. Port *float64 `json:"port" yaml:"port"` // Timeout for GRPC protocol. // Experimental. Timeout *GrpcTimeout `json:"timeout" yaml:"timeout"` // Represents the configuration for enabling TLS on a listener. // Experimental. Tls *ListenerTlsOptions `json:"tls" yaml:"tls"` }
Represent the GRPC Node Listener prorperty.
TODO: EXAMPLE
Experimental.
type HeaderMatch ¶
type HeaderMatch interface {
Bind(scope awscdk.Construct) *HeaderMatchConfig
}
Used to generate header matching methods.
TODO: EXAMPLE
Experimental.
func HeaderMatch_ValueDoesNotEndWith ¶
func HeaderMatch_ValueDoesNotEndWith(headerName *string, suffix *string) HeaderMatch
The value of the header with the given name in the request must not end with the specified characters. Experimental.
func HeaderMatch_ValueDoesNotMatchRegex ¶
func HeaderMatch_ValueDoesNotMatchRegex(headerName *string, regex *string) HeaderMatch
The value of the header with the given name in the request must not include the specified characters. Experimental.
func HeaderMatch_ValueDoesNotStartWith ¶
func HeaderMatch_ValueDoesNotStartWith(headerName *string, prefix *string) HeaderMatch
The value of the header with the given name in the request must not start with the specified characters. Experimental.
func HeaderMatch_ValueEndsWith ¶
func HeaderMatch_ValueEndsWith(headerName *string, suffix *string) HeaderMatch
The value of the header with the given name in the request must end with the specified characters. Experimental.
func HeaderMatch_ValueIs ¶
func HeaderMatch_ValueIs(headerName *string, headerValue *string) HeaderMatch
The value of the header with the given name in the request must match the specified value exactly. Experimental.
func HeaderMatch_ValueIsNot ¶
func HeaderMatch_ValueIsNot(headerName *string, headerValue *string) HeaderMatch
The value of the header with the given name in the request must not match the specified value exactly. Experimental.
func HeaderMatch_ValueMatchesRegex ¶
func HeaderMatch_ValueMatchesRegex(headerName *string, regex *string) HeaderMatch
The value of the header with the given name in the request must include the specified characters. Experimental.
func HeaderMatch_ValueStartsWith ¶
func HeaderMatch_ValueStartsWith(headerName *string, prefix *string) HeaderMatch
The value of the header with the given name in the request must start with the specified characters. Experimental.
func HeaderMatch_ValuesIsInRange ¶
func HeaderMatch_ValuesIsInRange(headerName *string, start *float64, end *float64) HeaderMatch
The value of the header with the given name in the request must be in a range of values. Experimental.
func HeaderMatch_ValuesIsNotInRange ¶
func HeaderMatch_ValuesIsNotInRange(headerName *string, start *float64, end *float64) HeaderMatch
The value of the header with the given name in the request must not be in a range of values. Experimental.
type HeaderMatchConfig ¶
type HeaderMatchConfig struct { // Route CFN configuration for the route header match. // Experimental. HeaderMatch *CfnRoute_HttpRouteHeaderProperty `json:"headerMatch" yaml:"headerMatch"` }
Configuration for `HeaderMatch`.
TODO: EXAMPLE
Experimental.
type HealthCheck ¶
type HealthCheck interface {
Bind(scope awscdk.Construct, options *HealthCheckBindOptions) *HealthCheckConfig
}
Contains static factory methods for creating health checks for different protocols.
TODO: EXAMPLE
Experimental.
func HealthCheck_Grpc ¶
func HealthCheck_Grpc(options *GrpcHealthCheckOptions) HealthCheck
Construct a GRPC health check. Experimental.
func HealthCheck_Http ¶
func HealthCheck_Http(options *HttpHealthCheckOptions) HealthCheck
Construct a HTTP health check. Experimental.
func HealthCheck_Http2 ¶
func HealthCheck_Http2(options *HttpHealthCheckOptions) HealthCheck
Construct a HTTP2 health check. Experimental.
func HealthCheck_Tcp ¶
func HealthCheck_Tcp(options *TcpHealthCheckOptions) HealthCheck
Construct a TCP health check. Experimental.
type HealthCheckBindOptions ¶
type HealthCheckBindOptions struct { // Port for Health Check interface. // Experimental. DefaultPort *float64 `json:"defaultPort" yaml:"defaultPort"` }
Options used for creating the Health Check object.
TODO: EXAMPLE
Experimental.
type HealthCheckConfig ¶
type HealthCheckConfig struct { // VirtualGateway CFN configuration for Health Checks. // Experimental. VirtualGatewayHealthCheck *CfnVirtualGateway_VirtualGatewayHealthCheckPolicyProperty `json:"virtualGatewayHealthCheck" yaml:"virtualGatewayHealthCheck"` // VirtualNode CFN configuration for Health Checks. // Experimental. VirtualNodeHealthCheck *CfnVirtualNode_HealthCheckProperty `json:"virtualNodeHealthCheck" yaml:"virtualNodeHealthCheck"` }
All Properties for Health Checks for mesh endpoints.
TODO: EXAMPLE
Experimental.
type Http2ConnectionPool ¶
type Http2ConnectionPool struct { // The maximum requests in the pool. // Experimental. MaxRequests *float64 `json:"maxRequests" yaml:"maxRequests"` }
Connection pool properties for HTTP2 listeners.
TODO: EXAMPLE
Experimental.
type Http2GatewayListenerOptions ¶
type Http2GatewayListenerOptions struct { // Connection pool for http listeners. // Experimental. ConnectionPool *Http2ConnectionPool `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. // Experimental. HealthCheck HealthCheck `json:"healthCheck" yaml:"healthCheck"` // Port to listen for connections on. // Experimental. Port *float64 `json:"port" yaml:"port"` // Represents the configuration for enabling TLS on a listener. // Experimental. Tls *ListenerTlsOptions `json:"tls" yaml:"tls"` }
Represents the properties needed to define HTTP2 Listeners for a VirtualGateway.
TODO: EXAMPLE
Experimental.
type Http2VirtualNodeListenerOptions ¶
type Http2VirtualNodeListenerOptions struct { // Connection pool for http2 listeners. // Experimental. ConnectionPool *Http2ConnectionPool `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. // Experimental. HealthCheck HealthCheck `json:"healthCheck" yaml:"healthCheck"` // Represents the configuration for enabling outlier detection. // Experimental. OutlierDetection *OutlierDetection `json:"outlierDetection" yaml:"outlierDetection"` // Port to listen for connections on. // Experimental. Port *float64 `json:"port" yaml:"port"` // Timeout for HTTP protocol. // Experimental. Timeout *HttpTimeout `json:"timeout" yaml:"timeout"` // Represents the configuration for enabling TLS on a listener. // Experimental. Tls *ListenerTlsOptions `json:"tls" yaml:"tls"` }
Represent the HTTP2 Node Listener prorperty.
TODO: EXAMPLE
Experimental.
type HttpConnectionPool ¶
type HttpConnectionPool struct { // The maximum connections in the pool. // Experimental. MaxConnections *float64 `json:"maxConnections" yaml:"maxConnections"` // The maximum pending requests in the pool. // Experimental. MaxPendingRequests *float64 `json:"maxPendingRequests" yaml:"maxPendingRequests"` }
Connection pool properties for HTTP listeners.
TODO: EXAMPLE
Experimental.
type HttpGatewayListenerOptions ¶
type HttpGatewayListenerOptions struct { // Connection pool for http listeners. // Experimental. ConnectionPool *HttpConnectionPool `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. // Experimental. HealthCheck HealthCheck `json:"healthCheck" yaml:"healthCheck"` // Port to listen for connections on. // Experimental. Port *float64 `json:"port" yaml:"port"` // Represents the configuration for enabling TLS on a listener. // Experimental. Tls *ListenerTlsOptions `json:"tls" yaml:"tls"` }
Represents the properties needed to define HTTP Listeners for a VirtualGateway.
TODO: EXAMPLE
Experimental.
type HttpGatewayRouteMatch ¶
type HttpGatewayRouteMatch struct { // Specifies the client request headers to match on. // // All specified headers // must match for the gateway route to match. // Experimental. Headers *[]HeaderMatch `json:"headers" yaml:"headers"` // The gateway route host name to be matched on. // Experimental. Hostname GatewayRouteHostnameMatch `json:"hostname" yaml:"hostname"` // The method to match on. // Experimental. Method HttpRouteMethod `json:"method" yaml:"method"` // Specify how to match requests based on the 'path' part of their URL. // Experimental. Path HttpGatewayRoutePathMatch `json:"path" yaml:"path"` // The query parameters to match on. // // All specified query parameters must match for the route to match. // Experimental. QueryParameters *[]QueryParameterMatch `json:"queryParameters" yaml:"queryParameters"` // When `true`, rewrites the original request received at the Virtual Gateway to the destination Virtual Service name. // // When `false`, retains the original hostname from the request. // Experimental. RewriteRequestHostname *bool `json:"rewriteRequestHostname" yaml:"rewriteRequestHostname"` }
The criterion for determining a request match for this GatewayRoute.
TODO: EXAMPLE
Experimental.
type HttpGatewayRoutePathMatch ¶
type HttpGatewayRoutePathMatch interface {
Bind(scope awscdk.Construct) *HttpGatewayRoutePathMatchConfig
}
Defines HTTP gateway route matching based on the URL path of the request.
TODO: EXAMPLE
Experimental.
func HttpGatewayRoutePathMatch_Exactly ¶
func HttpGatewayRoutePathMatch_Exactly(path *string, rewriteTo *string) HttpGatewayRoutePathMatch
The value of the path must match the specified value exactly.
The provided `path` must start with the '/' character. Experimental.
func HttpGatewayRoutePathMatch_Regex ¶
func HttpGatewayRoutePathMatch_Regex(regex *string, rewriteTo *string) HttpGatewayRoutePathMatch
The value of the path must match the specified regex. Experimental.
func HttpGatewayRoutePathMatch_StartsWith ¶
func HttpGatewayRoutePathMatch_StartsWith(prefix *string, rewriteTo *string) HttpGatewayRoutePathMatch
The value of the path must match the specified prefix. Experimental.
type HttpGatewayRoutePathMatchConfig ¶
type HttpGatewayRoutePathMatchConfig struct { // Gateway route configuration for matching on the prefix of the URL path of the request. // Experimental. PrefixPathMatch *string `json:"prefixPathMatch" yaml:"prefixPathMatch"` // Gateway route configuration for rewriting the prefix of the URL path of the request. // Experimental. PrefixPathRewrite *CfnGatewayRoute_HttpGatewayRoutePrefixRewriteProperty `json:"prefixPathRewrite" yaml:"prefixPathRewrite"` // Gateway route configuration for matching on the complete URL path of the request. // Experimental. WholePathMatch *CfnGatewayRoute_HttpPathMatchProperty `json:"wholePathMatch" yaml:"wholePathMatch"` // Gateway route configuration for rewriting the complete URL path of the request.. // Experimental. WholePathRewrite *CfnGatewayRoute_HttpGatewayRoutePathRewriteProperty `json:"wholePathRewrite" yaml:"wholePathRewrite"` }
The type returned from the `bind()` method in {@link HttpGatewayRoutePathMatch}.
TODO: EXAMPLE
Experimental.
type HttpGatewayRouteSpecOptions ¶
type HttpGatewayRouteSpecOptions struct { // The priority for the gateway route. // // When a Virtual Gateway has multiple gateway routes, gateway route match // is performed in the order of specified value, where 0 is the highest priority, // and first matched gateway route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` // The VirtualService this GatewayRoute directs traffic to. // Experimental. RouteTarget IVirtualService `json:"routeTarget" yaml:"routeTarget"` // The criterion for determining a request match for this GatewayRoute. // // When path match is defined, this may optionally determine the path rewrite configuration. // Experimental. Match *HttpGatewayRouteMatch `json:"match" yaml:"match"` }
Properties specific for HTTP Based GatewayRoutes.
TODO: EXAMPLE
Experimental.
type HttpHealthCheckOptions ¶
type HttpHealthCheckOptions struct { // The number of consecutive successful health checks that must occur before declaring listener healthy. // Experimental. HealthyThreshold *float64 `json:"healthyThreshold" yaml:"healthyThreshold"` // The time period between each health check execution. // Experimental. Interval awscdk.Duration `json:"interval" yaml:"interval"` // The destination path for the health check request. // Experimental. Path *string `json:"path" yaml:"path"` // The amount of time to wait when receiving a response from the health check. // Experimental. Timeout awscdk.Duration `json:"timeout" yaml:"timeout"` // The number of consecutive failed health checks that must occur before declaring a listener unhealthy. // Experimental. UnhealthyThreshold *float64 `json:"unhealthyThreshold" yaml:"unhealthyThreshold"` }
Properties used to define HTTP Based healthchecks.
TODO: EXAMPLE
Experimental.
type HttpRetryEvent ¶
type HttpRetryEvent string
HTTP events on which to retry.
TODO: EXAMPLE
Experimental.
const ( HttpRetryEvent_SERVER_ERROR HttpRetryEvent = "SERVER_ERROR" HttpRetryEvent_GATEWAY_ERROR HttpRetryEvent = "GATEWAY_ERROR" HttpRetryEvent_CLIENT_ERROR HttpRetryEvent = "CLIENT_ERROR" HttpRetryEvent_STREAM_ERROR HttpRetryEvent = "STREAM_ERROR" )
type HttpRetryPolicy ¶
type HttpRetryPolicy struct { // The maximum number of retry attempts. // Experimental. RetryAttempts *float64 `json:"retryAttempts" yaml:"retryAttempts"` // The timeout for each retry attempt. // Experimental. RetryTimeout awscdk.Duration `json:"retryTimeout" yaml:"retryTimeout"` // Specify HTTP events on which to retry. // // You must specify at least one value // for at least one types of retry events. // Experimental. HttpRetryEvents *[]HttpRetryEvent `json:"httpRetryEvents" yaml:"httpRetryEvents"` // TCP events on which to retry. // // The event occurs before any processing of a // request has started and is encountered when the upstream is temporarily or // permanently unavailable. You must specify at least one value for at least // one types of retry events. // Experimental. TcpRetryEvents *[]TcpRetryEvent `json:"tcpRetryEvents" yaml:"tcpRetryEvents"` }
HTTP retry policy.
TODO: EXAMPLE
Experimental.
type HttpRouteMatch ¶
type HttpRouteMatch struct { // Specifies the client request headers to match on. // // All specified headers // must match for the route to match. // Experimental. Headers *[]HeaderMatch `json:"headers" yaml:"headers"` // The HTTP client request method to match on. // Experimental. Method HttpRouteMethod `json:"method" yaml:"method"` // Specifies how is the request matched based on the path part of its URL. // Experimental. Path HttpRoutePathMatch `json:"path" yaml:"path"` // The client request protocol to match on. // // Applicable only for HTTP2 routes. // Experimental. Protocol HttpRouteProtocol `json:"protocol" yaml:"protocol"` // The query parameters to match on. // // All specified query parameters must match for the route to match. // Experimental. QueryParameters *[]QueryParameterMatch `json:"queryParameters" yaml:"queryParameters"` }
The criterion for determining a request match for this Route.
TODO: EXAMPLE
Experimental.
type HttpRouteMethod ¶
type HttpRouteMethod string
Supported values for matching routes based on the HTTP request method.
TODO: EXAMPLE
Experimental.
const ( HttpRouteMethod_GET HttpRouteMethod = "GET" HttpRouteMethod_HEAD HttpRouteMethod = "HEAD" HttpRouteMethod_POST HttpRouteMethod = "POST" HttpRouteMethod_PUT HttpRouteMethod = "PUT" HttpRouteMethod_DELETE HttpRouteMethod = "DELETE" HttpRouteMethod_CONNECT HttpRouteMethod = "CONNECT" HttpRouteMethod_OPTIONS HttpRouteMethod = "OPTIONS" HttpRouteMethod_TRACE HttpRouteMethod = "TRACE" HttpRouteMethod_PATCH HttpRouteMethod = "PATCH" )
type HttpRoutePathMatch ¶
type HttpRoutePathMatch interface {
Bind(scope awscdk.Construct) *HttpRoutePathMatchConfig
}
Defines HTTP route matching based on the URL path of the request.
TODO: EXAMPLE
Experimental.
func HttpRoutePathMatch_Exactly ¶
func HttpRoutePathMatch_Exactly(path *string) HttpRoutePathMatch
The value of the path must match the specified value exactly.
The provided `path` must start with the '/' character. Experimental.
func HttpRoutePathMatch_Regex ¶
func HttpRoutePathMatch_Regex(regex *string) HttpRoutePathMatch
The value of the path must match the specified regex. Experimental.
func HttpRoutePathMatch_StartsWith ¶
func HttpRoutePathMatch_StartsWith(prefix *string) HttpRoutePathMatch
The value of the path must match the specified prefix. Experimental.
type HttpRoutePathMatchConfig ¶
type HttpRoutePathMatchConfig struct { // Route configuration for matching on the prefix of the URL path of the request. // Experimental. PrefixPathMatch *string `json:"prefixPathMatch" yaml:"prefixPathMatch"` // Route configuration for matching on the complete URL path of the request. // Experimental. WholePathMatch *CfnRoute_HttpPathMatchProperty `json:"wholePathMatch" yaml:"wholePathMatch"` }
The type returned from the `bind()` method in {@link HttpRoutePathMatch}.
TODO: EXAMPLE
Experimental.
type HttpRouteProtocol ¶
type HttpRouteProtocol string
Supported :scheme options for HTTP2.
TODO: EXAMPLE
Experimental.
const ( HttpRouteProtocol_HTTP HttpRouteProtocol = "HTTP" HttpRouteProtocol_HTTPS HttpRouteProtocol = "HTTPS" )
type HttpRouteSpecOptions ¶
type HttpRouteSpecOptions struct { // The priority for the route. // // When a Virtual Router has multiple routes, route match is performed in the // order of specified value, where 0 is the highest priority, and first matched route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` // List of targets that traffic is routed to when a request matches the route. // Experimental. WeightedTargets *[]*WeightedTarget `json:"weightedTargets" yaml:"weightedTargets"` // The criterion for determining a request match for this Route. // Experimental. Match *HttpRouteMatch `json:"match" yaml:"match"` // The retry policy. // Experimental. RetryPolicy *HttpRetryPolicy `json:"retryPolicy" yaml:"retryPolicy"` // An object that represents a http timeout. // Experimental. Timeout *HttpTimeout `json:"timeout" yaml:"timeout"` }
Properties specific for HTTP Based Routes.
TODO: EXAMPLE
Experimental.
type HttpTimeout ¶
type HttpTimeout struct { // Represents an idle timeout. // // The amount of time that a connection may be idle. // Experimental. Idle awscdk.Duration `json:"idle" yaml:"idle"` // Represents per request timeout. // Experimental. PerRequest awscdk.Duration `json:"perRequest" yaml:"perRequest"` }
Represents timeouts for HTTP protocols.
TODO: EXAMPLE
Experimental.
type HttpVirtualNodeListenerOptions ¶
type HttpVirtualNodeListenerOptions struct { // Connection pool for http listeners. // Experimental. ConnectionPool *HttpConnectionPool `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. // Experimental. HealthCheck HealthCheck `json:"healthCheck" yaml:"healthCheck"` // Represents the configuration for enabling outlier detection. // Experimental. OutlierDetection *OutlierDetection `json:"outlierDetection" yaml:"outlierDetection"` // Port to listen for connections on. // Experimental. Port *float64 `json:"port" yaml:"port"` // Timeout for HTTP protocol. // Experimental. Timeout *HttpTimeout `json:"timeout" yaml:"timeout"` // Represents the configuration for enabling TLS on a listener. // Experimental. Tls *ListenerTlsOptions `json:"tls" yaml:"tls"` }
Represent the HTTP Node Listener prorperty.
TODO: EXAMPLE
Experimental.
type IGatewayRoute ¶
type IGatewayRoute interface { awscdk.IResource // The Amazon Resource Name (ARN) for the GatewayRoute. // Experimental. GatewayRouteArn() *string // The name of the GatewayRoute. // Experimental. GatewayRouteName() *string // The VirtualGateway the GatewayRoute belongs to. // Experimental. VirtualGateway() IVirtualGateway }
Interface for which all GatewayRoute based classes MUST implement. Experimental.
func GatewayRoute_FromGatewayRouteArn ¶
func GatewayRoute_FromGatewayRouteArn(scope constructs.Construct, id *string, gatewayRouteArn *string) IGatewayRoute
Import an existing GatewayRoute given an ARN. Experimental.
func GatewayRoute_FromGatewayRouteAttributes ¶
func GatewayRoute_FromGatewayRouteAttributes(scope constructs.Construct, id *string, attrs *GatewayRouteAttributes) IGatewayRoute
Import an existing GatewayRoute given attributes. Experimental.
type IMesh ¶
type IMesh interface { awscdk.IResource // Creates a new VirtualGateway in this Mesh. // // Note that the Gateway is created in the same Stack that this Mesh belongs to, // which might be different than the current stack. // Experimental. AddVirtualGateway(id *string, props *VirtualGatewayBaseProps) VirtualGateway // Creates a new VirtualNode in this Mesh. // // Note that the Node is created in the same Stack that this Mesh belongs to, // which might be different than the current stack. // Experimental. AddVirtualNode(id *string, props *VirtualNodeBaseProps) VirtualNode // Creates a new VirtualRouter in this Mesh. // // Note that the Router is created in the same Stack that this Mesh belongs to, // which might be different than the current stack. // Experimental. AddVirtualRouter(id *string, props *VirtualRouterBaseProps) VirtualRouter // The Amazon Resource Name (ARN) of the AppMesh mesh. // Experimental. MeshArn() *string // The name of the AppMesh mesh. // Experimental. MeshName() *string }
Interface which all Mesh based classes MUST implement. Experimental.
func Mesh_FromMeshArn ¶
Import an existing mesh by arn. Experimental.
func Mesh_FromMeshName ¶
Import an existing mesh by name. Experimental.
type IRoute ¶
type IRoute interface { awscdk.IResource // The Amazon Resource Name (ARN) for the route. // Experimental. RouteArn() *string // The name of the route. // Experimental. RouteName() *string // The VirtualRouter the Route belongs to. // Experimental. VirtualRouter() IVirtualRouter }
Interface for which all Route based classes MUST implement. Experimental.
func Route_FromRouteArn ¶
Import an existing Route given an ARN. Experimental.
func Route_FromRouteAttributes ¶
func Route_FromRouteAttributes(scope constructs.Construct, id *string, attrs *RouteAttributes) IRoute
Import an existing Route given attributes. Experimental.
type IVirtualGateway ¶
type IVirtualGateway interface { awscdk.IResource // Utility method to add a new GatewayRoute to the VirtualGateway. // Experimental. AddGatewayRoute(id *string, route *GatewayRouteBaseProps) GatewayRoute // Grants the given entity `appmesh:StreamAggregatedResources`. // Experimental. GrantStreamAggregatedResources(identity awsiam.IGrantable) awsiam.Grant // The Mesh which the VirtualGateway belongs to. // Experimental. Mesh() IMesh // The Amazon Resource Name (ARN) for the VirtualGateway. // Experimental. VirtualGatewayArn() *string // Name of the VirtualGateway. // Experimental. VirtualGatewayName() *string }
Interface which all Virtual Gateway based classes must implement. Experimental.
func VirtualGateway_FromVirtualGatewayArn ¶
func VirtualGateway_FromVirtualGatewayArn(scope constructs.Construct, id *string, virtualGatewayArn *string) IVirtualGateway
Import an existing VirtualGateway given an ARN. Experimental.
func VirtualGateway_FromVirtualGatewayAttributes ¶
func VirtualGateway_FromVirtualGatewayAttributes(scope constructs.Construct, id *string, attrs *VirtualGatewayAttributes) IVirtualGateway
Import an existing VirtualGateway given its attributes. Experimental.
type IVirtualNode ¶
type IVirtualNode interface { awscdk.IResource // Grants the given entity `appmesh:StreamAggregatedResources`. // Experimental. GrantStreamAggregatedResources(identity awsiam.IGrantable) awsiam.Grant // The Mesh which the VirtualNode belongs to. // Experimental. Mesh() IMesh // The Amazon Resource Name belonging to the VirtualNode. // // Set this value as the APPMESH_VIRTUAL_NODE_NAME environment variable for // your task group's Envoy proxy container in your task definition or pod // spec. // Experimental. VirtualNodeArn() *string // The name of the VirtualNode. // Experimental. VirtualNodeName() *string }
Interface which all VirtualNode based classes must implement. Experimental.
func VirtualNode_FromVirtualNodeArn ¶
func VirtualNode_FromVirtualNodeArn(scope constructs.Construct, id *string, virtualNodeArn *string) IVirtualNode
Import an existing VirtualNode given an ARN. Experimental.
func VirtualNode_FromVirtualNodeAttributes ¶
func VirtualNode_FromVirtualNodeAttributes(scope constructs.Construct, id *string, attrs *VirtualNodeAttributes) IVirtualNode
Import an existing VirtualNode given its name. Experimental.
type IVirtualRouter ¶
type IVirtualRouter interface { awscdk.IResource // Add a single route to the router. // Experimental. AddRoute(id *string, props *RouteBaseProps) Route // The Mesh which the VirtualRouter belongs to. // Experimental. Mesh() IMesh // The Amazon Resource Name (ARN) for the VirtualRouter. // Experimental. VirtualRouterArn() *string // The name of the VirtualRouter. // Experimental. VirtualRouterName() *string }
Interface which all VirtualRouter based classes MUST implement. Experimental.
func VirtualRouter_FromVirtualRouterArn ¶
func VirtualRouter_FromVirtualRouterArn(scope constructs.Construct, id *string, virtualRouterArn *string) IVirtualRouter
Import an existing VirtualRouter given an ARN. Experimental.
func VirtualRouter_FromVirtualRouterAttributes ¶
func VirtualRouter_FromVirtualRouterAttributes(scope constructs.Construct, id *string, attrs *VirtualRouterAttributes) IVirtualRouter
Import an existing VirtualRouter given attributes. Experimental.
type IVirtualService ¶
type IVirtualService interface { awscdk.IResource // The Mesh which the VirtualService belongs to. // Experimental. Mesh() IMesh // The Amazon Resource Name (ARN) for the virtual service. // Experimental. VirtualServiceArn() *string // The name of the VirtualService. // Experimental. VirtualServiceName() *string }
Represents the interface which all VirtualService based classes MUST implement. Experimental.
func VirtualService_FromVirtualServiceArn ¶
func VirtualService_FromVirtualServiceArn(scope constructs.Construct, id *string, virtualServiceArn *string) IVirtualService
Import an existing VirtualService given an ARN. Experimental.
func VirtualService_FromVirtualServiceAttributes ¶
func VirtualService_FromVirtualServiceAttributes(scope constructs.Construct, id *string, attrs *VirtualServiceAttributes) IVirtualService
Import an existing VirtualService given its attributes. Experimental.
type ListenerTlsOptions ¶
type ListenerTlsOptions struct { // Represents TLS certificate. // Experimental. Certificate TlsCertificate `json:"certificate" yaml:"certificate"` // The TLS mode. // Experimental. Mode TlsMode `json:"mode" yaml:"mode"` // Represents a listener's TLS validation context. // // The client certificate will only be validated if the client provides it, enabling mutual TLS. // Experimental. MutualTlsValidation *MutualTlsValidation `json:"mutualTlsValidation" yaml:"mutualTlsValidation"` }
Represents TLS properties for listener.
TODO: EXAMPLE
Experimental.
type Mesh ¶
type Mesh interface { awscdk.Resource IMesh Env() *awscdk.ResourceEnvironment MeshArn() *string MeshName() *string Node() awscdk.ConstructNode PhysicalName() *string Stack() awscdk.Stack AddVirtualGateway(id *string, props *VirtualGatewayBaseProps) VirtualGateway AddVirtualNode(id *string, props *VirtualNodeBaseProps) VirtualNode AddVirtualRouter(id *string, props *VirtualRouterBaseProps) VirtualRouter ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string Prepare() Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string }
Define a new AppMesh mesh.
TODO: EXAMPLE
See: https://docs.aws.amazon.com/app-mesh/latest/userguide/meshes.html
Experimental.
type MeshFilterType ¶
type MeshFilterType string
A utility enum defined for the egressFilter type property, the default of DROP_ALL, allows traffic only to other resources inside the mesh, or API calls to amazon resources.
TODO: EXAMPLE
Experimental.
const ( MeshFilterType_ALLOW_ALL MeshFilterType = "ALLOW_ALL" MeshFilterType_DROP_ALL MeshFilterType = "DROP_ALL" )
type MeshProps ¶
type MeshProps struct { // Egress filter to be applied to the Mesh. // Experimental. EgressFilter MeshFilterType `json:"egressFilter" yaml:"egressFilter"` // The name of the Mesh being defined. // Experimental. MeshName *string `json:"meshName" yaml:"meshName"` }
The set of properties used when creating a Mesh.
TODO: EXAMPLE
Experimental.
type MutualTlsCertificate ¶
type MutualTlsCertificate interface { TlsCertificate Differentiator() *bool Bind(_scope awscdk.Construct) *TlsCertificateConfig }
Represents a TLS certificate that is supported for mutual TLS authentication.
TODO: EXAMPLE
Experimental.
func MutualTlsCertificate_File ¶
func MutualTlsCertificate_File(certificateChainPath *string, privateKeyPath *string) MutualTlsCertificate
Returns an File TLS Certificate. Experimental.
func MutualTlsCertificate_Sds ¶
func MutualTlsCertificate_Sds(secretName *string) MutualTlsCertificate
Returns an SDS TLS Certificate. Experimental.
func TlsCertificate_File ¶
func TlsCertificate_File(certificateChainPath *string, privateKeyPath *string) MutualTlsCertificate
Returns an File TLS Certificate. Experimental.
func TlsCertificate_Sds ¶
func TlsCertificate_Sds(secretName *string) MutualTlsCertificate
Returns an SDS TLS Certificate. Experimental.
type MutualTlsValidation ¶
type MutualTlsValidation struct { // Reference to where to retrieve the trust chain. // Experimental. Trust MutualTlsValidationTrust `json:"trust" yaml:"trust"` // Represents the subject alternative names (SANs) secured by the certificate. // // SANs must be in the FQDN or URI format. // Experimental. SubjectAlternativeNames SubjectAlternativeNames `json:"subjectAlternativeNames" yaml:"subjectAlternativeNames"` }
Represents the properties needed to define TLS Validation context that is supported for mutual TLS authentication.
TODO: EXAMPLE
Experimental.
type MutualTlsValidationTrust ¶
type MutualTlsValidationTrust interface { TlsValidationTrust Differentiator() *bool Bind(scope awscdk.Construct) *TlsValidationTrustConfig }
Represents a TLS Validation Context Trust that is supported for mutual TLS authentication.
TODO: EXAMPLE
Experimental.
func MutualTlsValidationTrust_File ¶
func MutualTlsValidationTrust_File(certificateChain *string) MutualTlsValidationTrust
Tells envoy where to fetch the validation context from. Experimental.
func MutualTlsValidationTrust_Sds ¶
func MutualTlsValidationTrust_Sds(secretName *string) MutualTlsValidationTrust
TLS Validation Context Trust for Envoy' service discovery service. Experimental.
func TlsValidationTrust_File ¶
func TlsValidationTrust_File(certificateChain *string) MutualTlsValidationTrust
Tells envoy where to fetch the validation context from. Experimental.
func TlsValidationTrust_Sds ¶
func TlsValidationTrust_Sds(secretName *string) MutualTlsValidationTrust
TLS Validation Context Trust for Envoy' service discovery service. Experimental.
type OutlierDetection ¶
type OutlierDetection struct { // The base amount of time for which a host is ejected. // Experimental. BaseEjectionDuration awscdk.Duration `json:"baseEjectionDuration" yaml:"baseEjectionDuration"` // The time interval between ejection sweep analysis. // Experimental. Interval awscdk.Duration `json:"interval" yaml:"interval"` // Maximum percentage of hosts in load balancing pool for upstream service that can be ejected. // // Will eject at // least one host regardless of the value. // Experimental. MaxEjectionPercent *float64 `json:"maxEjectionPercent" yaml:"maxEjectionPercent"` // Number of consecutive 5xx errors required for ejection. // Experimental. MaxServerErrors *float64 `json:"maxServerErrors" yaml:"maxServerErrors"` }
Represents the outlier detection for a listener.
TODO: EXAMPLE
Experimental.
type Protocol ¶
type Protocol string
Enum of supported AppMesh protocols. Deprecated: not for use outside package
type QueryParameterMatch ¶
type QueryParameterMatch interface {
Bind(scope awscdk.Construct) *QueryParameterMatchConfig
}
Used to generate query parameter matching methods.
TODO: EXAMPLE
Experimental.
func QueryParameterMatch_ValueIs ¶
func QueryParameterMatch_ValueIs(queryParameterName *string, queryParameterValue *string) QueryParameterMatch
The value of the query parameter with the given name in the request must match the specified value exactly. Experimental.
type QueryParameterMatchConfig ¶
type QueryParameterMatchConfig struct { // Route CFN configuration for route query parameter match. // Experimental. QueryParameterMatch *CfnRoute_QueryParameterProperty `json:"queryParameterMatch" yaml:"queryParameterMatch"` }
Configuration for `QueryParameterMatch`.
TODO: EXAMPLE
Experimental.
type Route ¶
type Route interface { awscdk.Resource IRoute Env() *awscdk.ResourceEnvironment Node() awscdk.ConstructNode PhysicalName() *string RouteArn() *string RouteName() *string Stack() awscdk.Stack VirtualRouter() IVirtualRouter ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string Prepare() Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string }
Route represents a new or existing route attached to a VirtualRouter and Mesh.
TODO: EXAMPLE
See: https://docs.aws.amazon.com/app-mesh/latest/userguide/routes.html
Experimental.
func NewRoute ¶
func NewRoute(scope constructs.Construct, id *string, props *RouteProps) Route
Experimental.
type RouteAttributes ¶
type RouteAttributes struct { // The name of the Route. // Experimental. RouteName *string `json:"routeName" yaml:"routeName"` // The VirtualRouter the Route belongs to. // Experimental. VirtualRouter IVirtualRouter `json:"virtualRouter" yaml:"virtualRouter"` }
Interface with properties ncecessary to import a reusable Route.
TODO: EXAMPLE
Experimental.
type RouteBaseProps ¶
type RouteBaseProps struct { // Protocol specific spec. // Experimental. RouteSpec RouteSpec `json:"routeSpec" yaml:"routeSpec"` // The name of the route. // Experimental. RouteName *string `json:"routeName" yaml:"routeName"` }
Base interface properties for all Routes.
TODO: EXAMPLE
Experimental.
type RouteProps ¶
type RouteProps struct { // Protocol specific spec. // Experimental. RouteSpec RouteSpec `json:"routeSpec" yaml:"routeSpec"` // The name of the route. // Experimental. RouteName *string `json:"routeName" yaml:"routeName"` // The service mesh to define the route in. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` // The VirtualRouter the Route belongs to. // Experimental. VirtualRouter IVirtualRouter `json:"virtualRouter" yaml:"virtualRouter"` }
Properties to define new Routes.
TODO: EXAMPLE
Experimental.
type RouteSpec ¶
type RouteSpec interface {
Bind(scope awscdk.Construct) *RouteSpecConfig
}
Used to generate specs with different protocols for a RouteSpec.
TODO: EXAMPLE
Experimental.
func RouteSpec_Grpc ¶
func RouteSpec_Grpc(options *GrpcRouteSpecOptions) RouteSpec
Creates a GRPC Based RouteSpec. Experimental.
func RouteSpec_Http ¶
func RouteSpec_Http(options *HttpRouteSpecOptions) RouteSpec
Creates an HTTP Based RouteSpec. Experimental.
func RouteSpec_Http2 ¶
func RouteSpec_Http2(options *HttpRouteSpecOptions) RouteSpec
Creates an HTTP2 Based RouteSpec. Experimental.
func RouteSpec_Tcp ¶
func RouteSpec_Tcp(options *TcpRouteSpecOptions) RouteSpec
Creates a TCP Based RouteSpec. Experimental.
type RouteSpecConfig ¶
type RouteSpecConfig struct { // The spec for a grpc route. // Experimental. GrpcRouteSpec *CfnRoute_GrpcRouteProperty `json:"grpcRouteSpec" yaml:"grpcRouteSpec"` // The spec for an http2 route. // Experimental. Http2RouteSpec *CfnRoute_HttpRouteProperty `json:"http2RouteSpec" yaml:"http2RouteSpec"` // The spec for an http route. // Experimental. HttpRouteSpec *CfnRoute_HttpRouteProperty `json:"httpRouteSpec" yaml:"httpRouteSpec"` // The priority for the route. // // When a Virtual Router has multiple routes, route match is performed in the // order of specified value, where 0 is the highest priority, and first matched route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` // The spec for a tcp route. // Experimental. TcpRouteSpec *CfnRoute_TcpRouteProperty `json:"tcpRouteSpec" yaml:"tcpRouteSpec"` }
All Properties for Route Specs.
TODO: EXAMPLE
Experimental.
type RouteSpecOptionsBase ¶
type RouteSpecOptionsBase struct { // The priority for the route. // // When a Virtual Router has multiple routes, route match is performed in the // order of specified value, where 0 is the highest priority, and first matched route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` }
Base options for all route specs.
TODO: EXAMPLE
Experimental.
type ServiceDiscovery ¶
type ServiceDiscovery interface {
Bind(scope awscdk.Construct) *ServiceDiscoveryConfig
}
Provides the Service Discovery method a VirtualNode uses.
TODO: EXAMPLE
Experimental.
func ServiceDiscovery_CloudMap ¶
func ServiceDiscovery_CloudMap(service awsservicediscovery.IService, instanceAttributes *map[string]*string) ServiceDiscovery
Returns Cloud Map based service discovery. Experimental.
func ServiceDiscovery_Dns ¶
func ServiceDiscovery_Dns(hostname *string, responseType DnsResponseType) ServiceDiscovery
Returns DNS based service discovery. Experimental.
type ServiceDiscoveryConfig ¶
type ServiceDiscoveryConfig struct { // Cloud Map based Service Discovery. // Experimental. Cloudmap *CfnVirtualNode_AwsCloudMapServiceDiscoveryProperty `json:"cloudmap" yaml:"cloudmap"` // DNS based Service Discovery. // Experimental. Dns *CfnVirtualNode_DnsServiceDiscoveryProperty `json:"dns" yaml:"dns"` }
Properties for VirtualNode Service Discovery.
TODO: EXAMPLE
Experimental.
type SubjectAlternativeNames ¶
type SubjectAlternativeNames interface {
Bind(scope awscdk.Construct) *SubjectAlternativeNamesMatcherConfig
}
Used to generate Subject Alternative Names Matchers.
TODO: EXAMPLE
Experimental.
func SubjectAlternativeNames_MatchingExactly ¶
func SubjectAlternativeNames_MatchingExactly(names ...*string) SubjectAlternativeNames
The values of the SAN must match the specified values exactly. Experimental.
type SubjectAlternativeNamesMatcherConfig ¶
type SubjectAlternativeNamesMatcherConfig struct { // VirtualNode CFN configuration for subject alternative names secured by the certificate. // Experimental. SubjectAlternativeNamesMatch *CfnVirtualNode_SubjectAlternativeNameMatchersProperty `json:"subjectAlternativeNamesMatch" yaml:"subjectAlternativeNamesMatch"` }
All Properties for Subject Alternative Names Matcher for both Client Policy and Listener.
TODO: EXAMPLE
Experimental.
type TcpConnectionPool ¶
type TcpConnectionPool struct { // The maximum connections in the pool. // Experimental. MaxConnections *float64 `json:"maxConnections" yaml:"maxConnections"` }
Connection pool properties for TCP listeners.
TODO: EXAMPLE
Experimental.
type TcpHealthCheckOptions ¶
type TcpHealthCheckOptions struct { // The number of consecutive successful health checks that must occur before declaring listener healthy. // Experimental. HealthyThreshold *float64 `json:"healthyThreshold" yaml:"healthyThreshold"` // The time period between each health check execution. // Experimental. Interval awscdk.Duration `json:"interval" yaml:"interval"` // The amount of time to wait when receiving a response from the health check. // Experimental. Timeout awscdk.Duration `json:"timeout" yaml:"timeout"` // The number of consecutive failed health checks that must occur before declaring a listener unhealthy. // Experimental. UnhealthyThreshold *float64 `json:"unhealthyThreshold" yaml:"unhealthyThreshold"` }
Properties used to define TCP Based healthchecks.
TODO: EXAMPLE
Experimental.
type TcpRetryEvent ¶
type TcpRetryEvent string
TCP events on which you may retry.
TODO: EXAMPLE
Experimental.
const (
TcpRetryEvent_CONNECTION_ERROR TcpRetryEvent = "CONNECTION_ERROR"
)
type TcpRouteSpecOptions ¶
type TcpRouteSpecOptions struct { // The priority for the route. // // When a Virtual Router has multiple routes, route match is performed in the // order of specified value, where 0 is the highest priority, and first matched route is selected. // Experimental. Priority *float64 `json:"priority" yaml:"priority"` // List of targets that traffic is routed to when a request matches the route. // Experimental. WeightedTargets *[]*WeightedTarget `json:"weightedTargets" yaml:"weightedTargets"` // An object that represents a tcp timeout. // Experimental. Timeout *TcpTimeout `json:"timeout" yaml:"timeout"` }
Properties specific for a TCP Based Routes.
TODO: EXAMPLE
Experimental.
type TcpTimeout ¶
type TcpTimeout struct { // Represents an idle timeout. // // The amount of time that a connection may be idle. // Experimental. Idle awscdk.Duration `json:"idle" yaml:"idle"` }
Represents timeouts for TCP protocols.
TODO: EXAMPLE
Experimental.
type TcpVirtualNodeListenerOptions ¶
type TcpVirtualNodeListenerOptions struct { // Connection pool for http listeners. // Experimental. ConnectionPool *TcpConnectionPool `json:"connectionPool" yaml:"connectionPool"` // The health check information for the listener. // Experimental. HealthCheck HealthCheck `json:"healthCheck" yaml:"healthCheck"` // Represents the configuration for enabling outlier detection. // Experimental. OutlierDetection *OutlierDetection `json:"outlierDetection" yaml:"outlierDetection"` // Port to listen for connections on. // Experimental. Port *float64 `json:"port" yaml:"port"` // Timeout for TCP protocol. // Experimental. Timeout *TcpTimeout `json:"timeout" yaml:"timeout"` // Represents the configuration for enabling TLS on a listener. // Experimental. Tls *ListenerTlsOptions `json:"tls" yaml:"tls"` }
Represent the TCP Node Listener prorperty.
TODO: EXAMPLE
Experimental.
type TlsCertificate ¶
type TlsCertificate interface {
Bind(_scope awscdk.Construct) *TlsCertificateConfig
}
Represents a TLS certificate.
TODO: EXAMPLE
Experimental.
func MutualTlsCertificate_Acm ¶
func MutualTlsCertificate_Acm(certificate awscertificatemanager.ICertificate) TlsCertificate
Returns an ACM TLS Certificate. Experimental.
func TlsCertificate_Acm ¶
func TlsCertificate_Acm(certificate awscertificatemanager.ICertificate) TlsCertificate
Returns an ACM TLS Certificate. Experimental.
type TlsCertificateConfig ¶
type TlsCertificateConfig struct { // The CFN shape for a TLS certificate. // Experimental. TlsCertificate *CfnVirtualNode_ListenerTlsCertificateProperty `json:"tlsCertificate" yaml:"tlsCertificate"` }
A wrapper for the tls config returned by {@link TlsCertificate.bind}.
TODO: EXAMPLE
Experimental.
type TlsClientPolicy ¶
type TlsClientPolicy struct { // Represents the object for TLS validation context. // Experimental. Validation *TlsValidation `json:"validation" yaml:"validation"` // Whether the policy is enforced. // Experimental. Enforce *bool `json:"enforce" yaml:"enforce"` // Represents a client TLS certificate. // // The certificate will be sent only if the server requests it, enabling mutual TLS. // Experimental. MutualTlsCertificate MutualTlsCertificate `json:"mutualTlsCertificate" yaml:"mutualTlsCertificate"` // TLS is enforced on the ports specified here. // // If no ports are specified, TLS will be enforced on all the ports. // Experimental. Ports *[]*float64 `json:"ports" yaml:"ports"` }
Represents the properties needed to define client policy.
TODO: EXAMPLE
Experimental.
type TlsValidation ¶
type TlsValidation struct { // Reference to where to retrieve the trust chain. // Experimental. Trust TlsValidationTrust `json:"trust" yaml:"trust"` // Represents the subject alternative names (SANs) secured by the certificate. // // SANs must be in the FQDN or URI format. // Experimental. SubjectAlternativeNames SubjectAlternativeNames `json:"subjectAlternativeNames" yaml:"subjectAlternativeNames"` }
Represents the properties needed to define TLS Validation context.
TODO: EXAMPLE
Experimental.
type TlsValidationTrust ¶
type TlsValidationTrust interface {
Bind(scope awscdk.Construct) *TlsValidationTrustConfig
}
Defines the TLS Validation Context Trust.
TODO: EXAMPLE
Experimental.
func MutualTlsValidationTrust_Acm ¶
func MutualTlsValidationTrust_Acm(certificateAuthorities *[]awsacmpca.ICertificateAuthority) TlsValidationTrust
TLS Validation Context Trust for ACM Private Certificate Authority (CA). Experimental.
func TlsValidationTrust_Acm ¶
func TlsValidationTrust_Acm(certificateAuthorities *[]awsacmpca.ICertificateAuthority) TlsValidationTrust
TLS Validation Context Trust for ACM Private Certificate Authority (CA). Experimental.
type TlsValidationTrustConfig ¶
type TlsValidationTrustConfig struct { // VirtualNode CFN configuration for client policy's TLS Validation Trust. // Experimental. TlsValidationTrust *CfnVirtualNode_TlsValidationContextTrustProperty `json:"tlsValidationTrust" yaml:"tlsValidationTrust"` }
All Properties for TLS Validation Trusts for both Client Policy and Listener.
TODO: EXAMPLE
Experimental.
type VirtualGateway ¶
type VirtualGateway interface { awscdk.Resource IVirtualGateway Env() *awscdk.ResourceEnvironment Listeners() *[]*VirtualGatewayListenerConfig Mesh() IMesh Node() awscdk.ConstructNode PhysicalName() *string Stack() awscdk.Stack VirtualGatewayArn() *string VirtualGatewayName() *string AddGatewayRoute(id *string, props *GatewayRouteBaseProps) GatewayRoute ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string GrantStreamAggregatedResources(identity awsiam.IGrantable) awsiam.Grant OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string Prepare() Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string }
VirtualGateway represents a newly defined App Mesh Virtual Gateway.
A virtual gateway allows resources that are outside of your mesh to communicate to resources that are inside of your mesh.
TODO: EXAMPLE
See: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
Experimental.
func NewVirtualGateway ¶
func NewVirtualGateway(scope constructs.Construct, id *string, props *VirtualGatewayProps) VirtualGateway
Experimental.
type VirtualGatewayAttributes ¶
type VirtualGatewayAttributes struct { // The Mesh that the VirtualGateway belongs to. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` // The name of the VirtualGateway. // Experimental. VirtualGatewayName *string `json:"virtualGatewayName" yaml:"virtualGatewayName"` }
Unterface with properties necessary to import a reusable VirtualGateway.
TODO: EXAMPLE
Experimental.
type VirtualGatewayBaseProps ¶
type VirtualGatewayBaseProps struct { // Access Logging Configuration for the VirtualGateway. // Experimental. AccessLog AccessLog `json:"accessLog" yaml:"accessLog"` // Default Configuration Virtual Node uses to communicate with Virtual Service. // Experimental. BackendDefaults *BackendDefaults `json:"backendDefaults" yaml:"backendDefaults"` // Listeners for the VirtualGateway. // // Only one is supported. // Experimental. Listeners *[]VirtualGatewayListener `json:"listeners" yaml:"listeners"` // Name of the VirtualGateway. // Experimental. VirtualGatewayName *string `json:"virtualGatewayName" yaml:"virtualGatewayName"` }
Basic configuration properties for a VirtualGateway.
TODO: EXAMPLE
Experimental.
type VirtualGatewayListener ¶
type VirtualGatewayListener interface {
Bind(scope awscdk.Construct) *VirtualGatewayListenerConfig
}
Represents the properties needed to define listeners for a VirtualGateway.
TODO: EXAMPLE
Experimental.
func VirtualGatewayListener_Grpc ¶
func VirtualGatewayListener_Grpc(options *GrpcGatewayListenerOptions) VirtualGatewayListener
Returns a GRPC Listener for a VirtualGateway. Experimental.
func VirtualGatewayListener_Http ¶
func VirtualGatewayListener_Http(options *HttpGatewayListenerOptions) VirtualGatewayListener
Returns an HTTP Listener for a VirtualGateway. Experimental.
func VirtualGatewayListener_Http2 ¶
func VirtualGatewayListener_Http2(options *Http2GatewayListenerOptions) VirtualGatewayListener
Returns an HTTP2 Listener for a VirtualGateway. Experimental.
type VirtualGatewayListenerConfig ¶
type VirtualGatewayListenerConfig struct { // Single listener config for a VirtualGateway. // Experimental. Listener *CfnVirtualGateway_VirtualGatewayListenerProperty `json:"listener" yaml:"listener"` }
Properties for a VirtualGateway listener.
TODO: EXAMPLE
Experimental.
type VirtualGatewayProps ¶
type VirtualGatewayProps struct { // Access Logging Configuration for the VirtualGateway. // Experimental. AccessLog AccessLog `json:"accessLog" yaml:"accessLog"` // Default Configuration Virtual Node uses to communicate with Virtual Service. // Experimental. BackendDefaults *BackendDefaults `json:"backendDefaults" yaml:"backendDefaults"` // Listeners for the VirtualGateway. // // Only one is supported. // Experimental. Listeners *[]VirtualGatewayListener `json:"listeners" yaml:"listeners"` // Name of the VirtualGateway. // Experimental. VirtualGatewayName *string `json:"virtualGatewayName" yaml:"virtualGatewayName"` // The Mesh which the VirtualGateway belongs to. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` }
Properties used when creating a new VirtualGateway.
TODO: EXAMPLE
Experimental.
type VirtualNode ¶
type VirtualNode interface { awscdk.Resource IVirtualNode Env() *awscdk.ResourceEnvironment Mesh() IMesh Node() awscdk.ConstructNode PhysicalName() *string Stack() awscdk.Stack VirtualNodeArn() *string VirtualNodeName() *string AddBackend(backend Backend) AddListener(listener VirtualNodeListener) ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string GrantStreamAggregatedResources(identity awsiam.IGrantable) awsiam.Grant OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string Prepare() Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string }
VirtualNode represents a newly defined AppMesh VirtualNode.
Any inbound traffic that your virtual node expects should be specified as a listener. Any outbound traffic that your virtual node expects to reach should be specified as a backend.
TODO: EXAMPLE
See: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_nodes.html
Experimental.
func NewVirtualNode ¶
func NewVirtualNode(scope constructs.Construct, id *string, props *VirtualNodeProps) VirtualNode
Experimental.
type VirtualNodeAttributes ¶
type VirtualNodeAttributes struct { // The Mesh that the VirtualNode belongs to. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` // The name of the VirtualNode. // Experimental. VirtualNodeName *string `json:"virtualNodeName" yaml:"virtualNodeName"` }
Interface with properties necessary to import a reusable VirtualNode.
TODO: EXAMPLE
Experimental.
type VirtualNodeBaseProps ¶
type VirtualNodeBaseProps struct { // Access Logging Configuration for the virtual node. // Experimental. AccessLog AccessLog `json:"accessLog" yaml:"accessLog"` // Default Configuration Virtual Node uses to communicate with Virtual Service. // Experimental. BackendDefaults *BackendDefaults `json:"backendDefaults" yaml:"backendDefaults"` // Virtual Services that this is node expected to send outbound traffic to. // Experimental. Backends *[]Backend `json:"backends" yaml:"backends"` // Initial listener for the virtual node. // Experimental. Listeners *[]VirtualNodeListener `json:"listeners" yaml:"listeners"` // Defines how upstream clients will discover this VirtualNode. // Experimental. ServiceDiscovery ServiceDiscovery `json:"serviceDiscovery" yaml:"serviceDiscovery"` // The name of the VirtualNode. // Experimental. VirtualNodeName *string `json:"virtualNodeName" yaml:"virtualNodeName"` }
Basic configuration properties for a VirtualNode.
TODO: EXAMPLE
Experimental.
type VirtualNodeListener ¶
type VirtualNodeListener interface {
Bind(scope awscdk.Construct) *VirtualNodeListenerConfig
}
Defines listener for a VirtualNode.
TODO: EXAMPLE
Experimental.
func VirtualNodeListener_Grpc ¶
func VirtualNodeListener_Grpc(props *GrpcVirtualNodeListenerOptions) VirtualNodeListener
Returns an GRPC Listener for a VirtualNode. Experimental.
func VirtualNodeListener_Http ¶
func VirtualNodeListener_Http(props *HttpVirtualNodeListenerOptions) VirtualNodeListener
Returns an HTTP Listener for a VirtualNode. Experimental.
func VirtualNodeListener_Http2 ¶
func VirtualNodeListener_Http2(props *Http2VirtualNodeListenerOptions) VirtualNodeListener
Returns an HTTP2 Listener for a VirtualNode. Experimental.
func VirtualNodeListener_Tcp ¶
func VirtualNodeListener_Tcp(props *TcpVirtualNodeListenerOptions) VirtualNodeListener
Returns an TCP Listener for a VirtualNode. Experimental.
type VirtualNodeListenerConfig ¶
type VirtualNodeListenerConfig struct { // Single listener config for a VirtualNode. // Experimental. Listener *CfnVirtualNode_ListenerProperty `json:"listener" yaml:"listener"` }
Properties for a VirtualNode listener.
TODO: EXAMPLE
Experimental.
type VirtualNodeProps ¶
type VirtualNodeProps struct { // Access Logging Configuration for the virtual node. // Experimental. AccessLog AccessLog `json:"accessLog" yaml:"accessLog"` // Default Configuration Virtual Node uses to communicate with Virtual Service. // Experimental. BackendDefaults *BackendDefaults `json:"backendDefaults" yaml:"backendDefaults"` // Virtual Services that this is node expected to send outbound traffic to. // Experimental. Backends *[]Backend `json:"backends" yaml:"backends"` // Initial listener for the virtual node. // Experimental. Listeners *[]VirtualNodeListener `json:"listeners" yaml:"listeners"` // Defines how upstream clients will discover this VirtualNode. // Experimental. ServiceDiscovery ServiceDiscovery `json:"serviceDiscovery" yaml:"serviceDiscovery"` // The name of the VirtualNode. // Experimental. VirtualNodeName *string `json:"virtualNodeName" yaml:"virtualNodeName"` // The Mesh which the VirtualNode belongs to. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` }
The properties used when creating a new VirtualNode.
TODO: EXAMPLE
Experimental.
type VirtualRouter ¶
type VirtualRouter interface { awscdk.Resource IVirtualRouter Env() *awscdk.ResourceEnvironment Mesh() IMesh Node() awscdk.ConstructNode PhysicalName() *string Stack() awscdk.Stack VirtualRouterArn() *string VirtualRouterName() *string AddRoute(id *string, props *RouteBaseProps) Route ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string Prepare() Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string }
TODO: EXAMPLE
Experimental.
func NewVirtualRouter ¶
func NewVirtualRouter(scope constructs.Construct, id *string, props *VirtualRouterProps) VirtualRouter
Experimental.
type VirtualRouterAttributes ¶
type VirtualRouterAttributes struct { // The Mesh which the VirtualRouter belongs to. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` // The name of the VirtualRouter. // Experimental. VirtualRouterName *string `json:"virtualRouterName" yaml:"virtualRouterName"` }
Interface with properties ncecessary to import a reusable VirtualRouter.
TODO: EXAMPLE
Experimental.
type VirtualRouterBaseProps ¶
type VirtualRouterBaseProps struct { // Listener specification for the VirtualRouter. // Experimental. Listeners *[]VirtualRouterListener `json:"listeners" yaml:"listeners"` // The name of the VirtualRouter. // Experimental. VirtualRouterName *string `json:"virtualRouterName" yaml:"virtualRouterName"` }
Interface with base properties all routers willl inherit.
TODO: EXAMPLE
Experimental.
type VirtualRouterListener ¶
type VirtualRouterListener interface {
Bind(scope awscdk.Construct) *VirtualRouterListenerConfig
}
Represents the properties needed to define listeners for a VirtualRouter.
TODO: EXAMPLE
Experimental.
func VirtualRouterListener_Grpc ¶
func VirtualRouterListener_Grpc(port *float64) VirtualRouterListener
Returns a GRPC Listener for a VirtualRouter. Experimental.
func VirtualRouterListener_Http ¶
func VirtualRouterListener_Http(port *float64) VirtualRouterListener
Returns an HTTP Listener for a VirtualRouter. Experimental.
func VirtualRouterListener_Http2 ¶
func VirtualRouterListener_Http2(port *float64) VirtualRouterListener
Returns an HTTP2 Listener for a VirtualRouter. Experimental.
func VirtualRouterListener_Tcp ¶
func VirtualRouterListener_Tcp(port *float64) VirtualRouterListener
Returns a TCP Listener for a VirtualRouter. Experimental.
type VirtualRouterListenerConfig ¶
type VirtualRouterListenerConfig struct { // Single listener config for a VirtualRouter. // Experimental. Listener *CfnVirtualRouter_VirtualRouterListenerProperty `json:"listener" yaml:"listener"` }
Properties for a VirtualRouter listener.
TODO: EXAMPLE
Experimental.
type VirtualRouterProps ¶
type VirtualRouterProps struct { // Listener specification for the VirtualRouter. // Experimental. Listeners *[]VirtualRouterListener `json:"listeners" yaml:"listeners"` // The name of the VirtualRouter. // Experimental. VirtualRouterName *string `json:"virtualRouterName" yaml:"virtualRouterName"` // The Mesh which the VirtualRouter belongs to. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` }
The properties used when creating a new VirtualRouter.
TODO: EXAMPLE
Experimental.
type VirtualService ¶
type VirtualService interface { awscdk.Resource IVirtualService Env() *awscdk.ResourceEnvironment Mesh() IMesh Node() awscdk.ConstructNode PhysicalName() *string Stack() awscdk.Stack VirtualServiceArn() *string VirtualServiceName() *string ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string GetResourceNameAttribute(nameAttr *string) *string OnPrepare() OnSynthesize(session constructs.ISynthesisSession) OnValidate() *[]*string Prepare() Synthesize(session awscdk.ISynthesisSession) ToString() *string Validate() *[]*string }
VirtualService represents a service inside an AppMesh.
It routes traffic either to a Virtual Node or to a Virtual Router.
TODO: EXAMPLE
See: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_services.html
Experimental.
func NewVirtualService ¶
func NewVirtualService(scope constructs.Construct, id *string, props *VirtualServiceProps) VirtualService
Experimental.
type VirtualServiceAttributes ¶
type VirtualServiceAttributes struct { // The Mesh which the VirtualService belongs to. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` // The name of the VirtualService, it is recommended this follows the fully-qualified domain name format. // Experimental. VirtualServiceName *string `json:"virtualServiceName" yaml:"virtualServiceName"` }
Interface with properties ncecessary to import a reusable VirtualService.
TODO: EXAMPLE
Experimental.
type VirtualServiceBackendOptions ¶
type VirtualServiceBackendOptions struct { // TLS properties for Client policy for the backend. // Experimental. TlsClientPolicy *TlsClientPolicy `json:"tlsClientPolicy" yaml:"tlsClientPolicy"` }
Represents the properties needed to define a Virtual Service backend.
TODO: EXAMPLE
Experimental.
type VirtualServiceProps ¶
type VirtualServiceProps struct { // The VirtualNode or VirtualRouter which the VirtualService uses as its provider. // Experimental. VirtualServiceProvider VirtualServiceProvider `json:"virtualServiceProvider" yaml:"virtualServiceProvider"` // The name of the VirtualService. // // It is recommended this follows the fully-qualified domain name format, // such as "my-service.default.svc.cluster.local". // // Example value: `service.domain.local` // Experimental. VirtualServiceName *string `json:"virtualServiceName" yaml:"virtualServiceName"` }
The properties applied to the VirtualService being defined.
TODO: EXAMPLE
Experimental.
type VirtualServiceProvider ¶
type VirtualServiceProvider interface {
Bind(_construct constructs.Construct) *VirtualServiceProviderConfig
}
Represents the properties needed to define the provider for a VirtualService.
TODO: EXAMPLE
Experimental.
func VirtualServiceProvider_None ¶
func VirtualServiceProvider_None(mesh IMesh) VirtualServiceProvider
Returns an Empty Provider for a VirtualService.
This provides no routing capabilities and should only be used as a placeholder Experimental.
func VirtualServiceProvider_VirtualNode ¶
func VirtualServiceProvider_VirtualNode(virtualNode IVirtualNode) VirtualServiceProvider
Returns a VirtualNode based Provider for a VirtualService. Experimental.
func VirtualServiceProvider_VirtualRouter ¶
func VirtualServiceProvider_VirtualRouter(virtualRouter IVirtualRouter) VirtualServiceProvider
Returns a VirtualRouter based Provider for a VirtualService. Experimental.
type VirtualServiceProviderConfig ¶
type VirtualServiceProviderConfig struct { // Mesh the Provider is using. // Experimental. Mesh IMesh `json:"mesh" yaml:"mesh"` // Virtual Node based provider. // Experimental. VirtualNodeProvider *CfnVirtualService_VirtualNodeServiceProviderProperty `json:"virtualNodeProvider" yaml:"virtualNodeProvider"` // Virtual Router based provider. // Experimental. VirtualRouterProvider *CfnVirtualService_VirtualRouterServiceProviderProperty `json:"virtualRouterProvider" yaml:"virtualRouterProvider"` }
Properties for a VirtualService provider.
TODO: EXAMPLE
Experimental.
type WeightedTarget ¶
type WeightedTarget struct { // The VirtualNode the route points to. // Experimental. VirtualNode IVirtualNode `json:"virtualNode" yaml:"virtualNode"` // The weight for the target. // Experimental. Weight *float64 `json:"weight" yaml:"weight"` }
Properties for the Weighted Targets in the route.
TODO: EXAMPLE
Experimental.