CfnRoutePropsMixin

class aws_cdk.mixins_preview.aws_appmesh.mixins.CfnRoutePropsMixin(props, *, strategy=None)

Bases: Mixin

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 .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html

CloudformationResource:

AWS::AppMesh::Route

Mixin:

true

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview import mixins
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

cfn_route_props_mixin = appmesh_mixins.CfnRoutePropsMixin(appmesh_mixins.CfnRouteMixinProps(
    mesh_name="meshName",
    mesh_owner="meshOwner",
    route_name="routeName",
    spec=appmesh_mixins.CfnRoutePropsMixin.RouteSpecProperty(
        grpc_route=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteProperty(
            action=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteActionProperty(
                weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
                    port=123,
                    virtual_node="virtualNode",
                    weight=123
                )]
            ),
            match=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMatchProperty(
                metadata=[appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataProperty(
                    invert=False,
                    match=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataMatchMethodProperty(
                        exact="exact",
                        prefix="prefix",
                        range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                            end=123,
                            start=123
                        ),
                        regex="regex",
                        suffix="suffix"
                    ),
                    name="name"
                )],
                method_name="methodName",
                port=123,
                service_name="serviceName"
            ),
            retry_policy=appmesh_mixins.CfnRoutePropsMixin.GrpcRetryPolicyProperty(
                grpc_retry_events=["grpcRetryEvents"],
                http_retry_events=["httpRetryEvents"],
                max_retries=123,
                per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                ),
                tcp_retry_events=["tcpRetryEvents"]
            ),
            timeout=appmesh_mixins.CfnRoutePropsMixin.GrpcTimeoutProperty(
                idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                ),
                per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                )
            )
        ),
        http2_route=appmesh_mixins.CfnRoutePropsMixin.HttpRouteProperty(
            action=appmesh_mixins.CfnRoutePropsMixin.HttpRouteActionProperty(
                weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
                    port=123,
                    virtual_node="virtualNode",
                    weight=123
                )]
            ),
            match=appmesh_mixins.CfnRoutePropsMixin.HttpRouteMatchProperty(
                headers=[appmesh_mixins.CfnRoutePropsMixin.HttpRouteHeaderProperty(
                    invert=False,
                    match=appmesh_mixins.CfnRoutePropsMixin.HeaderMatchMethodProperty(
                        exact="exact",
                        prefix="prefix",
                        range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                            end=123,
                            start=123
                        ),
                        regex="regex",
                        suffix="suffix"
                    ),
                    name="name"
                )],
                method="method",
                path=appmesh_mixins.CfnRoutePropsMixin.HttpPathMatchProperty(
                    exact="exact",
                    regex="regex"
                ),
                port=123,
                prefix="prefix",
                query_parameters=[appmesh_mixins.CfnRoutePropsMixin.QueryParameterProperty(
                    match=appmesh_mixins.CfnRoutePropsMixin.HttpQueryParameterMatchProperty(
                        exact="exact"
                    ),
                    name="name"
                )],
                scheme="scheme"
            ),
            retry_policy=appmesh_mixins.CfnRoutePropsMixin.HttpRetryPolicyProperty(
                http_retry_events=["httpRetryEvents"],
                max_retries=123,
                per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                ),
                tcp_retry_events=["tcpRetryEvents"]
            ),
            timeout=appmesh_mixins.CfnRoutePropsMixin.HttpTimeoutProperty(
                idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                ),
                per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                )
            )
        ),
        http_route=appmesh_mixins.CfnRoutePropsMixin.HttpRouteProperty(
            action=appmesh_mixins.CfnRoutePropsMixin.HttpRouteActionProperty(
                weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
                    port=123,
                    virtual_node="virtualNode",
                    weight=123
                )]
            ),
            match=appmesh_mixins.CfnRoutePropsMixin.HttpRouteMatchProperty(
                headers=[appmesh_mixins.CfnRoutePropsMixin.HttpRouteHeaderProperty(
                    invert=False,
                    match=appmesh_mixins.CfnRoutePropsMixin.HeaderMatchMethodProperty(
                        exact="exact",
                        prefix="prefix",
                        range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                            end=123,
                            start=123
                        ),
                        regex="regex",
                        suffix="suffix"
                    ),
                    name="name"
                )],
                method="method",
                path=appmesh_mixins.CfnRoutePropsMixin.HttpPathMatchProperty(
                    exact="exact",
                    regex="regex"
                ),
                port=123,
                prefix="prefix",
                query_parameters=[appmesh_mixins.CfnRoutePropsMixin.QueryParameterProperty(
                    match=appmesh_mixins.CfnRoutePropsMixin.HttpQueryParameterMatchProperty(
                        exact="exact"
                    ),
                    name="name"
                )],
                scheme="scheme"
            ),
            retry_policy=appmesh_mixins.CfnRoutePropsMixin.HttpRetryPolicyProperty(
                http_retry_events=["httpRetryEvents"],
                max_retries=123,
                per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                ),
                tcp_retry_events=["tcpRetryEvents"]
            ),
            timeout=appmesh_mixins.CfnRoutePropsMixin.HttpTimeoutProperty(
                idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                ),
                per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                )
            )
        ),
        priority=123,
        tcp_route=appmesh_mixins.CfnRoutePropsMixin.TcpRouteProperty(
            action=appmesh_mixins.CfnRoutePropsMixin.TcpRouteActionProperty(
                weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
                    port=123,
                    virtual_node="virtualNode",
                    weight=123
                )]
            ),
            match=appmesh_mixins.CfnRoutePropsMixin.TcpRouteMatchProperty(
                port=123
            ),
            timeout=appmesh_mixins.CfnRoutePropsMixin.TcpTimeoutProperty(
                idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                    unit="unit",
                    value=123
                )
            )
        )
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    virtual_router_name="virtualRouterName"
),
    strategy=mixins.PropertyMergeStrategy.OVERRIDE
)

Create a mixin to apply properties to AWS::AppMesh::Route.

Parameters:
  • props (Union[CfnRouteMixinProps, Dict[str, Any]]) – L1 properties to apply.

  • strategy (Optional[PropertyMergeStrategy]) – (experimental) Strategy for merging nested properties. Default: - PropertyMergeStrategy.MERGE

Methods

apply_to(construct)

Apply the mixin properties to the construct.

Parameters:

construct (IConstruct)

Return type:

IConstruct

supports(construct)

Check if this mixin supports the given construct.

Parameters:

construct (IConstruct)

Return type:

bool

Attributes

CFN_PROPERTY_KEYS = ['meshName', 'meshOwner', 'routeName', 'spec', 'tags', 'virtualRouterName']

Static Methods

classmethod is_mixin(x)

(experimental) Checks if x is a Mixin.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Mixin.

Stability:

experimental

DurationProperty

class CfnRoutePropsMixin.DurationProperty(*, unit=None, value=None)

Bases: object

An object that represents a duration of time.

Parameters:
  • unit (Optional[str]) – A unit of time.

  • value (Union[int, float, None]) – A number of time units.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

duration_property = appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
    unit="unit",
    value=123
)

Attributes

unit

A unit of time.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html#cfn-appmesh-route-duration-unit

value

A number of time units.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-duration.html#cfn-appmesh-route-duration-value

GrpcRetryPolicyProperty

class CfnRoutePropsMixin.GrpcRetryPolicyProperty(*, grpc_retry_events=None, http_retry_events=None, max_retries=None, per_retry_timeout=None, tcp_retry_events=None)

Bases: object

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 .

Parameters:
  • grpc_retry_events (Optional[Sequence[str]]) – Specify at least one of the valid values.

  • http_retry_events (Optional[Sequence[str]]) – 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

  • max_retries (Union[int, float, None]) – The maximum number of retry attempts.

  • per_retry_timeout (Union[IResolvable, DurationProperty, Dict[str, Any], None]) – The timeout for each retry attempt.

  • tcp_retry_events (Optional[Sequence[str]]) – 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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

grpc_retry_policy_property = appmesh_mixins.CfnRoutePropsMixin.GrpcRetryPolicyProperty(
    grpc_retry_events=["grpcRetryEvents"],
    http_retry_events=["httpRetryEvents"],
    max_retries=123,
    per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
        unit="unit",
        value=123
    ),
    tcp_retry_events=["tcpRetryEvents"]
)

Attributes

grpc_retry_events

Specify at least one of the valid values.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-grpcretryevents

http_retry_events

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

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-httpretryevents

max_retries

The maximum number of retry attempts.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-maxretries

per_retry_timeout

The timeout for each retry attempt.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-perretrytimeout

tcp_retry_events

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcretrypolicy.html#cfn-appmesh-route-grpcretrypolicy-tcpretryevents

GrpcRouteActionProperty

class CfnRoutePropsMixin.GrpcRouteActionProperty(*, weighted_targets=None)

Bases: object

An object that represents the action to take if a match is determined.

Parameters:

weighted_targets (Union[IResolvable, Sequence[Union[IResolvable, WeightedTargetProperty, Dict[str, Any]]], None]) – An object that represents the targets that traffic is routed to when a request matches the route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcrouteaction.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

grpc_route_action_property = appmesh_mixins.CfnRoutePropsMixin.GrpcRouteActionProperty(
    weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
        port=123,
        virtual_node="virtualNode",
        weight=123
    )]
)

Attributes

weighted_targets

An object that represents the targets that traffic is routed to when a request matches the route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcrouteaction.html#cfn-appmesh-route-grpcrouteaction-weightedtargets

GrpcRouteMatchProperty

class CfnRoutePropsMixin.GrpcRouteMatchProperty(*, metadata=None, method_name=None, port=None, service_name=None)

Bases: object

An object that represents the criteria for determining a request match.

Parameters:
  • metadata (Union[IResolvable, Sequence[Union[IResolvable, GrpcRouteMetadataProperty, Dict[str, Any]]], None]) – An object that represents the data to match from the request.

  • method_name (Optional[str]) – The method name to match from the request. If you specify a name, you must also specify a serviceName .

  • port (Union[int, float, None]) – The port number to match on.

  • service_name (Optional[str]) – The fully qualified domain name for the service to match from the request.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

grpc_route_match_property = appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMatchProperty(
    metadata=[appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataProperty(
        invert=False,
        match=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataMatchMethodProperty(
            exact="exact",
            prefix="prefix",
            range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                end=123,
                start=123
            ),
            regex="regex",
            suffix="suffix"
        ),
        name="name"
    )],
    method_name="methodName",
    port=123,
    service_name="serviceName"
)

Attributes

metadata

An object that represents the data to match from the request.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html#cfn-appmesh-route-grpcroutematch-metadata

method_name

The method name to match from the request.

If you specify a name, you must also specify a serviceName .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html#cfn-appmesh-route-grpcroutematch-methodname

port

The port number to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html#cfn-appmesh-route-grpcroutematch-port

service_name

The fully qualified domain name for the service to match from the request.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutematch.html#cfn-appmesh-route-grpcroutematch-servicename

GrpcRouteMetadataMatchMethodProperty

class CfnRoutePropsMixin.GrpcRouteMetadataMatchMethodProperty(*, exact=None, prefix=None, range=None, regex=None, suffix=None)

Bases: object

An object that represents the match method.

Specify one of the match values.

Parameters:
  • exact (Optional[str]) – The value sent by the client must match the specified value exactly.

  • prefix (Optional[str]) – The value sent by the client must begin with the specified characters.

  • range (Union[IResolvable, MatchRangeProperty, Dict[str, Any], None]) – An object that represents the range of values to match on.

  • regex (Optional[str]) – The value sent by the client must include the specified characters.

  • suffix (Optional[str]) – The value sent by the client must end with the specified characters.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

grpc_route_metadata_match_method_property = appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataMatchMethodProperty(
    exact="exact",
    prefix="prefix",
    range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
        end=123,
        start=123
    ),
    regex="regex",
    suffix="suffix"
)

Attributes

exact

The value sent by the client must match the specified value exactly.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-exact

prefix

The value sent by the client must begin with the specified characters.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-prefix

range

An object that represents the range of values to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-range

regex

The value sent by the client must include the specified characters.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-regex

suffix

The value sent by the client must end with the specified characters.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadatamatchmethod.html#cfn-appmesh-route-grpcroutemetadatamatchmethod-suffix

GrpcRouteMetadataProperty

class CfnRoutePropsMixin.GrpcRouteMetadataProperty(*, invert=None, match=None, name=None)

Bases: object

An object that represents the match metadata for the route.

Parameters:
  • invert (Union[bool, IResolvable, None]) – Specify True to match anything except the match criteria. The default value is False .

  • match (Union[IResolvable, GrpcRouteMetadataMatchMethodProperty, Dict[str, Any], None]) – An object that represents the data to match from the request.

  • name (Optional[str]) – The name of the route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadata.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

grpc_route_metadata_property = appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataProperty(
    invert=False,
    match=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataMatchMethodProperty(
        exact="exact",
        prefix="prefix",
        range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
            end=123,
            start=123
        ),
        regex="regex",
        suffix="suffix"
    ),
    name="name"
)

Attributes

invert

Specify True to match anything except the match criteria.

The default value is False .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadata.html#cfn-appmesh-route-grpcroutemetadata-invert

match

An object that represents the data to match from the request.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadata.html#cfn-appmesh-route-grpcroutemetadata-match

name

The name of the route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroutemetadata.html#cfn-appmesh-route-grpcroutemetadata-name

GrpcRouteProperty

class CfnRoutePropsMixin.GrpcRouteProperty(*, action=None, match=None, retry_policy=None, timeout=None)

Bases: object

An object that represents a gRPC route type.

Parameters:
See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

grpc_route_property = appmesh_mixins.CfnRoutePropsMixin.GrpcRouteProperty(
    action=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteActionProperty(
        weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
            port=123,
            virtual_node="virtualNode",
            weight=123
        )]
    ),
    match=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMatchProperty(
        metadata=[appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataProperty(
            invert=False,
            match=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataMatchMethodProperty(
                exact="exact",
                prefix="prefix",
                range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                    end=123,
                    start=123
                ),
                regex="regex",
                suffix="suffix"
            ),
            name="name"
        )],
        method_name="methodName",
        port=123,
        service_name="serviceName"
    ),
    retry_policy=appmesh_mixins.CfnRoutePropsMixin.GrpcRetryPolicyProperty(
        grpc_retry_events=["grpcRetryEvents"],
        http_retry_events=["httpRetryEvents"],
        max_retries=123,
        per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
            unit="unit",
            value=123
        ),
        tcp_retry_events=["tcpRetryEvents"]
    ),
    timeout=appmesh_mixins.CfnRoutePropsMixin.GrpcTimeoutProperty(
        idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
            unit="unit",
            value=123
        ),
        per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
            unit="unit",
            value=123
        )
    )
)

Attributes

action

An object that represents the action to take if a match is determined.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-action

match

An object that represents the criteria for determining a request match.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-match

retry_policy

An object that represents a retry policy.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-retrypolicy

timeout

An object that represents types of timeouts.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-timeout

GrpcTimeoutProperty

class CfnRoutePropsMixin.GrpcTimeoutProperty(*, idle=None, per_request=None)

Bases: object

An object that represents types of timeouts.

Parameters:
  • idle (Union[IResolvable, DurationProperty, Dict[str, Any], None]) – 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.

  • per_request (Union[IResolvable, DurationProperty, Dict[str, Any], None]) – 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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

grpc_timeout_property = appmesh_mixins.CfnRoutePropsMixin.GrpcTimeoutProperty(
    idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
        unit="unit",
        value=123
    ),
    per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
        unit="unit",
        value=123
    )
)

Attributes

idle

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html#cfn-appmesh-route-grpctimeout-idle

per_request

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html#cfn-appmesh-route-grpctimeout-perrequest

HeaderMatchMethodProperty

class CfnRoutePropsMixin.HeaderMatchMethodProperty(*, exact=None, prefix=None, range=None, regex=None, suffix=None)

Bases: object

An object that represents the method and value to match with the header value sent in a request.

Specify one match method.

Parameters:
  • exact (Optional[str]) – The value sent by the client must match the specified value exactly.

  • prefix (Optional[str]) – The value sent by the client must begin with the specified characters.

  • range (Union[IResolvable, MatchRangeProperty, Dict[str, Any], None]) – An object that represents the range of values to match on.

  • regex (Optional[str]) – The value sent by the client must include the specified characters.

  • suffix (Optional[str]) – The value sent by the client must end with the specified characters.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

header_match_method_property = appmesh_mixins.CfnRoutePropsMixin.HeaderMatchMethodProperty(
    exact="exact",
    prefix="prefix",
    range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
        end=123,
        start=123
    ),
    regex="regex",
    suffix="suffix"
)

Attributes

exact

The value sent by the client must match the specified value exactly.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-exact

prefix

The value sent by the client must begin with the specified characters.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-prefix

range

An object that represents the range of values to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-range

regex

The value sent by the client must include the specified characters.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-regex

suffix

The value sent by the client must end with the specified characters.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-headermatchmethod.html#cfn-appmesh-route-headermatchmethod-suffix

HttpPathMatchProperty

class CfnRoutePropsMixin.HttpPathMatchProperty(*, exact=None, regex=None)

Bases: object

An object representing the path to match in the request.

Parameters:
  • exact (Optional[str]) – The exact path to match on.

  • regex (Optional[str]) – The regex used to match the path.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httppathmatch.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

http_path_match_property = appmesh_mixins.CfnRoutePropsMixin.HttpPathMatchProperty(
    exact="exact",
    regex="regex"
)

Attributes

exact

The exact path to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httppathmatch.html#cfn-appmesh-route-httppathmatch-exact

regex

The regex used to match the path.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httppathmatch.html#cfn-appmesh-route-httppathmatch-regex

HttpQueryParameterMatchProperty

class CfnRoutePropsMixin.HttpQueryParameterMatchProperty(*, exact=None)

Bases: object

An object representing the query parameter to match.

Parameters:

exact (Optional[str]) – The exact query parameter to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpqueryparametermatch.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

http_query_parameter_match_property = appmesh_mixins.CfnRoutePropsMixin.HttpQueryParameterMatchProperty(
    exact="exact"
)

Attributes

exact

The exact query parameter to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpqueryparametermatch.html#cfn-appmesh-route-httpqueryparametermatch-exact

HttpRetryPolicyProperty

class CfnRoutePropsMixin.HttpRetryPolicyProperty(*, http_retry_events=None, max_retries=None, per_retry_timeout=None, tcp_retry_events=None)

Bases: object

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 .

Parameters:
  • http_retry_events (Optional[Sequence[str]]) – 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

  • max_retries (Union[int, float, None]) – The maximum number of retry attempts.

  • per_retry_timeout (Union[IResolvable, DurationProperty, Dict[str, Any], None]) – The timeout for each retry attempt.

  • tcp_retry_events (Optional[Sequence[str]]) – 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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

http_retry_policy_property = appmesh_mixins.CfnRoutePropsMixin.HttpRetryPolicyProperty(
    http_retry_events=["httpRetryEvents"],
    max_retries=123,
    per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
        unit="unit",
        value=123
    ),
    tcp_retry_events=["tcpRetryEvents"]
)

Attributes

http_retry_events

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

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-httpretryevents

max_retries

The maximum number of retry attempts.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-maxretries

per_retry_timeout

The timeout for each retry attempt.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-perretrytimeout

tcp_retry_events

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httpretrypolicy.html#cfn-appmesh-route-httpretrypolicy-tcpretryevents

HttpRouteActionProperty

class CfnRoutePropsMixin.HttpRouteActionProperty(*, weighted_targets=None)

Bases: object

An object that represents the action to take if a match is determined.

Parameters:

weighted_targets (Union[IResolvable, Sequence[Union[IResolvable, WeightedTargetProperty, Dict[str, Any]]], None]) – An object that represents the targets that traffic is routed to when a request matches the route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

http_route_action_property = appmesh_mixins.CfnRoutePropsMixin.HttpRouteActionProperty(
    weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
        port=123,
        virtual_node="virtualNode",
        weight=123
    )]
)

Attributes

weighted_targets

An object that represents the targets that traffic is routed to when a request matches the route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteaction.html#cfn-appmesh-route-httprouteaction-weightedtargets

HttpRouteHeaderProperty

class CfnRoutePropsMixin.HttpRouteHeaderProperty(*, invert=None, match=None, name=None)

Bases: object

An object that represents the HTTP header in the request.

Parameters:
  • invert (Union[bool, IResolvable, None]) – Specify True to match anything except the match criteria. The default value is False .

  • match (Union[IResolvable, HeaderMatchMethodProperty, Dict[str, Any], None]) – The HeaderMatchMethod object.

  • name (Optional[str]) – A name for the HTTP header in the client request that will be matched on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

http_route_header_property = appmesh_mixins.CfnRoutePropsMixin.HttpRouteHeaderProperty(
    invert=False,
    match=appmesh_mixins.CfnRoutePropsMixin.HeaderMatchMethodProperty(
        exact="exact",
        prefix="prefix",
        range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
            end=123,
            start=123
        ),
        regex="regex",
        suffix="suffix"
    ),
    name="name"
)

Attributes

invert

Specify True to match anything except the match criteria.

The default value is False .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-invert

match

The HeaderMatchMethod object.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-match

name

A name for the HTTP header in the client request that will be matched on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httprouteheader.html#cfn-appmesh-route-httprouteheader-name

HttpRouteMatchProperty

class CfnRoutePropsMixin.HttpRouteMatchProperty(*, headers=None, method=None, path=None, port=None, prefix=None, query_parameters=None, scheme=None)

Bases: object

An object that represents the requirements for a route to match HTTP requests for a virtual router.

Parameters:
  • headers (Union[IResolvable, Sequence[Union[IResolvable, HttpRouteHeaderProperty, Dict[str, Any]]], None]) – The client request headers to match on.

  • method (Optional[str]) – The client request method to match on. Specify only one.

  • path (Union[IResolvable, HttpPathMatchProperty, Dict[str, Any], None]) – The client request path to match on.

  • port (Union[int, float, None]) – The port number to match on.

  • prefix (Optional[str]) – 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 .

  • query_parameters (Union[IResolvable, Sequence[Union[IResolvable, QueryParameterProperty, Dict[str, Any]]], None]) – The client request query parameters to match on.

  • scheme (Optional[str]) – The client request scheme to match on. Specify only one. Applicable only for HTTP2 routes.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

http_route_match_property = appmesh_mixins.CfnRoutePropsMixin.HttpRouteMatchProperty(
    headers=[appmesh_mixins.CfnRoutePropsMixin.HttpRouteHeaderProperty(
        invert=False,
        match=appmesh_mixins.CfnRoutePropsMixin.HeaderMatchMethodProperty(
            exact="exact",
            prefix="prefix",
            range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                end=123,
                start=123
            ),
            regex="regex",
            suffix="suffix"
        ),
        name="name"
    )],
    method="method",
    path=appmesh_mixins.CfnRoutePropsMixin.HttpPathMatchProperty(
        exact="exact",
        regex="regex"
    ),
    port=123,
    prefix="prefix",
    query_parameters=[appmesh_mixins.CfnRoutePropsMixin.QueryParameterProperty(
        match=appmesh_mixins.CfnRoutePropsMixin.HttpQueryParameterMatchProperty(
            exact="exact"
        ),
        name="name"
    )],
    scheme="scheme"
)

Attributes

headers

The client request headers to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-headers

method

The client request method to match on.

Specify only one.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-method

path

The client request path to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-path

port

The port number to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-port

prefix

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 .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-prefix

query_parameters

The client request query parameters to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-queryparameters

scheme

The client request scheme to match on.

Specify only one. Applicable only for HTTP2 routes.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproutematch.html#cfn-appmesh-route-httproutematch-scheme

HttpRouteProperty

class CfnRoutePropsMixin.HttpRouteProperty(*, action=None, match=None, retry_policy=None, timeout=None)

Bases: object

An object that represents an HTTP or HTTP/2 route type.

Parameters:
See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

http_route_property = appmesh_mixins.CfnRoutePropsMixin.HttpRouteProperty(
    action=appmesh_mixins.CfnRoutePropsMixin.HttpRouteActionProperty(
        weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
            port=123,
            virtual_node="virtualNode",
            weight=123
        )]
    ),
    match=appmesh_mixins.CfnRoutePropsMixin.HttpRouteMatchProperty(
        headers=[appmesh_mixins.CfnRoutePropsMixin.HttpRouteHeaderProperty(
            invert=False,
            match=appmesh_mixins.CfnRoutePropsMixin.HeaderMatchMethodProperty(
                exact="exact",
                prefix="prefix",
                range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                    end=123,
                    start=123
                ),
                regex="regex",
                suffix="suffix"
            ),
            name="name"
        )],
        method="method",
        path=appmesh_mixins.CfnRoutePropsMixin.HttpPathMatchProperty(
            exact="exact",
            regex="regex"
        ),
        port=123,
        prefix="prefix",
        query_parameters=[appmesh_mixins.CfnRoutePropsMixin.QueryParameterProperty(
            match=appmesh_mixins.CfnRoutePropsMixin.HttpQueryParameterMatchProperty(
                exact="exact"
            ),
            name="name"
        )],
        scheme="scheme"
    ),
    retry_policy=appmesh_mixins.CfnRoutePropsMixin.HttpRetryPolicyProperty(
        http_retry_events=["httpRetryEvents"],
        max_retries=123,
        per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
            unit="unit",
            value=123
        ),
        tcp_retry_events=["tcpRetryEvents"]
    ),
    timeout=appmesh_mixins.CfnRoutePropsMixin.HttpTimeoutProperty(
        idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
            unit="unit",
            value=123
        ),
        per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
            unit="unit",
            value=123
        )
    )
)

Attributes

action

An object that represents the action to take if a match is determined.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-action

match

An object that represents the criteria for determining a request match.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-match

retry_policy

An object that represents a retry policy.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-retrypolicy

timeout

An object that represents types of timeouts.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-timeout

HttpTimeoutProperty

class CfnRoutePropsMixin.HttpTimeoutProperty(*, idle=None, per_request=None)

Bases: object

An object that represents types of timeouts.

Parameters:
  • idle (Union[IResolvable, DurationProperty, Dict[str, Any], None]) – 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.

  • per_request (Union[IResolvable, DurationProperty, Dict[str, Any], None]) – 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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

http_timeout_property = appmesh_mixins.CfnRoutePropsMixin.HttpTimeoutProperty(
    idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
        unit="unit",
        value=123
    ),
    per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
        unit="unit",
        value=123
    )
)

Attributes

idle

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html#cfn-appmesh-route-httptimeout-idle

per_request

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html#cfn-appmesh-route-httptimeout-perrequest

MatchRangeProperty

class CfnRoutePropsMixin.MatchRangeProperty(*, end=None, start=None)

Bases: object

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.

Parameters:
  • end (Union[int, float, None]) – The end of the range.

  • start (Union[int, float, None]) – The start of the range.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

match_range_property = appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
    end=123,
    start=123
)

Attributes

end

The end of the range.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-end

start

The start of the range.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-matchrange.html#cfn-appmesh-route-matchrange-start

QueryParameterProperty

class CfnRoutePropsMixin.QueryParameterProperty(*, match=None, name=None)

Bases: object

An object that represents the query parameter in the request.

Parameters:
See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-queryparameter.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

query_parameter_property = appmesh_mixins.CfnRoutePropsMixin.QueryParameterProperty(
    match=appmesh_mixins.CfnRoutePropsMixin.HttpQueryParameterMatchProperty(
        exact="exact"
    ),
    name="name"
)

Attributes

match

The query parameter to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-queryparameter.html#cfn-appmesh-route-queryparameter-match

name

A name for the query parameter that will be matched on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-queryparameter.html#cfn-appmesh-route-queryparameter-name

RouteSpecProperty

class CfnRoutePropsMixin.RouteSpecProperty(*, grpc_route=None, http2_route=None, http_route=None, priority=None, tcp_route=None)

Bases: object

An object that represents a route specification.

Specify one route type.

Parameters:
  • grpc_route (Union[IResolvable, GrpcRouteProperty, Dict[str, Any], None]) – An object that represents the specification of a gRPC route.

  • http2_route (Union[IResolvable, HttpRouteProperty, Dict[str, Any], None]) – An object that represents the specification of an HTTP/2 route.

  • http_route (Union[IResolvable, HttpRouteProperty, Dict[str, Any], None]) – An object that represents the specification of an HTTP route.

  • priority (Union[int, float, None]) – The priority for the route. Routes are matched based on the specified value, where 0 is the highest priority.

  • tcp_route (Union[IResolvable, TcpRouteProperty, Dict[str, Any], None]) – An object that represents the specification of a TCP route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

route_spec_property = appmesh_mixins.CfnRoutePropsMixin.RouteSpecProperty(
    grpc_route=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteProperty(
        action=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteActionProperty(
            weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
                port=123,
                virtual_node="virtualNode",
                weight=123
            )]
        ),
        match=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMatchProperty(
            metadata=[appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataProperty(
                invert=False,
                match=appmesh_mixins.CfnRoutePropsMixin.GrpcRouteMetadataMatchMethodProperty(
                    exact="exact",
                    prefix="prefix",
                    range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                        end=123,
                        start=123
                    ),
                    regex="regex",
                    suffix="suffix"
                ),
                name="name"
            )],
            method_name="methodName",
            port=123,
            service_name="serviceName"
        ),
        retry_policy=appmesh_mixins.CfnRoutePropsMixin.GrpcRetryPolicyProperty(
            grpc_retry_events=["grpcRetryEvents"],
            http_retry_events=["httpRetryEvents"],
            max_retries=123,
            per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            ),
            tcp_retry_events=["tcpRetryEvents"]
        ),
        timeout=appmesh_mixins.CfnRoutePropsMixin.GrpcTimeoutProperty(
            idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            ),
            per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            )
        )
    ),
    http2_route=appmesh_mixins.CfnRoutePropsMixin.HttpRouteProperty(
        action=appmesh_mixins.CfnRoutePropsMixin.HttpRouteActionProperty(
            weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
                port=123,
                virtual_node="virtualNode",
                weight=123
            )]
        ),
        match=appmesh_mixins.CfnRoutePropsMixin.HttpRouteMatchProperty(
            headers=[appmesh_mixins.CfnRoutePropsMixin.HttpRouteHeaderProperty(
                invert=False,
                match=appmesh_mixins.CfnRoutePropsMixin.HeaderMatchMethodProperty(
                    exact="exact",
                    prefix="prefix",
                    range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                        end=123,
                        start=123
                    ),
                    regex="regex",
                    suffix="suffix"
                ),
                name="name"
            )],
            method="method",
            path=appmesh_mixins.CfnRoutePropsMixin.HttpPathMatchProperty(
                exact="exact",
                regex="regex"
            ),
            port=123,
            prefix="prefix",
            query_parameters=[appmesh_mixins.CfnRoutePropsMixin.QueryParameterProperty(
                match=appmesh_mixins.CfnRoutePropsMixin.HttpQueryParameterMatchProperty(
                    exact="exact"
                ),
                name="name"
            )],
            scheme="scheme"
        ),
        retry_policy=appmesh_mixins.CfnRoutePropsMixin.HttpRetryPolicyProperty(
            http_retry_events=["httpRetryEvents"],
            max_retries=123,
            per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            ),
            tcp_retry_events=["tcpRetryEvents"]
        ),
        timeout=appmesh_mixins.CfnRoutePropsMixin.HttpTimeoutProperty(
            idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            ),
            per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            )
        )
    ),
    http_route=appmesh_mixins.CfnRoutePropsMixin.HttpRouteProperty(
        action=appmesh_mixins.CfnRoutePropsMixin.HttpRouteActionProperty(
            weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
                port=123,
                virtual_node="virtualNode",
                weight=123
            )]
        ),
        match=appmesh_mixins.CfnRoutePropsMixin.HttpRouteMatchProperty(
            headers=[appmesh_mixins.CfnRoutePropsMixin.HttpRouteHeaderProperty(
                invert=False,
                match=appmesh_mixins.CfnRoutePropsMixin.HeaderMatchMethodProperty(
                    exact="exact",
                    prefix="prefix",
                    range=appmesh_mixins.CfnRoutePropsMixin.MatchRangeProperty(
                        end=123,
                        start=123
                    ),
                    regex="regex",
                    suffix="suffix"
                ),
                name="name"
            )],
            method="method",
            path=appmesh_mixins.CfnRoutePropsMixin.HttpPathMatchProperty(
                exact="exact",
                regex="regex"
            ),
            port=123,
            prefix="prefix",
            query_parameters=[appmesh_mixins.CfnRoutePropsMixin.QueryParameterProperty(
                match=appmesh_mixins.CfnRoutePropsMixin.HttpQueryParameterMatchProperty(
                    exact="exact"
                ),
                name="name"
            )],
            scheme="scheme"
        ),
        retry_policy=appmesh_mixins.CfnRoutePropsMixin.HttpRetryPolicyProperty(
            http_retry_events=["httpRetryEvents"],
            max_retries=123,
            per_retry_timeout=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            ),
            tcp_retry_events=["tcpRetryEvents"]
        ),
        timeout=appmesh_mixins.CfnRoutePropsMixin.HttpTimeoutProperty(
            idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            ),
            per_request=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            )
        )
    ),
    priority=123,
    tcp_route=appmesh_mixins.CfnRoutePropsMixin.TcpRouteProperty(
        action=appmesh_mixins.CfnRoutePropsMixin.TcpRouteActionProperty(
            weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
                port=123,
                virtual_node="virtualNode",
                weight=123
            )]
        ),
        match=appmesh_mixins.CfnRoutePropsMixin.TcpRouteMatchProperty(
            port=123
        ),
        timeout=appmesh_mixins.CfnRoutePropsMixin.TcpTimeoutProperty(
            idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
                unit="unit",
                value=123
            )
        )
    )
)

Attributes

grpc_route

An object that represents the specification of a gRPC route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-grpcroute

http2_route

An object that represents the specification of an HTTP/2 route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-http2route

http_route

An object that represents the specification of an HTTP route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-httproute

priority

The priority for the route.

Routes are matched based on the specified value, where 0 is the highest priority.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-priority

tcp_route

An object that represents the specification of a TCP route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-routespec.html#cfn-appmesh-route-routespec-tcproute

TcpRouteActionProperty

class CfnRoutePropsMixin.TcpRouteActionProperty(*, weighted_targets=None)

Bases: object

An object that represents the action to take if a match is determined.

Parameters:

weighted_targets (Union[IResolvable, Sequence[Union[IResolvable, WeightedTargetProperty, Dict[str, Any]]], None]) – An object that represents the targets that traffic is routed to when a request matches the route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

tcp_route_action_property = appmesh_mixins.CfnRoutePropsMixin.TcpRouteActionProperty(
    weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
        port=123,
        virtual_node="virtualNode",
        weight=123
    )]
)

Attributes

weighted_targets

An object that represents the targets that traffic is routed to when a request matches the route.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcprouteaction.html#cfn-appmesh-route-tcprouteaction-weightedtargets

TcpRouteMatchProperty

class CfnRoutePropsMixin.TcpRouteMatchProperty(*, port=None)

Bases: object

An object representing the TCP route to match.

Parameters:

port (Union[int, float, None]) – The port number to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproutematch.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

tcp_route_match_property = appmesh_mixins.CfnRoutePropsMixin.TcpRouteMatchProperty(
    port=123
)

Attributes

port

The port number to match on.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproutematch.html#cfn-appmesh-route-tcproutematch-port

TcpRouteProperty

class CfnRoutePropsMixin.TcpRouteProperty(*, action=None, match=None, timeout=None)

Bases: object

An object that represents a TCP route type.

Parameters:
See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

tcp_route_property = appmesh_mixins.CfnRoutePropsMixin.TcpRouteProperty(
    action=appmesh_mixins.CfnRoutePropsMixin.TcpRouteActionProperty(
        weighted_targets=[appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
            port=123,
            virtual_node="virtualNode",
            weight=123
        )]
    ),
    match=appmesh_mixins.CfnRoutePropsMixin.TcpRouteMatchProperty(
        port=123
    ),
    timeout=appmesh_mixins.CfnRoutePropsMixin.TcpTimeoutProperty(
        idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
            unit="unit",
            value=123
        )
    )
)

Attributes

action

The action to take if a match is determined.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-action

match

An object that represents the criteria for determining a request match.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-match

timeout

An object that represents types of timeouts.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-timeout

TcpTimeoutProperty

class CfnRoutePropsMixin.TcpTimeoutProperty(*, idle=None)

Bases: object

An object that represents types of timeouts.

Parameters:

idle (Union[IResolvable, DurationProperty, Dict[str, Any], None]) – 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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcptimeout.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

tcp_timeout_property = appmesh_mixins.CfnRoutePropsMixin.TcpTimeoutProperty(
    idle=appmesh_mixins.CfnRoutePropsMixin.DurationProperty(
        unit="unit",
        value=123
    )
)

Attributes

idle

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcptimeout.html#cfn-appmesh-route-tcptimeout-idle

WeightedTargetProperty

class CfnRoutePropsMixin.WeightedTargetProperty(*, port=None, virtual_node=None, weight=None)

Bases: object

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.

Parameters:
  • port (Union[int, float, None]) – The targeted port of the weighted object.

  • virtual_node (Optional[str]) – The virtual node to associate with the weighted target.

  • weight (Union[int, float, None]) – The relative weight of the weighted target.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_appmesh import mixins as appmesh_mixins

weighted_target_property = appmesh_mixins.CfnRoutePropsMixin.WeightedTargetProperty(
    port=123,
    virtual_node="virtualNode",
    weight=123
)

Attributes

port

The targeted port of the weighted object.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-port

virtual_node

The virtual node to associate with the weighted target.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-virtualnode

weight

The relative weight of the weighted target.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-weightedtarget.html#cfn-appmesh-route-weightedtarget-weight