# frozen_string_literal: true # WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE module Aws::AppMesh module Types # An object that represents the access logging information for a virtual # node. # # @note AccessLog is a union - when making an API calls you must set exactly one of the members. # # @note AccessLog is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of AccessLog corresponding to the set member. # # @!attribute [rw] file # The file object to send virtual node access logs to. # @return [Types::FileAccessLog] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/AccessLog AWS API Documentation # class AccessLog < Struct.new( :file, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class File < AccessLog; end class Unknown < AccessLog; end end # An object that represents the Cloud Map attribute information for your # virtual node. # # Cloud Map is not available in the eu-south-1 Region. # # # # @!attribute [rw] key # The name of an Cloud Map service instance attribute key. Any Cloud # Map service instance that contains the specified key and value is # returned. # @return [String] # # @!attribute [rw] value # The value of an Cloud Map service instance attribute key. Any Cloud # Map service instance that contains the specified key and value is # returned. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/AwsCloudMapInstanceAttribute AWS API Documentation # class AwsCloudMapInstanceAttribute < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # An object that represents the Cloud Map service discovery information # for your virtual node. # # Cloud Map is not available in the eu-south-1 Region. # # # # @!attribute [rw] attributes # 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. # @return [Array] # # @!attribute [rw] ip_preference # The preferred IP version that this virtual node uses. Setting the IP # preference on the virtual node only overrides the IP preference set # for the mesh on this specific node. # @return [String] # # @!attribute [rw] namespace_name # The name of the Cloud Map namespace to use. # @return [String] # # @!attribute [rw] service_name # The name of the Cloud Map service to use. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/AwsCloudMapServiceDiscovery AWS API Documentation # class AwsCloudMapServiceDiscovery < Struct.new( :attributes, :ip_preference, :namespace_name, :service_name) SENSITIVE = [] include Aws::Structure end # An object that represents the backends that a virtual node is expected # to send outbound traffic to. # # @note Backend is a union - when making an API calls you must set exactly one of the members. # # @note Backend is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Backend corresponding to the set member. # # @!attribute [rw] virtual_service # Specifies a virtual service to use as a backend. # @return [Types::VirtualServiceBackend] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/Backend AWS API Documentation # class Backend < Struct.new( :virtual_service, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class VirtualService < Backend; end class Unknown < Backend; end end # An object that represents the default properties for a backend. # # @!attribute [rw] client_policy # A reference to an object that represents a client policy. # @return [Types::ClientPolicy] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/BackendDefaults AWS API Documentation # class BackendDefaults < Struct.new( :client_policy) SENSITIVE = [] include Aws::Structure end # The request syntax was malformed. Check your request syntax and try # again. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/BadRequestException AWS API Documentation # class BadRequestException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An object that represents a client policy. # # @!attribute [rw] tls # A reference to an object that represents a Transport Layer Security # (TLS) client policy. # @return [Types::ClientPolicyTls] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ClientPolicy AWS API Documentation # class ClientPolicy < Struct.new( :tls) SENSITIVE = [] include Aws::Structure end # A reference to an object that represents a Transport Layer Security # (TLS) client policy. # # @!attribute [rw] certificate # A reference to an object that represents a client's TLS # certificate. # @return [Types::ClientTlsCertificate] # # @!attribute [rw] enforce # Whether the policy is enforced. The default is `True`, if a value # isn't specified. # @return [Boolean] # # @!attribute [rw] ports # One or more ports that the policy is enforced for. # @return [Array] # # @!attribute [rw] validation # A reference to an object that represents a TLS validation context. # @return [Types::TlsValidationContext] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ClientPolicyTls AWS API Documentation # class ClientPolicyTls < Struct.new( :certificate, :enforce, :ports, :validation) SENSITIVE = [] include Aws::Structure end # An object that represents the client's certificate. # # @note ClientTlsCertificate is a union - when making an API calls you must set exactly one of the members. # # @note ClientTlsCertificate is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ClientTlsCertificate corresponding to the set member. # # @!attribute [rw] file # 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)][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html # @return [Types::ListenerTlsFileCertificate] # # @!attribute [rw] sds # A reference to an object that represents a client's TLS Secret # Discovery Service certificate. # @return [Types::ListenerTlsSdsCertificate] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ClientTlsCertificate AWS API Documentation # class ClientTlsCertificate < Struct.new( :file, :sds, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class File < ClientTlsCertificate; end class Sds < ClientTlsCertificate; end class Unknown < ClientTlsCertificate; end end # The request contains a client token that was used for a previous # update resource call with different specifications. Try the request # again with a new client token. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ConflictException AWS API Documentation # class ConflictException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] gateway_route_name # The name to use for the gateway route. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh to create the gateway route in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The gateway route specification to apply. # @return [Types::GatewayRouteSpec] # # @!attribute [rw] tags # 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. # @return [Array] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway to associate the gateway route with. # If the virtual gateway is in a shared mesh, then you must be the # owner of the virtual gateway resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRouteInput AWS API Documentation # class CreateGatewayRouteInput < Struct.new( :client_token, :gateway_route_name, :mesh_name, :mesh_owner, :spec, :tags, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] gateway_route # The full description of your gateway route following the create # call. # @return [Types::GatewayRouteData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRouteOutput AWS API Documentation # class CreateGatewayRouteOutput < Struct.new( :gateway_route) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name to use for the service mesh. # @return [String] # # @!attribute [rw] spec # The service mesh specification to apply. # @return [Types::MeshSpec] # # @!attribute [rw] tags # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMeshInput AWS API Documentation # class CreateMeshInput < Struct.new( :client_token, :mesh_name, :spec, :tags) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh # The full description of your service mesh following the create call. # @return [Types::MeshData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMeshOutput AWS API Documentation # class CreateMeshOutput < Struct.new( :mesh) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh to create the route in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] route_name # The name to use for the route. # @return [String] # # @!attribute [rw] spec # The route specification to apply. # @return [Types::RouteSpec] # # @!attribute [rw] tags # 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. # @return [Array] # # @!attribute [rw] virtual_router_name # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRouteInput AWS API Documentation # class CreateRouteInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :route_name, :spec, :tags, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] route # The full description of your mesh following the create call. # @return [Types::RouteData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRouteOutput AWS API Documentation # class CreateRouteOutput < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh to create the virtual gateway in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The virtual gateway specification to apply. # @return [Types::VirtualGatewaySpec] # # @!attribute [rw] tags # 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. # @return [Array] # # @!attribute [rw] virtual_gateway_name # The name to use for the virtual gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGatewayInput AWS API Documentation # class CreateVirtualGatewayInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :spec, :tags, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] virtual_gateway # The full description of your virtual gateway following the create # call. # @return [Types::VirtualGatewayData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGatewayOutput AWS API Documentation # class CreateVirtualGatewayOutput < Struct.new( :virtual_gateway) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh to create the virtual node in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The virtual node specification to apply. # @return [Types::VirtualNodeSpec] # # @!attribute [rw] tags # 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. # @return [Array] # # @!attribute [rw] virtual_node_name # The name to use for the virtual node. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNodeInput AWS API Documentation # class CreateVirtualNodeInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :spec, :tags, :virtual_node_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_node # The full description of your virtual node following the create call. # @return [Types::VirtualNodeData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNodeOutput AWS API Documentation # class CreateVirtualNodeOutput < Struct.new( :virtual_node) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh to create the virtual router in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The virtual router specification to apply. # @return [Types::VirtualRouterSpec] # # @!attribute [rw] tags # 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. # @return [Array] # # @!attribute [rw] virtual_router_name # The name to use for the virtual router. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouterInput AWS API Documentation # class CreateVirtualRouterInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :spec, :tags, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_router # The full description of your virtual router following the create # call. # @return [Types::VirtualRouterData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouterOutput AWS API Documentation # class CreateVirtualRouterOutput < Struct.new( :virtual_router) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh to create the virtual service in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The virtual service specification to apply. # @return [Types::VirtualServiceSpec] # # @!attribute [rw] tags # 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. # @return [Array] # # @!attribute [rw] virtual_service_name # The name to use for the virtual service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualServiceInput AWS API Documentation # class CreateVirtualServiceInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :spec, :tags, :virtual_service_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_service # The full description of your virtual service following the create # call. # @return [Types::VirtualServiceData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualServiceOutput AWS API Documentation # class CreateVirtualServiceOutput < Struct.new( :virtual_service) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] gateway_route_name # The name of the gateway route to delete. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh to delete the gateway route from. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway to delete the route from. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRouteInput AWS API Documentation # class DeleteGatewayRouteInput < Struct.new( :gateway_route_name, :mesh_name, :mesh_owner, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] gateway_route # The gateway route that was deleted. # @return [Types::GatewayRouteData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRouteOutput AWS API Documentation # class DeleteGatewayRouteOutput < Struct.new( :gateway_route) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMeshInput AWS API Documentation # class DeleteMeshInput < Struct.new( :mesh_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh # The service mesh that was deleted. # @return [Types::MeshData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMeshOutput AWS API Documentation # class DeleteMeshOutput < Struct.new( :mesh) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh to delete the route in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] route_name # The name of the route to delete. # @return [String] # # @!attribute [rw] virtual_router_name # The name of the virtual router to delete the route in. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRouteInput AWS API Documentation # class DeleteRouteInput < Struct.new( :mesh_name, :mesh_owner, :route_name, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] route # The route that was deleted. # @return [Types::RouteData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRouteOutput AWS API Documentation # class DeleteRouteOutput < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] mesh_name # The name of the service mesh to delete the virtual gateway from. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGatewayInput AWS API Documentation # class DeleteVirtualGatewayInput < Struct.new( :mesh_name, :mesh_owner, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] virtual_gateway # The virtual gateway that was deleted. # @return [Types::VirtualGatewayData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGatewayOutput AWS API Documentation # class DeleteVirtualGatewayOutput < Struct.new( :virtual_gateway) SENSITIVE = [] include Aws::Structure end # Deletes a virtual node input. # # @!attribute [rw] mesh_name # The name of the service mesh to delete the virtual node in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_node_name # The name of the virtual node to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNodeInput AWS API Documentation # class DeleteVirtualNodeInput < Struct.new( :mesh_name, :mesh_owner, :virtual_node_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_node # The virtual node that was deleted. # @return [Types::VirtualNodeData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNodeOutput AWS API Documentation # class DeleteVirtualNodeOutput < Struct.new( :virtual_node) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh to delete the virtual router in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_router_name # The name of the virtual router to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouterInput AWS API Documentation # class DeleteVirtualRouterInput < Struct.new( :mesh_name, :mesh_owner, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_router # The virtual router that was deleted. # @return [Types::VirtualRouterData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouterOutput AWS API Documentation # class DeleteVirtualRouterOutput < Struct.new( :virtual_router) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh to delete the virtual service in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_service_name # The name of the virtual service to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualServiceInput AWS API Documentation # class DeleteVirtualServiceInput < Struct.new( :mesh_name, :mesh_owner, :virtual_service_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_service # The virtual service that was deleted. # @return [Types::VirtualServiceData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualServiceOutput AWS API Documentation # class DeleteVirtualServiceOutput < Struct.new( :virtual_service) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] gateway_route_name # The name of the gateway route to describe. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh that the gateway route resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway that the gateway route is associated # with. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRouteInput AWS API Documentation # class DescribeGatewayRouteInput < Struct.new( :gateway_route_name, :mesh_name, :mesh_owner, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] gateway_route # The full description of your gateway route. # @return [Types::GatewayRouteData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRouteOutput AWS API Documentation # class DescribeGatewayRouteOutput < Struct.new( :gateway_route) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh to describe. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMeshInput AWS API Documentation # class DescribeMeshInput < Struct.new( :mesh_name, :mesh_owner) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh # The full description of your service mesh. # @return [Types::MeshData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMeshOutput AWS API Documentation # class DescribeMeshOutput < Struct.new( :mesh) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh that the route resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] route_name # The name of the route to describe. # @return [String] # # @!attribute [rw] virtual_router_name # The name of the virtual router that the route is associated with. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRouteInput AWS API Documentation # class DescribeRouteInput < Struct.new( :mesh_name, :mesh_owner, :route_name, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] route # The full description of your route. # @return [Types::RouteData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRouteOutput AWS API Documentation # class DescribeRouteOutput < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] mesh_name # The name of the service mesh that the gateway route resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway to describe. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGatewayInput AWS API Documentation # class DescribeVirtualGatewayInput < Struct.new( :mesh_name, :mesh_owner, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] virtual_gateway # The full description of your virtual gateway. # @return [Types::VirtualGatewayData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGatewayOutput AWS API Documentation # class DescribeVirtualGatewayOutput < Struct.new( :virtual_gateway) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual node resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_node_name # The name of the virtual node to describe. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNodeInput AWS API Documentation # class DescribeVirtualNodeInput < Struct.new( :mesh_name, :mesh_owner, :virtual_node_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_node # The full description of your virtual node. # @return [Types::VirtualNodeData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNodeOutput AWS API Documentation # class DescribeVirtualNodeOutput < Struct.new( :virtual_node) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual router resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_router_name # The name of the virtual router to describe. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouterInput AWS API Documentation # class DescribeVirtualRouterInput < Struct.new( :mesh_name, :mesh_owner, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_router # The full description of your virtual router. # @return [Types::VirtualRouterData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouterOutput AWS API Documentation # class DescribeVirtualRouterOutput < Struct.new( :virtual_router) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual service resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] virtual_service_name # The name of the virtual service to describe. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualServiceInput AWS API Documentation # class DescribeVirtualServiceInput < Struct.new( :mesh_name, :mesh_owner, :virtual_service_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_service # The full description of your virtual service. # @return [Types::VirtualServiceData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualServiceOutput AWS API Documentation # class DescribeVirtualServiceOutput < Struct.new( :virtual_service) SENSITIVE = [] include Aws::Structure end # An object that represents the DNS service discovery information for # your virtual node. # # @!attribute [rw] hostname # Specifies the DNS service discovery hostname for the virtual node. # @return [String] # # @!attribute [rw] ip_preference # The preferred IP version that this virtual node uses. Setting the IP # preference on the virtual node only overrides the IP preference set # for the mesh on this specific node. # @return [String] # # @!attribute [rw] response_type # Specifies the DNS response type for the virtual node. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DnsServiceDiscovery AWS API Documentation # class DnsServiceDiscovery < Struct.new( :hostname, :ip_preference, :response_type) SENSITIVE = [] include Aws::Structure end # An object that represents a duration of time. # # @!attribute [rw] unit # A unit of time. # @return [String] # # @!attribute [rw] value # A number of time units. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/Duration AWS API Documentation # class Duration < Struct.new( :unit, :value) SENSITIVE = [] include Aws::Structure end # An object that represents the egress filter rules for a service mesh. # # @!attribute [rw] type # 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 Amazon # Web Services 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/EgressFilter AWS API Documentation # class EgressFilter < Struct.new( :type) SENSITIVE = [] include Aws::Structure end # An object that represents an access log file. # # @!attribute [rw] format # The specified format for the logs. The format is either # `json_format` or `text_format`. # @return [Types::LoggingFormat] # # @!attribute [rw] path # 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. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/FileAccessLog AWS API Documentation # class FileAccessLog < Struct.new( :format, :path) SENSITIVE = [] include Aws::Structure end # You don't have permissions to perform this action. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ForbiddenException AWS API Documentation # class ForbiddenException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An object that represents a gateway route returned by a describe # operation. # # @!attribute [rw] gateway_route_name # The name of the gateway route. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh that the resource resides in. # @return [String] # # @!attribute [rw] metadata # An object that represents metadata for a resource. # @return [Types::ResourceMetadata] # # @!attribute [rw] spec # The specifications of the gateway route. # @return [Types::GatewayRouteSpec] # # @!attribute [rw] status # The status of the gateway route. # @return [Types::GatewayRouteStatus] # # @!attribute [rw] virtual_gateway_name # The virtual gateway that the gateway route is associated with. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteData AWS API Documentation # class GatewayRouteData < Struct.new( :gateway_route_name, :mesh_name, :metadata, :spec, :status, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # An object representing the gateway route host name to match. # # @!attribute [rw] exact # The exact host name to match on. # @return [String] # # @!attribute [rw] suffix # The specified ending characters of the host name to match on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteHostnameMatch AWS API Documentation # class GatewayRouteHostnameMatch < Struct.new( :exact, :suffix) SENSITIVE = [] include Aws::Structure end # An object representing the gateway route host name to rewrite. # # @!attribute [rw] default_target_hostname # The default target host name to write to. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteHostnameRewrite AWS API Documentation # class GatewayRouteHostnameRewrite < Struct.new( :default_target_hostname) SENSITIVE = [] include Aws::Structure end # An object that represents a gateway route returned by a list # operation. # # @!attribute [rw] arn # The full Amazon Resource Name (ARN) for the gateway route. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp in seconds for when the resource was # created. # @return [Time] # # @!attribute [rw] gateway_route_name # The name of the gateway route. # @return [String] # # @!attribute [rw] last_updated_at # The Unix epoch timestamp in seconds for when the resource was last # updated. # @return [Time] # # @!attribute [rw] mesh_name # The name of the service mesh that the resource resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] resource_owner # The Amazon Web Services IAM account ID of the resource owner. If the # account ID is not your own, then it's the ID of the mesh owner or # of another account that the mesh is shared with. For more # information about mesh sharing, see [Working with shared meshes][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] version # The version of the resource. Resources are created at version 1, and # this version is incremented each time that they're updated. # @return [Integer] # # @!attribute [rw] virtual_gateway_name # The virtual gateway that the gateway route is associated with. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteRef AWS API Documentation # class GatewayRouteRef < Struct.new( :arn, :created_at, :gateway_route_name, :last_updated_at, :mesh_name, :mesh_owner, :resource_owner, :version, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # An object that represents a gateway route specification. Specify one # gateway route type. # # @!attribute [rw] grpc_route # An object that represents the specification of a gRPC gateway route. # @return [Types::GrpcGatewayRoute] # # @!attribute [rw] http2_route # An object that represents the specification of an HTTP/2 gateway # route. # @return [Types::HttpGatewayRoute] # # @!attribute [rw] http_route # An object that represents the specification of an HTTP gateway # route. # @return [Types::HttpGatewayRoute] # # @!attribute [rw] priority # The ordering of the gateway routes spec. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteSpec AWS API Documentation # class GatewayRouteSpec < Struct.new( :grpc_route, :http2_route, :http_route, :priority) SENSITIVE = [] include Aws::Structure end # An object that represents the current status of a gateway route. # # @!attribute [rw] status # The current status for the gateway route. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteStatus AWS API Documentation # class GatewayRouteStatus < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # An object that represents a gateway route target. # # @!attribute [rw] port # The port number of the gateway route target. # @return [Integer] # # @!attribute [rw] virtual_service # An object that represents a virtual service gateway route target. # @return [Types::GatewayRouteVirtualService] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteTarget AWS API Documentation # class GatewayRouteTarget < Struct.new( :port, :virtual_service) SENSITIVE = [] include Aws::Structure end # An object that represents the virtual service that traffic is routed # to. # # @!attribute [rw] virtual_service_name # The name of the virtual service that traffic is routed to. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GatewayRouteVirtualService AWS API Documentation # class GatewayRouteVirtualService < Struct.new( :virtual_service_name) SENSITIVE = [] include Aws::Structure end # An object that represents a gRPC gateway route. # # @!attribute [rw] action # An object that represents the action to take if a match is # determined. # @return [Types::GrpcGatewayRouteAction] # # @!attribute [rw] match # An object that represents the criteria for determining a request # match. # @return [Types::GrpcGatewayRouteMatch] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcGatewayRoute AWS API Documentation # class GrpcGatewayRoute < Struct.new( :action, :match) SENSITIVE = [] include Aws::Structure end # An object that represents the action to take if a match is determined. # # @!attribute [rw] rewrite # The gateway route action to rewrite. # @return [Types::GrpcGatewayRouteRewrite] # # @!attribute [rw] target # An object that represents the target that traffic is routed to when # a request matches the gateway route. # @return [Types::GatewayRouteTarget] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcGatewayRouteAction AWS API Documentation # class GrpcGatewayRouteAction < Struct.new( :rewrite, :target) SENSITIVE = [] include Aws::Structure end # An object that represents the criteria for determining a request # match. # # @!attribute [rw] hostname # The gateway route host name to be matched on. # @return [Types::GatewayRouteHostnameMatch] # # @!attribute [rw] metadata # The gateway route metadata to be matched on. # @return [Array] # # @!attribute [rw] port # The gateway route port to be matched on. # @return [Integer] # # @!attribute [rw] service_name # The fully qualified domain name for the service to match from the # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcGatewayRouteMatch AWS API Documentation # class GrpcGatewayRouteMatch < Struct.new( :hostname, :metadata, :port, :service_name) SENSITIVE = [] include Aws::Structure end # An object representing the metadata of the gateway route. # # @!attribute [rw] invert # Specify `True` to match anything except the match criteria. The # default value is `False`. # @return [Boolean] # # @!attribute [rw] match # The criteria for determining a metadata match. # @return [Types::GrpcMetadataMatchMethod] # # @!attribute [rw] name # A name for the gateway route metadata. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcGatewayRouteMetadata AWS API Documentation # class GrpcGatewayRouteMetadata < Struct.new( :invert, :match, :name) SENSITIVE = [] include Aws::Structure end # An object that represents the gateway route to rewrite. # # @!attribute [rw] hostname # The host name of the gateway route to rewrite. # @return [Types::GatewayRouteHostnameRewrite] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcGatewayRouteRewrite AWS API Documentation # class GrpcGatewayRouteRewrite < Struct.new( :hostname) SENSITIVE = [] include Aws::Structure end # An object representing the method header to be matched. # # @note GrpcMetadataMatchMethod is a union - when making an API calls you must set exactly one of the members. # # @note GrpcMetadataMatchMethod is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of GrpcMetadataMatchMethod corresponding to the set member. # # @!attribute [rw] exact # The exact method header to be matched on. # @return [String] # # @!attribute [rw] prefix # The specified beginning characters of the method header to be # matched on. # @return [String] # # @!attribute [rw] range # 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. # @return [Types::MatchRange] # # @!attribute [rw] regex # The regex used to match the method header. # @return [String] # # @!attribute [rw] suffix # The specified ending characters of the method header to match on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcMetadataMatchMethod AWS API Documentation # class GrpcMetadataMatchMethod < Struct.new( :exact, :prefix, :range, :regex, :suffix, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Exact < GrpcMetadataMatchMethod; end class Prefix < GrpcMetadataMatchMethod; end class Range < GrpcMetadataMatchMethod; end class Regex < GrpcMetadataMatchMethod; end class Suffix < GrpcMetadataMatchMethod; end class Unknown < GrpcMetadataMatchMethod; end end # 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][1]. # # # # [1]: https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/router_filter#x-envoy-retry-on # # @!attribute [rw] grpc_retry_events # Specify at least one of the valid values. # @return [Array] # # @!attribute [rw] 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 # @return [Array] # # @!attribute [rw] max_retries # The maximum number of retry attempts. # @return [Integer] # # @!attribute [rw] per_retry_timeout # The timeout for each retry attempt. # @return [Types::Duration] # # @!attribute [rw] 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcRetryPolicy AWS API Documentation # class GrpcRetryPolicy < Struct.new( :grpc_retry_events, :http_retry_events, :max_retries, :per_retry_timeout, :tcp_retry_events) SENSITIVE = [] include Aws::Structure end # An object that represents a gRPC route type. # # @!attribute [rw] action # An object that represents the action to take if a match is # determined. # @return [Types::GrpcRouteAction] # # @!attribute [rw] match # An object that represents the criteria for determining a request # match. # @return [Types::GrpcRouteMatch] # # @!attribute [rw] retry_policy # An object that represents a retry policy. # @return [Types::GrpcRetryPolicy] # # @!attribute [rw] timeout # An object that represents types of timeouts. # @return [Types::GrpcTimeout] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcRoute AWS API Documentation # class GrpcRoute < Struct.new( :action, :match, :retry_policy, :timeout) SENSITIVE = [] include Aws::Structure end # An object that represents the action to take if a match is determined. # # @!attribute [rw] weighted_targets # An object that represents the targets that traffic is routed to when # a request matches the route. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcRouteAction AWS API Documentation # class GrpcRouteAction < Struct.new( :weighted_targets) SENSITIVE = [] include Aws::Structure end # An object that represents the criteria for determining a request # match. # # @!attribute [rw] metadata # An object that represents the data to match from the request. # @return [Array] # # @!attribute [rw] method_name # The method name to match from the request. If you specify a name, # you must also specify a `serviceName`. # @return [String] # # @!attribute [rw] port # The port number to match on. # @return [Integer] # # @!attribute [rw] service_name # The fully qualified domain name for the service to match from the # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcRouteMatch AWS API Documentation # class GrpcRouteMatch < Struct.new( :metadata, :method_name, :port, :service_name) SENSITIVE = [] include Aws::Structure end # An object that represents the match metadata for the route. # # @!attribute [rw] invert # Specify `True` to match anything except the match criteria. The # default value is `False`. # @return [Boolean] # # @!attribute [rw] match # An object that represents the data to match from the request. # @return [Types::GrpcRouteMetadataMatchMethod] # # @!attribute [rw] name # The name of the route. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcRouteMetadata AWS API Documentation # class GrpcRouteMetadata < Struct.new( :invert, :match, :name) SENSITIVE = [] include Aws::Structure end # An object that represents the match method. Specify one of the match # values. # # @note GrpcRouteMetadataMatchMethod is a union - when making an API calls you must set exactly one of the members. # # @note GrpcRouteMetadataMatchMethod is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of GrpcRouteMetadataMatchMethod corresponding to the set member. # # @!attribute [rw] exact # The value sent by the client must match the specified value exactly. # @return [String] # # @!attribute [rw] prefix # The value sent by the client must begin with the specified # characters. # @return [String] # # @!attribute [rw] range # An object that represents the range of values to match on. # @return [Types::MatchRange] # # @!attribute [rw] regex # The value sent by the client must include the specified characters. # @return [String] # # @!attribute [rw] suffix # The value sent by the client must end with the specified characters. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcRouteMetadataMatchMethod AWS API Documentation # class GrpcRouteMetadataMatchMethod < Struct.new( :exact, :prefix, :range, :regex, :suffix, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Exact < GrpcRouteMetadataMatchMethod; end class Prefix < GrpcRouteMetadataMatchMethod; end class Range < GrpcRouteMetadataMatchMethod; end class Regex < GrpcRouteMetadataMatchMethod; end class Suffix < GrpcRouteMetadataMatchMethod; end class Unknown < GrpcRouteMetadataMatchMethod; end end # An object that represents types of timeouts. # # @!attribute [rw] 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. # @return [Types::Duration] # # @!attribute [rw] 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. # @return [Types::Duration] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/GrpcTimeout AWS API Documentation # class GrpcTimeout < Struct.new( :idle, :per_request) SENSITIVE = [] include Aws::Structure end # An object that represents the method and value to match with the # header value sent in a request. Specify one match method. # # @note HeaderMatchMethod is a union - when making an API calls you must set exactly one of the members. # # @note HeaderMatchMethod is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of HeaderMatchMethod corresponding to the set member. # # @!attribute [rw] exact # The value sent by the client must match the specified value exactly. # @return [String] # # @!attribute [rw] prefix # The value sent by the client must begin with the specified # characters. # @return [String] # # @!attribute [rw] range # An object that represents the range of values to match on. # @return [Types::MatchRange] # # @!attribute [rw] regex # The value sent by the client must include the specified characters. # @return [String] # # @!attribute [rw] suffix # The value sent by the client must end with the specified characters. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HeaderMatchMethod AWS API Documentation # class HeaderMatchMethod < Struct.new( :exact, :prefix, :range, :regex, :suffix, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Exact < HeaderMatchMethod; end class Prefix < HeaderMatchMethod; end class Range < HeaderMatchMethod; end class Regex < HeaderMatchMethod; end class Suffix < HeaderMatchMethod; end class Unknown < HeaderMatchMethod; end end # An object that represents the health check policy for a virtual # node's listener. # # @!attribute [rw] healthy_threshold # The number of consecutive successful health checks that must occur # before declaring listener healthy. # @return [Integer] # # @!attribute [rw] interval_millis # The time period in milliseconds between each health check execution. # @return [Integer] # # @!attribute [rw] path # 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. # @return [String] # # @!attribute [rw] port # The destination port for the health check request. This port must # match the port defined in the PortMapping for the listener. # @return [Integer] # # @!attribute [rw] protocol # The protocol for the health check request. If you specify `grpc`, # then your service must conform to the [GRPC Health Checking # Protocol][1]. # # # # [1]: https://github.com/grpc/grpc/blob/master/doc/health-checking.md # @return [String] # # @!attribute [rw] timeout_millis # The amount of time to wait when receiving a response from the health # check, in milliseconds. # @return [Integer] # # @!attribute [rw] unhealthy_threshold # The number of consecutive failed health checks that must occur # before declaring a virtual node unhealthy. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HealthCheckPolicy AWS API Documentation # class HealthCheckPolicy < Struct.new( :healthy_threshold, :interval_millis, :path, :port, :protocol, :timeout_millis, :unhealthy_threshold) SENSITIVE = [] include Aws::Structure end # An object that represents an HTTP gateway route. # # @!attribute [rw] action # An object that represents the action to take if a match is # determined. # @return [Types::HttpGatewayRouteAction] # # @!attribute [rw] match # An object that represents the criteria for determining a request # match. # @return [Types::HttpGatewayRouteMatch] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRoute AWS API Documentation # class HttpGatewayRoute < Struct.new( :action, :match) SENSITIVE = [] include Aws::Structure end # An object that represents the action to take if a match is determined. # # @!attribute [rw] rewrite # The gateway route action to rewrite. # @return [Types::HttpGatewayRouteRewrite] # # @!attribute [rw] target # An object that represents the target that traffic is routed to when # a request matches the gateway route. # @return [Types::GatewayRouteTarget] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRouteAction AWS API Documentation # class HttpGatewayRouteAction < Struct.new( :rewrite, :target) SENSITIVE = [] include Aws::Structure end # An object that represents the HTTP header in the gateway route. # # @!attribute [rw] invert # Specify `True` to match anything except the match criteria. The # default value is `False`. # @return [Boolean] # # @!attribute [rw] match # An object that represents the method and value to match with the # header value sent in a request. Specify one match method. # @return [Types::HeaderMatchMethod] # # @!attribute [rw] name # A name for the HTTP header in the gateway route that will be matched # on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRouteHeader AWS API Documentation # class HttpGatewayRouteHeader < Struct.new( :invert, :match, :name) SENSITIVE = [] include Aws::Structure end # An object that represents the criteria for determining a request # match. # # @!attribute [rw] headers # The client request headers to match on. # @return [Array] # # @!attribute [rw] hostname # The host name to match on. # @return [Types::GatewayRouteHostnameMatch] # # @!attribute [rw] method # The method to match on. # @return [String] # # @!attribute [rw] path # The path to match on. # @return [Types::HttpPathMatch] # # @!attribute [rw] port # The port number to match on. # @return [Integer] # # @!attribute [rw] 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`. # @return [String] # # @!attribute [rw] query_parameters # The query parameter to match on. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRouteMatch AWS API Documentation # class HttpGatewayRouteMatch < Struct.new( :headers, :hostname, :method, :path, :port, :prefix, :query_parameters) SENSITIVE = [] include Aws::Structure end # An object that represents the path to rewrite. # # @!attribute [rw] exact # The exact path to rewrite. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRoutePathRewrite AWS API Documentation # class HttpGatewayRoutePathRewrite < Struct.new( :exact) SENSITIVE = [] include Aws::Structure end # An object representing the beginning characters of the route to # rewrite. # # @!attribute [rw] default_prefix # The default prefix used to replace the incoming route prefix when # rewritten. # @return [String] # # @!attribute [rw] value # The value used to replace the incoming route prefix when rewritten. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRoutePrefixRewrite AWS API Documentation # class HttpGatewayRoutePrefixRewrite < Struct.new( :default_prefix, :value) SENSITIVE = [] include Aws::Structure end # An object representing the gateway route to rewrite. # # @!attribute [rw] hostname # The host name to rewrite. # @return [Types::GatewayRouteHostnameRewrite] # # @!attribute [rw] path # The path to rewrite. # @return [Types::HttpGatewayRoutePathRewrite] # # @!attribute [rw] prefix # The specified beginning characters to rewrite. # @return [Types::HttpGatewayRoutePrefixRewrite] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpGatewayRouteRewrite AWS API Documentation # class HttpGatewayRouteRewrite < Struct.new( :hostname, :path, :prefix) SENSITIVE = [] include Aws::Structure end # An object representing the path to match in the request. # # @!attribute [rw] exact # The exact path to match on. # @return [String] # # @!attribute [rw] regex # The regex used to match the path. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpPathMatch AWS API Documentation # class HttpPathMatch < Struct.new( :exact, :regex) SENSITIVE = [] include Aws::Structure end # An object that represents the query parameter in the request. # # @!attribute [rw] match # The query parameter to match on. # @return [Types::QueryParameterMatch] # # @!attribute [rw] name # A name for the query parameter that will be matched on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpQueryParameter AWS API Documentation # class HttpQueryParameter < Struct.new( :match, :name) SENSITIVE = [] include Aws::Structure end # 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][1]. # # # # [1]: https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/router_filter#x-envoy-retry-on # # @!attribute [rw] 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 # @return [Array] # # @!attribute [rw] max_retries # The maximum number of retry attempts. # @return [Integer] # # @!attribute [rw] per_retry_timeout # The timeout for each retry attempt. # @return [Types::Duration] # # @!attribute [rw] 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRetryPolicy AWS API Documentation # class HttpRetryPolicy < Struct.new( :http_retry_events, :max_retries, :per_retry_timeout, :tcp_retry_events) SENSITIVE = [] include Aws::Structure end # An object that represents an HTTP or HTTP/2 route type. # # @!attribute [rw] action # An object that represents the action to take if a match is # determined. # @return [Types::HttpRouteAction] # # @!attribute [rw] match # An object that represents the criteria for determining a request # match. # @return [Types::HttpRouteMatch] # # @!attribute [rw] retry_policy # An object that represents a retry policy. # @return [Types::HttpRetryPolicy] # # @!attribute [rw] timeout # An object that represents types of timeouts. # @return [Types::HttpTimeout] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRoute AWS API Documentation # class HttpRoute < Struct.new( :action, :match, :retry_policy, :timeout) SENSITIVE = [] include Aws::Structure end # An object that represents the action to take if a match is determined. # # @!attribute [rw] weighted_targets # An object that represents the targets that traffic is routed to when # a request matches the route. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRouteAction AWS API Documentation # class HttpRouteAction < Struct.new( :weighted_targets) SENSITIVE = [] include Aws::Structure end # An object that represents the HTTP header in the request. # # @!attribute [rw] invert # Specify `True` to match anything except the match criteria. The # default value is `False`. # @return [Boolean] # # @!attribute [rw] match # The `HeaderMatchMethod` object. # @return [Types::HeaderMatchMethod] # # @!attribute [rw] name # A name for the HTTP header in the client request that will be # matched on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRouteHeader AWS API Documentation # class HttpRouteHeader < Struct.new( :invert, :match, :name) SENSITIVE = [] include Aws::Structure end # An object that represents the requirements for a route to match HTTP # requests for a virtual router. # # @!attribute [rw] headers # The client request headers to match on. # @return [Array] # # @!attribute [rw] method # The client request method to match on. Specify only one. # @return [String] # # @!attribute [rw] path # The client request path to match on. # @return [Types::HttpPathMatch] # # @!attribute [rw] port # The port number to match on. # @return [Integer] # # @!attribute [rw] 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`. # @return [String] # # @!attribute [rw] query_parameters # The client request query parameters to match on. # @return [Array] # # @!attribute [rw] scheme # The client request scheme to match on. Specify only one. Applicable # only for HTTP2 routes. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRouteMatch AWS API Documentation # class HttpRouteMatch < Struct.new( :headers, :method, :path, :port, :prefix, :query_parameters, :scheme) SENSITIVE = [] include Aws::Structure end # An object that represents types of timeouts. # # @!attribute [rw] 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. # @return [Types::Duration] # # @!attribute [rw] 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. # @return [Types::Duration] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpTimeout AWS API Documentation # class HttpTimeout < Struct.new( :idle, :per_request) SENSITIVE = [] include Aws::Structure end # The request processing has failed because of an unknown error, # exception, or failure. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/InternalServerErrorException AWS API Documentation # class InternalServerErrorException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An object that represents the key value pairs for the JSON. # # @!attribute [rw] key # The specified key for the JSON. # @return [String] # # @!attribute [rw] value # The specified value for the JSON. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/JsonFormatRef AWS API Documentation # class JsonFormatRef < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # You have exceeded a service limit for your account. For more # information, see [Service Limits][1] in the *App Mesh User Guide*. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/service-quotas.html # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/LimitExceededException AWS API Documentation # class LimitExceededException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] limit # The maximum number of results returned by `ListGatewayRoutes` in # paginated output. When you use this parameter, `ListGatewayRoutes` # returns only `limit` results in a single page along with a # `nextToken` response element. You can see the remaining results of # the initial request by sending another `ListGatewayRoutes` request # with the returned `nextToken` value. This value can be between 1 and # 100. If you don't use this parameter, `ListGatewayRoutes` returns # up to 100 results and a `nextToken` value if applicable. # @return [Integer] # # @!attribute [rw] mesh_name # The name of the service mesh to list gateway routes in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListGatewayRoutes` request where `limit` was used and the results # exceeded the value of that parameter. Pagination continues from the # end of the previous results that returned the `nextToken` value. # @return [String] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway to list gateway routes in. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListGatewayRoutesInput AWS API Documentation # class ListGatewayRoutesInput < Struct.new( :limit, :mesh_name, :mesh_owner, :next_token, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] gateway_routes # The list of existing gateway routes for the specified service mesh # and virtual gateway. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListGatewayRoutes` # request. When the results of a `ListGatewayRoutes` request exceed # `limit`, you can use this value to retrieve the next page of # results. This value is `null` when there are no more results to # return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListGatewayRoutesOutput AWS API Documentation # class ListGatewayRoutesOutput < Struct.new( :gateway_routes, :next_token) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] limit # The maximum number of results returned by `ListMeshes` in paginated # output. When you use this parameter, `ListMeshes` returns only # `limit` results in a single page along with a `nextToken` response # element. You can see the remaining results of the initial request by # sending another `ListMeshes` request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, `ListMeshes` returns up to 100 results and a `nextToken` # value if applicable. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListMeshes` request where `limit` was used and the results exceeded # the value of that parameter. Pagination continues from the end of # the previous results that returned the `nextToken` value. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshesInput AWS API Documentation # class ListMeshesInput < Struct.new( :limit, :next_token) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] meshes # The list of existing service meshes. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListMeshes` request. # When the results of a `ListMeshes` request exceed `limit`, you can # use this value to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshesOutput AWS API Documentation # class ListMeshesOutput < Struct.new( :meshes, :next_token) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] limit # The maximum number of results returned by `ListRoutes` in paginated # output. When you use this parameter, `ListRoutes` returns only # `limit` results in a single page along with a `nextToken` response # element. You can see the remaining results of the initial request by # sending another `ListRoutes` request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, `ListRoutes` returns up to 100 results and a `nextToken` # value if applicable. # @return [Integer] # # @!attribute [rw] mesh_name # The name of the service mesh to list routes in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListRoutes` request where `limit` was used and the results exceeded # the value of that parameter. Pagination continues from the end of # the previous results that returned the `nextToken` value. # @return [String] # # @!attribute [rw] virtual_router_name # The name of the virtual router to list routes in. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListRoutesInput AWS API Documentation # class ListRoutesInput < Struct.new( :limit, :mesh_name, :mesh_owner, :next_token, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListRoutes` request. # When the results of a `ListRoutes` request exceed `limit`, you can # use this value to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] routes # The list of existing routes for the specified service mesh and # virtual router. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListRoutesOutput AWS API Documentation # class ListRoutesOutput < Struct.new( :next_token, :routes) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] limit # The maximum number of tag results returned by `ListTagsForResource` # in paginated output. When this parameter is used, # `ListTagsForResource` returns only `limit` results in a single page # along with a `nextToken` response element. You can see the remaining # results of the initial request by sending another # `ListTagsForResource` request with the returned `nextToken` value. # This value can be between 1 and 100. If you don't use this # parameter, `ListTagsForResource` returns up to 100 results and a # `nextToken` value if applicable. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListTagsForResource` request where `limit` was used and the results # exceeded the value of that parameter. Pagination continues from the # end of the previous results that returned the `nextToken` value. # @return [String] # # @!attribute [rw] resource_arn # The Amazon Resource Name (ARN) that identifies the resource to list # the tags for. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListTagsForResourceInput AWS API Documentation # class ListTagsForResourceInput < Struct.new( :limit, :next_token, :resource_arn) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListTagsForResource` # request. When the results of a `ListTagsForResource` request exceed # `limit`, you can use this value to retrieve the next page of # results. This value is `null` when there are no more results to # return. # @return [String] # # @!attribute [rw] tags # The tags for the resource. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListTagsForResourceOutput AWS API Documentation # class ListTagsForResourceOutput < Struct.new( :next_token, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] limit # The maximum number of results returned by `ListVirtualGateways` in # paginated output. When you use this parameter, `ListVirtualGateways` # returns only `limit` results in a single page along with a # `nextToken` response element. You can see the remaining results of # the initial request by sending another `ListVirtualGateways` request # with the returned `nextToken` value. This value can be between 1 and # 100. If you don't use this parameter, `ListVirtualGateways` returns # up to 100 results and a `nextToken` value if applicable. # @return [Integer] # # @!attribute [rw] mesh_name # The name of the service mesh to list virtual gateways in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListVirtualGateways` request where `limit` was used and the results # exceeded the value of that parameter. Pagination continues from the # end of the previous results that returned the `nextToken` value. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualGatewaysInput AWS API Documentation # class ListVirtualGatewaysInput < Struct.new( :limit, :mesh_name, :mesh_owner, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListVirtualGateways` # request. When the results of a `ListVirtualGateways` request exceed # `limit`, you can use this value to retrieve the next page of # results. This value is `null` when there are no more results to # return. # @return [String] # # @!attribute [rw] virtual_gateways # The list of existing virtual gateways for the specified service # mesh. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualGatewaysOutput AWS API Documentation # class ListVirtualGatewaysOutput < Struct.new( :next_token, :virtual_gateways) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] limit # The maximum number of results returned by `ListVirtualNodes` in # paginated output. When you use this parameter, `ListVirtualNodes` # returns only `limit` results in a single page along with a # `nextToken` response element. You can see the remaining results of # the initial request by sending another `ListVirtualNodes` request # with the returned `nextToken` value. This value can be between 1 and # 100. If you don't use this parameter, `ListVirtualNodes` returns up # to 100 results and a `nextToken` value if applicable. # @return [Integer] # # @!attribute [rw] mesh_name # The name of the service mesh to list virtual nodes in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListVirtualNodes` request where `limit` was used and the results # exceeded the value of that parameter. Pagination continues from the # end of the previous results that returned the `nextToken` value. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodesInput AWS API Documentation # class ListVirtualNodesInput < Struct.new( :limit, :mesh_name, :mesh_owner, :next_token) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListVirtualNodes` # request. When the results of a `ListVirtualNodes` request exceed # `limit`, you can use this value to retrieve the next page of # results. This value is `null` when there are no more results to # return. # @return [String] # # @!attribute [rw] virtual_nodes # The list of existing virtual nodes for the specified service mesh. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodesOutput AWS API Documentation # class ListVirtualNodesOutput < Struct.new( :next_token, :virtual_nodes) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] limit # The maximum number of results returned by `ListVirtualRouters` in # paginated output. When you use this parameter, `ListVirtualRouters` # returns only `limit` results in a single page along with a # `nextToken` response element. You can see the remaining results of # the initial request by sending another `ListVirtualRouters` request # with the returned `nextToken` value. This value can be between 1 and # 100. If you don't use this parameter, `ListVirtualRouters` returns # up to 100 results and a `nextToken` value if applicable. # @return [Integer] # # @!attribute [rw] mesh_name # The name of the service mesh to list virtual routers in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListVirtualRouters` request where `limit` was used and the results # exceeded the value of that parameter. Pagination continues from the # end of the previous results that returned the `nextToken` value. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRoutersInput AWS API Documentation # class ListVirtualRoutersInput < Struct.new( :limit, :mesh_name, :mesh_owner, :next_token) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListVirtualRouters` # request. When the results of a `ListVirtualRouters` request exceed # `limit`, you can use this value to retrieve the next page of # results. This value is `null` when there are no more results to # return. # @return [String] # # @!attribute [rw] virtual_routers # The list of existing virtual routers for the specified service mesh. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRoutersOutput AWS API Documentation # class ListVirtualRoutersOutput < Struct.new( :next_token, :virtual_routers) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] limit # The maximum number of results returned by `ListVirtualServices` in # paginated output. When you use this parameter, `ListVirtualServices` # returns only `limit` results in a single page along with a # `nextToken` response element. You can see the remaining results of # the initial request by sending another `ListVirtualServices` request # with the returned `nextToken` value. This value can be between 1 and # 100. If you don't use this parameter, `ListVirtualServices` returns # up to 100 results and a `nextToken` value if applicable. # @return [Integer] # # @!attribute [rw] mesh_name # The name of the service mesh to list virtual services in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListVirtualServices` request where `limit` was used and the results # exceeded the value of that parameter. Pagination continues from the # end of the previous results that returned the `nextToken` value. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualServicesInput AWS API Documentation # class ListVirtualServicesInput < Struct.new( :limit, :mesh_name, :mesh_owner, :next_token) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListVirtualServices` # request. When the results of a `ListVirtualServices` request exceed # `limit`, you can use this value to retrieve the next page of # results. This value is `null` when there are no more results to # return. # @return [String] # # @!attribute [rw] virtual_services # The list of existing virtual services for the specified service # mesh. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualServicesOutput AWS API Documentation # class ListVirtualServicesOutput < Struct.new( :next_token, :virtual_services) SENSITIVE = [] include Aws::Structure end # An object that represents a listener for a virtual node. # # @!attribute [rw] connection_pool # The connection pool information for the listener. # @return [Types::VirtualNodeConnectionPool] # # @!attribute [rw] health_check # The health check information for the listener. # @return [Types::HealthCheckPolicy] # # @!attribute [rw] outlier_detection # The outlier detection information for the listener. # @return [Types::OutlierDetection] # # @!attribute [rw] port_mapping # The port mapping information for the listener. # @return [Types::PortMapping] # # @!attribute [rw] timeout # An object that represents timeouts for different protocols. # @return [Types::ListenerTimeout] # # @!attribute [rw] tls # A reference to an object that represents the Transport Layer # Security (TLS) properties for a listener. # @return [Types::ListenerTls] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/Listener AWS API Documentation # class Listener < Struct.new( :connection_pool, :health_check, :outlier_detection, :port_mapping, :timeout, :tls) SENSITIVE = [] include Aws::Structure end # An object that represents timeouts for different protocols. # # @note ListenerTimeout is a union - when making an API calls you must set exactly one of the members. # # @note ListenerTimeout is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ListenerTimeout corresponding to the set member. # # @!attribute [rw] grpc # An object that represents types of timeouts. # @return [Types::GrpcTimeout] # # @!attribute [rw] http # An object that represents types of timeouts. # @return [Types::HttpTimeout] # # @!attribute [rw] http2 # An object that represents types of timeouts. # @return [Types::HttpTimeout] # # @!attribute [rw] tcp # An object that represents types of timeouts. # @return [Types::TcpTimeout] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTimeout AWS API Documentation # class ListenerTimeout < Struct.new( :grpc, :http, :http2, :tcp, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Grpc < ListenerTimeout; end class Http < ListenerTimeout; end class Http2 < ListenerTimeout; end class Tcp < ListenerTimeout; end class Unknown < ListenerTimeout; end end # An object that represents the Transport Layer Security (TLS) # properties for a listener. # # @!attribute [rw] certificate # A reference to an object that represents a listener's Transport # Layer Security (TLS) certificate. # @return [Types::ListenerTlsCertificate] # # @!attribute [rw] mode # 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. # @return [String] # # @!attribute [rw] validation # A reference to an object that represents a listener's Transport # Layer Security (TLS) validation context. # @return [Types::ListenerTlsValidationContext] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTls AWS API Documentation # class ListenerTls < Struct.new( :certificate, :mode, :validation) SENSITIVE = [] include Aws::Structure end # An object that represents an Certificate Manager certificate. # # @!attribute [rw] certificate_arn # 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)][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTlsAcmCertificate AWS API Documentation # class ListenerTlsAcmCertificate < Struct.new( :certificate_arn) SENSITIVE = [] include Aws::Structure end # An object that represents a listener's Transport Layer Security (TLS) # certificate. # # @note ListenerTlsCertificate is a union - when making an API calls you must set exactly one of the members. # # @note ListenerTlsCertificate is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ListenerTlsCertificate corresponding to the set member. # # @!attribute [rw] acm # A reference to an object that represents an Certificate Manager # certificate. # @return [Types::ListenerTlsAcmCertificate] # # @!attribute [rw] file # A reference to an object that represents a local file certificate. # @return [Types::ListenerTlsFileCertificate] # # @!attribute [rw] sds # A reference to an object that represents a listener's Secret # Discovery Service certificate. # @return [Types::ListenerTlsSdsCertificate] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTlsCertificate AWS API Documentation # class ListenerTlsCertificate < Struct.new( :acm, :file, :sds, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Acm < ListenerTlsCertificate; end class File < ListenerTlsCertificate; end class Sds < ListenerTlsCertificate; end class Unknown < ListenerTlsCertificate; end end # 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)][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites # # @!attribute [rw] certificate_chain # The certificate chain for the certificate. # @return [String] # # @!attribute [rw] private_key # The private key for a certificate stored on the file system of the # virtual node that the proxy is running on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTlsFileCertificate AWS API Documentation # class ListenerTlsFileCertificate < Struct.new( :certificate_chain, :private_key) SENSITIVE = [] include Aws::Structure end # 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][1] for more # info. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html # # @!attribute [rw] secret_name # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTlsSdsCertificate AWS API Documentation # class ListenerTlsSdsCertificate < Struct.new( :secret_name) SENSITIVE = [] include Aws::Structure end # An object that represents a listener's Transport Layer Security (TLS) # validation context. # # @!attribute [rw] subject_alternative_names # A reference to an object that represents the SANs for a listener's # Transport Layer Security (TLS) validation context. # @return [Types::SubjectAlternativeNames] # # @!attribute [rw] trust # A reference to where to retrieve the trust chain when validating a # peer’s Transport Layer Security (TLS) certificate. # @return [Types::ListenerTlsValidationContextTrust] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTlsValidationContext AWS API Documentation # class ListenerTlsValidationContext < Struct.new( :subject_alternative_names, :trust) SENSITIVE = [] include Aws::Structure end # An object that represents a listener's Transport Layer Security (TLS) # validation context trust. # # @note ListenerTlsValidationContextTrust is a union - when making an API calls you must set exactly one of the members. # # @note ListenerTlsValidationContextTrust is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ListenerTlsValidationContextTrust corresponding to the set member. # # @!attribute [rw] file # An object that represents a Transport Layer Security (TLS) # validation context trust for a local file. # @return [Types::TlsValidationContextFileTrust] # # @!attribute [rw] sds # A reference to an object that represents a listener's Transport # Layer Security (TLS) Secret Discovery Service validation context # trust. # @return [Types::TlsValidationContextSdsTrust] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTlsValidationContextTrust AWS API Documentation # class ListenerTlsValidationContextTrust < Struct.new( :file, :sds, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class File < ListenerTlsValidationContextTrust; end class Sds < ListenerTlsValidationContextTrust; end class Unknown < ListenerTlsValidationContextTrust; end end # An object that represents the logging information for a virtual node. # # @!attribute [rw] access_log # The access log configuration for a virtual node. # @return [Types::AccessLog] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/Logging AWS API Documentation # class Logging < Struct.new( :access_log) SENSITIVE = [] include Aws::Structure end # An object that represents the format for the logs. # # @note LoggingFormat is a union - when making an API calls you must set exactly one of the members. # # @note LoggingFormat is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of LoggingFormat corresponding to the set member. # # @!attribute [rw] json # @return [Array] # # @!attribute [rw] text # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/LoggingFormat AWS API Documentation # class LoggingFormat < Struct.new( :json, :text, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Json < LoggingFormat; end class Text < LoggingFormat; end class Unknown < LoggingFormat; end end # 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. # # @!attribute [rw] end # The end of the range. # @return [Integer] # # @!attribute [rw] start # The start of the range. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MatchRange AWS API Documentation # class MatchRange < Struct.new( :end, :start) SENSITIVE = [] include Aws::Structure end # An object that represents a service mesh returned by a describe # operation. # # @!attribute [rw] mesh_name # The name of the service mesh. # @return [String] # # @!attribute [rw] metadata # The associated metadata for the service mesh. # @return [Types::ResourceMetadata] # # @!attribute [rw] spec # The associated specification for the service mesh. # @return [Types::MeshSpec] # # @!attribute [rw] status # The status of the service mesh. # @return [Types::MeshStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshData AWS API Documentation # class MeshData < Struct.new( :mesh_name, :metadata, :spec, :status) SENSITIVE = [] include Aws::Structure end # An object that represents a service mesh returned by a list operation. # # @!attribute [rw] arn # The full Amazon Resource Name (ARN) of the service mesh. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp in seconds for when the resource was # created. # @return [Time] # # @!attribute [rw] last_updated_at # The Unix epoch timestamp in seconds for when the resource was last # updated. # @return [Time] # # @!attribute [rw] mesh_name # The name of the service mesh. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] resource_owner # The Amazon Web Services IAM account ID of the resource owner. If the # account ID is not your own, then it's the ID of the mesh owner or # of another account that the mesh is shared with. For more # information about mesh sharing, see [Working with shared meshes][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] version # The version of the resource. Resources are created at version 1, and # this version is incremented each time that they're updated. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshRef AWS API Documentation # class MeshRef < Struct.new( :arn, :created_at, :last_updated_at, :mesh_name, :mesh_owner, :resource_owner, :version) SENSITIVE = [] include Aws::Structure end # An object that represents the service discovery information for a # service mesh. # # @!attribute [rw] ip_preference # The IP version to use to control traffic within the mesh. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshServiceDiscovery AWS API Documentation # class MeshServiceDiscovery < Struct.new( :ip_preference) SENSITIVE = [] include Aws::Structure end # An object that represents the specification of a service mesh. # # @!attribute [rw] egress_filter # The egress filter rules for the service mesh. # @return [Types::EgressFilter] # # @!attribute [rw] service_discovery # An object that represents the service discovery information for a # service mesh. # @return [Types::MeshServiceDiscovery] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshSpec AWS API Documentation # class MeshSpec < Struct.new( :egress_filter, :service_discovery) SENSITIVE = [] include Aws::Structure end # An object that represents the status of a service mesh. # # @!attribute [rw] status # The current mesh status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshStatus AWS API Documentation # class MeshStatus < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # The specified resource doesn't exist. Check your request syntax and # try again. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/NotFoundException AWS API Documentation # class NotFoundException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An object that represents the outlier detection for a virtual node's # listener. # # @!attribute [rw] base_ejection_duration # The base amount of time for which a host is ejected. # @return [Types::Duration] # # @!attribute [rw] interval # The time interval between ejection sweep analysis. # @return [Types::Duration] # # @!attribute [rw] max_ejection_percent # 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. # @return [Integer] # # @!attribute [rw] max_server_errors # Number of consecutive `5xx` errors required for ejection. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/OutlierDetection AWS API Documentation # class OutlierDetection < Struct.new( :base_ejection_duration, :interval, :max_ejection_percent, :max_server_errors) SENSITIVE = [] include Aws::Structure end # An object that represents a port mapping. # # @!attribute [rw] port # The port used for the port mapping. # @return [Integer] # # @!attribute [rw] protocol # The protocol used for the port mapping. Specify one protocol. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/PortMapping AWS API Documentation # class PortMapping < Struct.new( :port, :protocol) SENSITIVE = [] include Aws::Structure end # An object representing the query parameter to match. # # @!attribute [rw] exact # The exact query parameter to match on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/QueryParameterMatch AWS API Documentation # class QueryParameterMatch < Struct.new( :exact) SENSITIVE = [] include Aws::Structure end # You can't delete the specified resource because it's in use or # required by another resource. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ResourceInUseException AWS API Documentation # class ResourceInUseException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An object that represents metadata for a resource. # # @!attribute [rw] arn # The full Amazon Resource Name (ARN) for the resource. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp in seconds for when the resource was # created. # @return [Time] # # @!attribute [rw] last_updated_at # The Unix epoch timestamp in seconds for when the resource was last # updated. # @return [Time] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] resource_owner # The Amazon Web Services IAM account ID of the resource owner. If the # account ID is not your own, then it's the ID of the mesh owner or # of another account that the mesh is shared with. For more # information about mesh sharing, see [Working with shared meshes][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] uid # The unique identifier for the resource. # @return [String] # # @!attribute [rw] version # The version of the resource. Resources are created at version 1, and # this version is incremented each time that they're updated. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ResourceMetadata AWS API Documentation # class ResourceMetadata < Struct.new( :arn, :created_at, :last_updated_at, :mesh_owner, :resource_owner, :uid, :version) SENSITIVE = [] include Aws::Structure end # An object that represents a route returned by a describe operation. # # @!attribute [rw] mesh_name # The name of the service mesh that the route resides in. # @return [String] # # @!attribute [rw] metadata # The associated metadata for the route. # @return [Types::ResourceMetadata] # # @!attribute [rw] route_name # The name of the route. # @return [String] # # @!attribute [rw] spec # The specifications of the route. # @return [Types::RouteSpec] # # @!attribute [rw] status # The status of the route. # @return [Types::RouteStatus] # # @!attribute [rw] virtual_router_name # The virtual router that the route is associated with. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/RouteData AWS API Documentation # class RouteData < Struct.new( :mesh_name, :metadata, :route_name, :spec, :status, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # An object that represents a route returned by a list operation. # # @!attribute [rw] arn # The full Amazon Resource Name (ARN) for the route. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp in seconds for when the resource was # created. # @return [Time] # # @!attribute [rw] last_updated_at # The Unix epoch timestamp in seconds for when the resource was last # updated. # @return [Time] # # @!attribute [rw] mesh_name # The name of the service mesh that the route resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] resource_owner # The Amazon Web Services IAM account ID of the resource owner. If the # account ID is not your own, then it's the ID of the mesh owner or # of another account that the mesh is shared with. For more # information about mesh sharing, see [Working with shared meshes][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] route_name # The name of the route. # @return [String] # # @!attribute [rw] version # The version of the resource. Resources are created at version 1, and # this version is incremented each time that they're updated. # @return [Integer] # # @!attribute [rw] virtual_router_name # The virtual router that the route is associated with. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/RouteRef AWS API Documentation # class RouteRef < Struct.new( :arn, :created_at, :last_updated_at, :mesh_name, :mesh_owner, :resource_owner, :route_name, :version, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # An object that represents a route specification. Specify one route # type. # # @!attribute [rw] grpc_route # An object that represents the specification of a gRPC route. # @return [Types::GrpcRoute] # # @!attribute [rw] http2_route # An object that represents the specification of an HTTP/2 route. # @return [Types::HttpRoute] # # @!attribute [rw] http_route # An object that represents the specification of an HTTP route. # @return [Types::HttpRoute] # # @!attribute [rw] priority # The priority for the route. Routes are matched based on the # specified value, where 0 is the highest priority. # @return [Integer] # # @!attribute [rw] tcp_route # An object that represents the specification of a TCP route. # @return [Types::TcpRoute] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/RouteSpec AWS API Documentation # class RouteSpec < Struct.new( :grpc_route, :http2_route, :http_route, :priority, :tcp_route) SENSITIVE = [] include Aws::Structure end # An object that represents the current status of a route. # # @!attribute [rw] status # The current status for the route. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/RouteStatus AWS API Documentation # class RouteStatus < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # An object that represents the service discovery information for a # virtual node. # # @note ServiceDiscovery is a union - when making an API calls you must set exactly one of the members. # # @note ServiceDiscovery is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ServiceDiscovery corresponding to the set member. # # @!attribute [rw] aws_cloud_map # Specifies any Cloud Map information for the virtual node. # @return [Types::AwsCloudMapServiceDiscovery] # # @!attribute [rw] dns # Specifies the DNS information for the virtual node. # @return [Types::DnsServiceDiscovery] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ServiceDiscovery AWS API Documentation # class ServiceDiscovery < Struct.new( :aws_cloud_map, :dns, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class AwsCloudMap < ServiceDiscovery; end class Dns < ServiceDiscovery; end class Unknown < ServiceDiscovery; end end # The request has failed due to a temporary failure of the service. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ServiceUnavailableException AWS API Documentation # class ServiceUnavailableException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An object that represents the methods by which a subject alternative # name on a peer Transport Layer Security (TLS) certificate can be # matched. # # @!attribute [rw] exact # The values sent must match the specified values exactly. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/SubjectAlternativeNameMatchers AWS API Documentation # class SubjectAlternativeNameMatchers < Struct.new( :exact) SENSITIVE = [] include Aws::Structure end # An object that represents the subject alternative names secured by the # certificate. # # @!attribute [rw] match # An object that represents the criteria for determining a SANs match. # @return [Types::SubjectAlternativeNameMatchers] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/SubjectAlternativeNames AWS API Documentation # class SubjectAlternativeNames < Struct.new( :match) SENSITIVE = [] include Aws::Structure end # Optional metadata that you apply to a resource 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. # # @!attribute [rw] key # One part of a key-value pair that make up a tag. A `key` is a # general label that acts like a category for more specific tag # values. # @return [String] # # @!attribute [rw] value # The optional part of a key-value pair that make up a tag. A `value` # acts as a descriptor within a tag category (key). # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TagRef AWS API Documentation # class TagRef < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] resource_arn # The Amazon Resource Name (ARN) of the resource to add tags to. # @return [String] # # @!attribute [rw] tags # The tags to add to the resource. A tag is an array of key-value # pairs. Tag keys can have a maximum character length of 128 # characters, and tag values can have a maximum length of 256 # characters. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TagResourceInput AWS API Documentation # class TagResourceInput < Struct.new( :resource_arn, :tags) SENSITIVE = [] include Aws::Structure end # # # # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TagResourceOutput AWS API Documentation # class TagResourceOutput < Aws::EmptyStructure; end # An object that represents a TCP route type. # # @!attribute [rw] action # The action to take if a match is determined. # @return [Types::TcpRouteAction] # # @!attribute [rw] match # An object that represents the criteria for determining a request # match. # @return [Types::TcpRouteMatch] # # @!attribute [rw] timeout # An object that represents types of timeouts. # @return [Types::TcpTimeout] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TcpRoute AWS API Documentation # class TcpRoute < Struct.new( :action, :match, :timeout) SENSITIVE = [] include Aws::Structure end # An object that represents the action to take if a match is determined. # # @!attribute [rw] weighted_targets # An object that represents the targets that traffic is routed to when # a request matches the route. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TcpRouteAction AWS API Documentation # class TcpRouteAction < Struct.new( :weighted_targets) SENSITIVE = [] include Aws::Structure end # An object representing the TCP route to match. # # @!attribute [rw] port # The port number to match on. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TcpRouteMatch AWS API Documentation # class TcpRouteMatch < Struct.new( :port) SENSITIVE = [] include Aws::Structure end # An object that represents types of timeouts. # # @!attribute [rw] 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. # @return [Types::Duration] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TcpTimeout AWS API Documentation # class TcpTimeout < Struct.new( :idle) SENSITIVE = [] include Aws::Structure end # An object that represents how the proxy will validate its peer during # Transport Layer Security (TLS) negotiation. # # @!attribute [rw] subject_alternative_names # A reference to an object that represents the SANs for a Transport # Layer Security (TLS) validation context. If you don't specify SANs # on the *terminating* mesh endpoint, the Envoy proxy for that node # doesn't verify the SAN on a peer client certificate. If you don't # specify SANs on the *originating* mesh endpoint, the SAN on the # certificate provided by the terminating endpoint must match the mesh # endpoint service discovery configuration. Since SPIRE vended # certificates have a SPIFFE ID as a name, you must set the SAN since # the name doesn't match the service discovery name. # @return [Types::SubjectAlternativeNames] # # @!attribute [rw] trust # A reference to where to retrieve the trust chain when validating a # peer’s Transport Layer Security (TLS) certificate. # @return [Types::TlsValidationContextTrust] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TlsValidationContext AWS API Documentation # class TlsValidationContext < Struct.new( :subject_alternative_names, :trust) SENSITIVE = [] include Aws::Structure end # An object that represents a Transport Layer Security (TLS) validation # context trust for an Certificate Manager certificate. # # @!attribute [rw] certificate_authority_arns # One or more ACM Amazon Resource Name (ARN)s. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TlsValidationContextAcmTrust AWS API Documentation # class TlsValidationContextAcmTrust < Struct.new( :certificate_authority_arns) SENSITIVE = [] include Aws::Structure end # An object that represents a Transport Layer Security (TLS) validation # context trust for a local file. # # @!attribute [rw] certificate_chain # The certificate trust chain for a certificate stored on the file # system of the virtual node that the proxy is running on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TlsValidationContextFileTrust AWS API Documentation # class TlsValidationContextFileTrust < Struct.new( :certificate_chain) SENSITIVE = [] include Aws::Structure end # 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][1] for more info. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html # # @!attribute [rw] secret_name # A reference to an object that represents the name of the secret for # a Transport Layer Security (TLS) Secret Discovery Service validation # context trust. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TlsValidationContextSdsTrust AWS API Documentation # class TlsValidationContextSdsTrust < Struct.new( :secret_name) SENSITIVE = [] include Aws::Structure end # An object that represents a Transport Layer Security (TLS) validation # context trust. # # @note TlsValidationContextTrust is a union - when making an API calls you must set exactly one of the members. # # @note TlsValidationContextTrust is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of TlsValidationContextTrust corresponding to the set member. # # @!attribute [rw] acm # A reference to an object that represents a Transport Layer Security # (TLS) validation context trust for an Certificate Manager # certificate. # @return [Types::TlsValidationContextAcmTrust] # # @!attribute [rw] file # An object that represents a Transport Layer Security (TLS) # validation context trust for a local file. # @return [Types::TlsValidationContextFileTrust] # # @!attribute [rw] sds # A reference to an object that represents a Transport Layer Security # (TLS) Secret Discovery Service validation context trust. # @return [Types::TlsValidationContextSdsTrust] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TlsValidationContextTrust AWS API Documentation # class TlsValidationContextTrust < Struct.new( :acm, :file, :sds, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Acm < TlsValidationContextTrust; end class File < TlsValidationContextTrust; end class Sds < TlsValidationContextTrust; end class Unknown < TlsValidationContextTrust; end end # The maximum request rate permitted by the App Mesh APIs has been # exceeded for your account. For best results, use an increasing or # variable sleep interval between requests. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TooManyRequestsException AWS API Documentation # class TooManyRequestsException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # The request exceeds the maximum allowed number of tags allowed per # resource. The current limit is 50 user tags per resource. You must # reduce the number of tags in the request. None of the tags in this # request were applied. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TooManyTagsException AWS API Documentation # class TooManyTagsException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] resource_arn # The Amazon Resource Name (ARN) of the resource to delete tags from. # @return [String] # # @!attribute [rw] tag_keys # The keys of the tags to be removed. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UntagResourceInput AWS API Documentation # class UntagResourceInput < Struct.new( :resource_arn, :tag_keys) SENSITIVE = [] include Aws::Structure end # # # # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UntagResourceOutput AWS API Documentation # class UntagResourceOutput < Aws::EmptyStructure; end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] gateway_route_name # The name of the gateway route to update. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh that the gateway route resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The new gateway route specification to apply. This overwrites the # existing data. # @return [Types::GatewayRouteSpec] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway that the gateway route is associated # with. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRouteInput AWS API Documentation # class UpdateGatewayRouteInput < Struct.new( :client_token, :gateway_route_name, :mesh_name, :mesh_owner, :spec, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] gateway_route # A full description of the gateway route that was updated. # @return [Types::GatewayRouteData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRouteOutput AWS API Documentation # class UpdateGatewayRouteOutput < Struct.new( :gateway_route) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh to update. # @return [String] # # @!attribute [rw] spec # The service mesh specification to apply. # @return [Types::MeshSpec] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateMeshInput AWS API Documentation # class UpdateMeshInput < Struct.new( :client_token, :mesh_name, :spec) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] mesh # An object that represents a service mesh returned by a describe # operation. # @return [Types::MeshData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateMeshOutput AWS API Documentation # class UpdateMeshOutput < Struct.new( :mesh) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh that the route resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] route_name # The name of the route to update. # @return [String] # # @!attribute [rw] spec # The new route specification to apply. This overwrites the existing # data. # @return [Types::RouteSpec] # # @!attribute [rw] virtual_router_name # The name of the virtual router that the route is associated with. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRouteInput AWS API Documentation # class UpdateRouteInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :route_name, :spec, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] route # A full description of the route that was updated. # @return [Types::RouteData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRouteOutput AWS API Documentation # class UpdateRouteOutput < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual gateway resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The new virtual gateway specification to apply. This overwrites the # existing data. # @return [Types::VirtualGatewaySpec] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway to update. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGatewayInput AWS API Documentation # class UpdateVirtualGatewayInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :spec, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] virtual_gateway # A full description of the virtual gateway that was updated. # @return [Types::VirtualGatewayData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGatewayOutput AWS API Documentation # class UpdateVirtualGatewayOutput < Struct.new( :virtual_gateway) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual node resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The new virtual node specification to apply. This overwrites the # existing data. # @return [Types::VirtualNodeSpec] # # @!attribute [rw] virtual_node_name # The name of the virtual node to update. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNodeInput AWS API Documentation # class UpdateVirtualNodeInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :spec, :virtual_node_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_node # A full description of the virtual node that was updated. # @return [Types::VirtualNodeData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNodeOutput AWS API Documentation # class UpdateVirtualNodeOutput < Struct.new( :virtual_node) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual router resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The new virtual router specification to apply. This overwrites the # existing data. # @return [Types::VirtualRouterSpec] # # @!attribute [rw] virtual_router_name # The name of the virtual router to update. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouterInput AWS API Documentation # class UpdateVirtualRouterInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :spec, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_router # A full description of the virtual router that was updated. # @return [Types::VirtualRouterData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouterOutput AWS API Documentation # class UpdateVirtualRouterOutput < Struct.new( :virtual_router) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. Up to 36 letters, numbers, hyphens, and # underscores are allowed. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual service resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] spec # The new virtual service specification to apply. This overwrites the # existing data. # @return [Types::VirtualServiceSpec] # # @!attribute [rw] virtual_service_name # The name of the virtual service to update. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualServiceInput AWS API Documentation # class UpdateVirtualServiceInput < Struct.new( :client_token, :mesh_name, :mesh_owner, :spec, :virtual_service_name) SENSITIVE = [] include Aws::Structure end # # # # # @!attribute [rw] virtual_service # A full description of the virtual service that was updated. # @return [Types::VirtualServiceData] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualServiceOutput AWS API Documentation # class UpdateVirtualServiceOutput < Struct.new( :virtual_service) SENSITIVE = [] include Aws::Structure end # The access log configuration for a virtual gateway. # # @note VirtualGatewayAccessLog is a union - when making an API calls you must set exactly one of the members. # # @note VirtualGatewayAccessLog is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VirtualGatewayAccessLog corresponding to the set member. # # @!attribute [rw] file # The file object to send virtual gateway access logs to. # @return [Types::VirtualGatewayFileAccessLog] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayAccessLog AWS API Documentation # class VirtualGatewayAccessLog < Struct.new( :file, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class File < VirtualGatewayAccessLog; end class Unknown < VirtualGatewayAccessLog; end end # An object that represents the default properties for a backend. # # @!attribute [rw] client_policy # A reference to an object that represents a client policy. # @return [Types::VirtualGatewayClientPolicy] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayBackendDefaults AWS API Documentation # class VirtualGatewayBackendDefaults < Struct.new( :client_policy) SENSITIVE = [] include Aws::Structure end # An object that represents a client policy. # # @!attribute [rw] tls # A reference to an object that represents a Transport Layer Security # (TLS) client policy. # @return [Types::VirtualGatewayClientPolicyTls] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayClientPolicy AWS API Documentation # class VirtualGatewayClientPolicy < Struct.new( :tls) SENSITIVE = [] include Aws::Structure end # An object that represents a Transport Layer Security (TLS) client # policy. # # @!attribute [rw] certificate # A reference to an object that represents a virtual gateway's # client's Transport Layer Security (TLS) certificate. # @return [Types::VirtualGatewayClientTlsCertificate] # # @!attribute [rw] enforce # Whether the policy is enforced. The default is `True`, if a value # isn't specified. # @return [Boolean] # # @!attribute [rw] ports # One or more ports that the policy is enforced for. # @return [Array] # # @!attribute [rw] validation # A reference to an object that represents a Transport Layer Security # (TLS) validation context. # @return [Types::VirtualGatewayTlsValidationContext] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayClientPolicyTls AWS API Documentation # class VirtualGatewayClientPolicyTls < Struct.new( :certificate, :enforce, :ports, :validation) SENSITIVE = [] include Aws::Structure end # An object that represents the virtual gateway's client's Transport # Layer Security (TLS) certificate. # # @note VirtualGatewayClientTlsCertificate is a union - when making an API calls you must set exactly one of the members. # # @note VirtualGatewayClientTlsCertificate is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VirtualGatewayClientTlsCertificate corresponding to the set member. # # @!attribute [rw] file # 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) ][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html # @return [Types::VirtualGatewayListenerTlsFileCertificate] # # @!attribute [rw] sds # A reference to an object that represents a virtual gateway's # client's Secret Discovery Service certificate. # @return [Types::VirtualGatewayListenerTlsSdsCertificate] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayClientTlsCertificate AWS API Documentation # class VirtualGatewayClientTlsCertificate < Struct.new( :file, :sds, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class File < VirtualGatewayClientTlsCertificate; end class Sds < VirtualGatewayClientTlsCertificate; end class Unknown < VirtualGatewayClientTlsCertificate; end end # 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`. # # @note VirtualGatewayConnectionPool is a union - when making an API calls you must set exactly one of the members. # # @note VirtualGatewayConnectionPool is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VirtualGatewayConnectionPool corresponding to the set member. # # @!attribute [rw] grpc # An object that represents a type of connection pool. # @return [Types::VirtualGatewayGrpcConnectionPool] # # @!attribute [rw] http # An object that represents a type of connection pool. # @return [Types::VirtualGatewayHttpConnectionPool] # # @!attribute [rw] http2 # An object that represents a type of connection pool. # @return [Types::VirtualGatewayHttp2ConnectionPool] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayConnectionPool AWS API Documentation # class VirtualGatewayConnectionPool < Struct.new( :grpc, :http, :http2, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Grpc < VirtualGatewayConnectionPool; end class Http < VirtualGatewayConnectionPool; end class Http2 < VirtualGatewayConnectionPool; end class Unknown < VirtualGatewayConnectionPool; end end # An object that represents a virtual gateway returned by a describe # operation. # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual gateway resides in. # @return [String] # # @!attribute [rw] metadata # An object that represents metadata for a resource. # @return [Types::ResourceMetadata] # # @!attribute [rw] spec # The specifications of the virtual gateway. # @return [Types::VirtualGatewaySpec] # # @!attribute [rw] status # The current status of the virtual gateway. # @return [Types::VirtualGatewayStatus] # # @!attribute [rw] virtual_gateway_name # The name of the virtual gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayData AWS API Documentation # class VirtualGatewayData < Struct.new( :mesh_name, :metadata, :spec, :status, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # An object that represents an access log file. # # @!attribute [rw] format # The specified format for the virtual gateway access logs. It can be # either `json_format` or `text_format`. # @return [Types::LoggingFormat] # # @!attribute [rw] path # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayFileAccessLog AWS API Documentation # class VirtualGatewayFileAccessLog < Struct.new( :format, :path) SENSITIVE = [] include Aws::Structure end # An object that represents a type of connection pool. # # @!attribute [rw] max_requests # Maximum number of inflight requests Envoy can concurrently support # across hosts in upstream cluster. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayGrpcConnectionPool AWS API Documentation # class VirtualGatewayGrpcConnectionPool < Struct.new( :max_requests) SENSITIVE = [] include Aws::Structure end # An object that represents the health check policy for a virtual # gateway's listener. # # @!attribute [rw] healthy_threshold # The number of consecutive successful health checks that must occur # before declaring the listener healthy. # @return [Integer] # # @!attribute [rw] interval_millis # The time period in milliseconds between each health check execution. # @return [Integer] # # @!attribute [rw] path # 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. # @return [String] # # @!attribute [rw] port # The destination port for the health check request. This port must # match the port defined in the PortMapping for the listener. # @return [Integer] # # @!attribute [rw] protocol # The protocol for the health check request. If you specify `grpc`, # then your service must conform to the [GRPC Health Checking # Protocol][1]. # # # # [1]: https://github.com/grpc/grpc/blob/master/doc/health-checking.md # @return [String] # # @!attribute [rw] timeout_millis # The amount of time to wait when receiving a response from the health # check, in milliseconds. # @return [Integer] # # @!attribute [rw] unhealthy_threshold # The number of consecutive failed health checks that must occur # before declaring a virtual gateway unhealthy. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayHealthCheckPolicy AWS API Documentation # class VirtualGatewayHealthCheckPolicy < Struct.new( :healthy_threshold, :interval_millis, :path, :port, :protocol, :timeout_millis, :unhealthy_threshold) SENSITIVE = [] include Aws::Structure end # An object that represents a type of connection pool. # # @!attribute [rw] max_requests # Maximum number of inflight requests Envoy can concurrently support # across hosts in upstream cluster. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayHttp2ConnectionPool AWS API Documentation # class VirtualGatewayHttp2ConnectionPool < Struct.new( :max_requests) SENSITIVE = [] include Aws::Structure end # An object that represents a type of connection pool. # # @!attribute [rw] max_connections # Maximum number of outbound TCP connections Envoy can establish # concurrently with all hosts in upstream cluster. # @return [Integer] # # @!attribute [rw] max_pending_requests # Number of overflowing requests after `max_connections` Envoy will # queue to upstream cluster. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayHttpConnectionPool AWS API Documentation # class VirtualGatewayHttpConnectionPool < Struct.new( :max_connections, :max_pending_requests) SENSITIVE = [] include Aws::Structure end # An object that represents a listener for a virtual gateway. # # @!attribute [rw] connection_pool # The connection pool information for the virtual gateway listener. # @return [Types::VirtualGatewayConnectionPool] # # @!attribute [rw] health_check # The health check information for the listener. # @return [Types::VirtualGatewayHealthCheckPolicy] # # @!attribute [rw] port_mapping # The port mapping information for the listener. # @return [Types::VirtualGatewayPortMapping] # # @!attribute [rw] tls # A reference to an object that represents the Transport Layer # Security (TLS) properties for the listener. # @return [Types::VirtualGatewayListenerTls] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListener AWS API Documentation # class VirtualGatewayListener < Struct.new( :connection_pool, :health_check, :port_mapping, :tls) SENSITIVE = [] include Aws::Structure end # An object that represents the Transport Layer Security (TLS) # properties for a listener. # # @!attribute [rw] certificate # An object that represents a Transport Layer Security (TLS) # certificate. # @return [Types::VirtualGatewayListenerTlsCertificate] # # @!attribute [rw] mode # 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. # @return [String] # # @!attribute [rw] validation # A reference to an object that represents a virtual gateway's # listener's Transport Layer Security (TLS) validation context. # @return [Types::VirtualGatewayListenerTlsValidationContext] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTls AWS API Documentation # class VirtualGatewayListenerTls < Struct.new( :certificate, :mode, :validation) SENSITIVE = [] include Aws::Structure end # An object that represents an Certificate Manager certificate. # # @!attribute [rw] certificate_arn # 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)][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsAcmCertificate AWS API Documentation # class VirtualGatewayListenerTlsAcmCertificate < Struct.new( :certificate_arn) SENSITIVE = [] include Aws::Structure end # An object that represents a listener's Transport Layer Security (TLS) # certificate. # # @note VirtualGatewayListenerTlsCertificate is a union - when making an API calls you must set exactly one of the members. # # @note VirtualGatewayListenerTlsCertificate is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VirtualGatewayListenerTlsCertificate corresponding to the set member. # # @!attribute [rw] acm # A reference to an object that represents an Certificate Manager # certificate. # @return [Types::VirtualGatewayListenerTlsAcmCertificate] # # @!attribute [rw] file # A reference to an object that represents a local file certificate. # @return [Types::VirtualGatewayListenerTlsFileCertificate] # # @!attribute [rw] sds # A reference to an object that represents a virtual gateway's # listener's Secret Discovery Service certificate. # @return [Types::VirtualGatewayListenerTlsSdsCertificate] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsCertificate AWS API Documentation # class VirtualGatewayListenerTlsCertificate < Struct.new( :acm, :file, :sds, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Acm < VirtualGatewayListenerTlsCertificate; end class File < VirtualGatewayListenerTlsCertificate; end class Sds < VirtualGatewayListenerTlsCertificate; end class Unknown < VirtualGatewayListenerTlsCertificate; end end # 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)][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites # # @!attribute [rw] certificate_chain # The certificate chain for the certificate. # @return [String] # # @!attribute [rw] private_key # The private key for a certificate stored on the file system of the # mesh endpoint that the proxy is running on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsFileCertificate AWS API Documentation # class VirtualGatewayListenerTlsFileCertificate < Struct.new( :certificate_chain, :private_key) SENSITIVE = [] include Aws::Structure end # 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][1] for more info. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html # # @!attribute [rw] secret_name # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsSdsCertificate AWS API Documentation # class VirtualGatewayListenerTlsSdsCertificate < Struct.new( :secret_name) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual gateway's listener's Transport # Layer Security (TLS) validation context. # # @!attribute [rw] subject_alternative_names # A reference to an object that represents the SANs for a virtual # gateway listener's Transport Layer Security (TLS) validation # context. # @return [Types::SubjectAlternativeNames] # # @!attribute [rw] trust # A reference to where to retrieve the trust chain when validating a # peer’s Transport Layer Security (TLS) certificate. # @return [Types::VirtualGatewayListenerTlsValidationContextTrust] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsValidationContext AWS API Documentation # class VirtualGatewayListenerTlsValidationContext < Struct.new( :subject_alternative_names, :trust) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual gateway's listener's Transport # Layer Security (TLS) validation context trust. # # @note VirtualGatewayListenerTlsValidationContextTrust is a union - when making an API calls you must set exactly one of the members. # # @note VirtualGatewayListenerTlsValidationContextTrust is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VirtualGatewayListenerTlsValidationContextTrust corresponding to the set member. # # @!attribute [rw] file # An object that represents a Transport Layer Security (TLS) # validation context trust for a local file. # @return [Types::VirtualGatewayTlsValidationContextFileTrust] # # @!attribute [rw] sds # A reference to an object that represents a virtual gateway's # listener's Transport Layer Security (TLS) Secret Discovery Service # validation context trust. # @return [Types::VirtualGatewayTlsValidationContextSdsTrust] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayListenerTlsValidationContextTrust AWS API Documentation # class VirtualGatewayListenerTlsValidationContextTrust < Struct.new( :file, :sds, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class File < VirtualGatewayListenerTlsValidationContextTrust; end class Sds < VirtualGatewayListenerTlsValidationContextTrust; end class Unknown < VirtualGatewayListenerTlsValidationContextTrust; end end # An object that represents logging information. # # @!attribute [rw] access_log # The access log configuration. # @return [Types::VirtualGatewayAccessLog] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayLogging AWS API Documentation # class VirtualGatewayLogging < Struct.new( :access_log) SENSITIVE = [] include Aws::Structure end # An object that represents a port mapping. # # @!attribute [rw] port # The port used for the port mapping. Specify one protocol. # @return [Integer] # # @!attribute [rw] protocol # The protocol used for the port mapping. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayPortMapping AWS API Documentation # class VirtualGatewayPortMapping < Struct.new( :port, :protocol) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual gateway returned by a list # operation. # # @!attribute [rw] arn # The full Amazon Resource Name (ARN) for the resource. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp in seconds for when the resource was # created. # @return [Time] # # @!attribute [rw] last_updated_at # The Unix epoch timestamp in seconds for when the resource was last # updated. # @return [Time] # # @!attribute [rw] mesh_name # The name of the service mesh that the resource resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] resource_owner # The Amazon Web Services IAM account ID of the resource owner. If the # account ID is not your own, then it's the ID of the mesh owner or # of another account that the mesh is shared with. For more # information about mesh sharing, see [Working with shared meshes][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] version # The version of the resource. Resources are created at version 1, and # this version is incremented each time that they're updated. # @return [Integer] # # @!attribute [rw] virtual_gateway_name # The name of the resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayRef AWS API Documentation # class VirtualGatewayRef < Struct.new( :arn, :created_at, :last_updated_at, :mesh_name, :mesh_owner, :resource_owner, :version, :virtual_gateway_name) SENSITIVE = [] include Aws::Structure end # An object that represents the specification of a service mesh # resource. # # @!attribute [rw] backend_defaults # A reference to an object that represents the defaults for backends. # @return [Types::VirtualGatewayBackendDefaults] # # @!attribute [rw] listeners # The listeners that the mesh endpoint is expected to receive inbound # traffic from. You can specify one listener. # @return [Array] # # @!attribute [rw] logging # An object that represents logging information. # @return [Types::VirtualGatewayLogging] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewaySpec AWS API Documentation # class VirtualGatewaySpec < Struct.new( :backend_defaults, :listeners, :logging) SENSITIVE = [] include Aws::Structure end # An object that represents the status of the mesh resource. # # @!attribute [rw] status # The current status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayStatus AWS API Documentation # class VirtualGatewayStatus < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # An object that represents a Transport Layer Security (TLS) validation # context. # # @!attribute [rw] subject_alternative_names # A reference to an object that represents the SANs for a virtual # gateway's listener's Transport Layer Security (TLS) validation # context. # @return [Types::SubjectAlternativeNames] # # @!attribute [rw] trust # A reference to where to retrieve the trust chain when validating a # peer’s Transport Layer Security (TLS) certificate. # @return [Types::VirtualGatewayTlsValidationContextTrust] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContext AWS API Documentation # class VirtualGatewayTlsValidationContext < Struct.new( :subject_alternative_names, :trust) SENSITIVE = [] include Aws::Structure end # An object that represents a Transport Layer Security (TLS) validation # context trust for an Certificate Manager certificate. # # @!attribute [rw] certificate_authority_arns # One or more ACM Amazon Resource Name (ARN)s. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContextAcmTrust AWS API Documentation # class VirtualGatewayTlsValidationContextAcmTrust < Struct.new( :certificate_authority_arns) SENSITIVE = [] include Aws::Structure end # An object that represents a Transport Layer Security (TLS) validation # context trust for a local file. # # @!attribute [rw] certificate_chain # The certificate trust chain for a certificate stored on the file # system of the virtual node that the proxy is running on. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContextFileTrust AWS API Documentation # class VirtualGatewayTlsValidationContextFileTrust < Struct.new( :certificate_chain) SENSITIVE = [] include Aws::Structure end # 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][1] for more info. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html # # @!attribute [rw] secret_name # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContextSdsTrust AWS API Documentation # class VirtualGatewayTlsValidationContextSdsTrust < Struct.new( :secret_name) SENSITIVE = [] include Aws::Structure end # An object that represents a Transport Layer Security (TLS) validation # context trust. # # @note VirtualGatewayTlsValidationContextTrust is a union - when making an API calls you must set exactly one of the members. # # @note VirtualGatewayTlsValidationContextTrust is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VirtualGatewayTlsValidationContextTrust corresponding to the set member. # # @!attribute [rw] acm # A reference to an object that represents a Transport Layer Security # (TLS) validation context trust for an Certificate Manager # certificate. # @return [Types::VirtualGatewayTlsValidationContextAcmTrust] # # @!attribute [rw] file # An object that represents a Transport Layer Security (TLS) # validation context trust for a local file. # @return [Types::VirtualGatewayTlsValidationContextFileTrust] # # @!attribute [rw] sds # A reference to an object that represents a virtual gateway's # Transport Layer Security (TLS) Secret Discovery Service validation # context trust. # @return [Types::VirtualGatewayTlsValidationContextSdsTrust] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualGatewayTlsValidationContextTrust AWS API Documentation # class VirtualGatewayTlsValidationContextTrust < Struct.new( :acm, :file, :sds, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Acm < VirtualGatewayTlsValidationContextTrust; end class File < VirtualGatewayTlsValidationContextTrust; end class Sds < VirtualGatewayTlsValidationContextTrust; end class Unknown < VirtualGatewayTlsValidationContextTrust; end end # 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`. # # @note VirtualNodeConnectionPool is a union - when making an API calls you must set exactly one of the members. # # @note VirtualNodeConnectionPool is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VirtualNodeConnectionPool corresponding to the set member. # # @!attribute [rw] grpc # An object that represents a type of connection pool. # @return [Types::VirtualNodeGrpcConnectionPool] # # @!attribute [rw] http # An object that represents a type of connection pool. # @return [Types::VirtualNodeHttpConnectionPool] # # @!attribute [rw] http2 # An object that represents a type of connection pool. # @return [Types::VirtualNodeHttp2ConnectionPool] # # @!attribute [rw] tcp # An object that represents a type of connection pool. # @return [Types::VirtualNodeTcpConnectionPool] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeConnectionPool AWS API Documentation # class VirtualNodeConnectionPool < Struct.new( :grpc, :http, :http2, :tcp, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class Grpc < VirtualNodeConnectionPool; end class Http < VirtualNodeConnectionPool; end class Http2 < VirtualNodeConnectionPool; end class Tcp < VirtualNodeConnectionPool; end class Unknown < VirtualNodeConnectionPool; end end # An object that represents a virtual node returned by a describe # operation. # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual node resides in. # @return [String] # # @!attribute [rw] metadata # The associated metadata for the virtual node. # @return [Types::ResourceMetadata] # # @!attribute [rw] spec # The specifications of the virtual node. # @return [Types::VirtualNodeSpec] # # @!attribute [rw] status # The current status for the virtual node. # @return [Types::VirtualNodeStatus] # # @!attribute [rw] virtual_node_name # The name of the virtual node. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeData AWS API Documentation # class VirtualNodeData < Struct.new( :mesh_name, :metadata, :spec, :status, :virtual_node_name) SENSITIVE = [] include Aws::Structure end # An object that represents a type of connection pool. # # @!attribute [rw] max_requests # Maximum number of inflight requests Envoy can concurrently support # across hosts in upstream cluster. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeGrpcConnectionPool AWS API Documentation # class VirtualNodeGrpcConnectionPool < Struct.new( :max_requests) SENSITIVE = [] include Aws::Structure end # An object that represents a type of connection pool. # # @!attribute [rw] max_requests # Maximum number of inflight requests Envoy can concurrently support # across hosts in upstream cluster. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeHttp2ConnectionPool AWS API Documentation # class VirtualNodeHttp2ConnectionPool < Struct.new( :max_requests) SENSITIVE = [] include Aws::Structure end # An object that represents a type of connection pool. # # @!attribute [rw] max_connections # Maximum number of outbound TCP connections Envoy can establish # concurrently with all hosts in upstream cluster. # @return [Integer] # # @!attribute [rw] max_pending_requests # Number of overflowing requests after `max_connections` Envoy will # queue to upstream cluster. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeHttpConnectionPool AWS API Documentation # class VirtualNodeHttpConnectionPool < Struct.new( :max_connections, :max_pending_requests) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual node returned by a list operation. # # @!attribute [rw] arn # The full Amazon Resource Name (ARN) for the virtual node. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp in seconds for when the resource was # created. # @return [Time] # # @!attribute [rw] last_updated_at # The Unix epoch timestamp in seconds for when the resource was last # updated. # @return [Time] # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual node resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] resource_owner # The Amazon Web Services IAM account ID of the resource owner. If the # account ID is not your own, then it's the ID of the mesh owner or # of another account that the mesh is shared with. For more # information about mesh sharing, see [Working with shared meshes][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] version # The version of the resource. Resources are created at version 1, and # this version is incremented each time that they're updated. # @return [Integer] # # @!attribute [rw] virtual_node_name # The name of the virtual node. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeRef AWS API Documentation # class VirtualNodeRef < Struct.new( :arn, :created_at, :last_updated_at, :mesh_name, :mesh_owner, :resource_owner, :version, :virtual_node_name) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual node service provider. # # @!attribute [rw] virtual_node_name # The name of the virtual node that is acting as a service provider. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeServiceProvider AWS API Documentation # class VirtualNodeServiceProvider < Struct.new( :virtual_node_name) SENSITIVE = [] include Aws::Structure end # An object that represents the specification of a virtual node. # # @!attribute [rw] backend_defaults # A reference to an object that represents the defaults for backends. # @return [Types::BackendDefaults] # # @!attribute [rw] backends # The backends that the virtual node is expected to send outbound # traffic to. # @return [Array] # # @!attribute [rw] listeners # The listener that the virtual node is expected to receive inbound # traffic from. You can specify one listener. # @return [Array] # # @!attribute [rw] logging # The inbound and outbound access logging information for the virtual # node. # @return [Types::Logging] # # @!attribute [rw] service_discovery # 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. # @return [Types::ServiceDiscovery] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeSpec AWS API Documentation # class VirtualNodeSpec < Struct.new( :backend_defaults, :backends, :listeners, :logging, :service_discovery) SENSITIVE = [] include Aws::Structure end # An object that represents the current status of the virtual node. # # @!attribute [rw] status # The current status of the virtual node. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeStatus AWS API Documentation # class VirtualNodeStatus < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # An object that represents a type of connection pool. # # @!attribute [rw] max_connections # Maximum number of outbound TCP connections Envoy can establish # concurrently with all hosts in upstream cluster. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeTcpConnectionPool AWS API Documentation # class VirtualNodeTcpConnectionPool < Struct.new( :max_connections) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual router returned by a describe # operation. # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual router resides in. # @return [String] # # @!attribute [rw] metadata # The associated metadata for the virtual router. # @return [Types::ResourceMetadata] # # @!attribute [rw] spec # The specifications of the virtual router. # @return [Types::VirtualRouterSpec] # # @!attribute [rw] status # The current status of the virtual router. # @return [Types::VirtualRouterStatus] # # @!attribute [rw] virtual_router_name # The name of the virtual router. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterData AWS API Documentation # class VirtualRouterData < Struct.new( :mesh_name, :metadata, :spec, :status, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual router listener. # # @!attribute [rw] port_mapping # An object that represents a port mapping. # @return [Types::PortMapping] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterListener AWS API Documentation # class VirtualRouterListener < Struct.new( :port_mapping) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual router returned by a list # operation. # # @!attribute [rw] arn # The full Amazon Resource Name (ARN) for the virtual router. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp in seconds for when the resource was # created. # @return [Time] # # @!attribute [rw] last_updated_at # The Unix epoch timestamp in seconds for when the resource was last # updated. # @return [Time] # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual router resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] resource_owner # The Amazon Web Services IAM account ID of the resource owner. If the # account ID is not your own, then it's the ID of the mesh owner or # of another account that the mesh is shared with. For more # information about mesh sharing, see [Working with shared meshes][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] version # The version of the resource. Resources are created at version 1, and # this version is incremented each time that they're updated. # @return [Integer] # # @!attribute [rw] virtual_router_name # The name of the virtual router. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterRef AWS API Documentation # class VirtualRouterRef < Struct.new( :arn, :created_at, :last_updated_at, :mesh_name, :mesh_owner, :resource_owner, :version, :virtual_router_name) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual node service provider. # # @!attribute [rw] virtual_router_name # The name of the virtual router that is acting as a service provider. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterServiceProvider AWS API Documentation # class VirtualRouterServiceProvider < Struct.new( :virtual_router_name) SENSITIVE = [] include Aws::Structure end # An object that represents the specification of a virtual router. # # @!attribute [rw] listeners # The listeners that the virtual router is expected to receive inbound # traffic from. You can specify one listener. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterSpec AWS API Documentation # class VirtualRouterSpec < Struct.new( :listeners) SENSITIVE = [] include Aws::Structure end # An object that represents the status of a virtual router. # # @!attribute [rw] status # The current status of the virtual router. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterStatus AWS API Documentation # class VirtualRouterStatus < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual service backend for a virtual # node. # # @!attribute [rw] client_policy # A reference to an object that represents the client policy for a # backend. # @return [Types::ClientPolicy] # # @!attribute [rw] virtual_service_name # The name of the virtual service that is acting as a virtual node # backend. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceBackend AWS API Documentation # class VirtualServiceBackend < Struct.new( :client_policy, :virtual_service_name) SENSITIVE = [] include Aws::Structure end # An object that represents a virtual service returned by a describe # operation. # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual service resides in. # @return [String] # # @!attribute [rw] metadata # An object that represents metadata for a resource. # @return [Types::ResourceMetadata] # # @!attribute [rw] spec # The specifications of the virtual service. # @return [Types::VirtualServiceSpec] # # @!attribute [rw] status # The current status of the virtual service. # @return [Types::VirtualServiceStatus] # # @!attribute [rw] virtual_service_name # The name of the virtual service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceData AWS API Documentation # class VirtualServiceData < Struct.new( :mesh_name, :metadata, :spec, :status, :virtual_service_name) SENSITIVE = [] include Aws::Structure end # An object that represents the provider for a virtual service. # # @note VirtualServiceProvider is a union - when making an API calls you must set exactly one of the members. # # @note VirtualServiceProvider is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of VirtualServiceProvider corresponding to the set member. # # @!attribute [rw] virtual_node # The virtual node associated with a virtual service. # @return [Types::VirtualNodeServiceProvider] # # @!attribute [rw] virtual_router # The virtual router associated with a virtual service. # @return [Types::VirtualRouterServiceProvider] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceProvider AWS API Documentation # class VirtualServiceProvider < Struct.new( :virtual_node, :virtual_router, :unknown) SENSITIVE = [] include Aws::Structure include Aws::Structure::Union class VirtualNode < VirtualServiceProvider; end class VirtualRouter < VirtualServiceProvider; end class Unknown < VirtualServiceProvider; end end # An object that represents a virtual service returned by a list # operation. # # @!attribute [rw] arn # The full Amazon Resource Name (ARN) for the virtual service. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp in seconds for when the resource was # created. # @return [Time] # # @!attribute [rw] last_updated_at # The Unix epoch timestamp in seconds for when the resource was last # updated. # @return [Time] # # @!attribute [rw] mesh_name # The name of the service mesh that the virtual service resides in. # @return [String] # # @!attribute [rw] mesh_owner # The Amazon Web Services 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][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] resource_owner # The Amazon Web Services IAM account ID of the resource owner. If the # account ID is not your own, then it's the ID of the mesh owner or # of another account that the mesh is shared with. For more # information about mesh sharing, see [Working with shared meshes][1]. # # # # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html # @return [String] # # @!attribute [rw] version # The version of the resource. Resources are created at version 1, and # this version is incremented each time that they're updated. # @return [Integer] # # @!attribute [rw] virtual_service_name # The name of the virtual service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceRef AWS API Documentation # class VirtualServiceRef < Struct.new( :arn, :created_at, :last_updated_at, :mesh_name, :mesh_owner, :resource_owner, :version, :virtual_service_name) SENSITIVE = [] include Aws::Structure end # An object that represents the specification of a virtual service. # # @!attribute [rw] provider # The App Mesh object that is acting as the provider for a virtual # service. You can specify a single virtual node or virtual router. # @return [Types::VirtualServiceProvider] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceSpec AWS API Documentation # class VirtualServiceSpec < Struct.new( :provider) SENSITIVE = [] include Aws::Structure end # An object that represents the status of a virtual service. # # @!attribute [rw] status # The current status of the virtual service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceStatus AWS API Documentation # class VirtualServiceStatus < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] port # The targeted port of the weighted object. # @return [Integer] # # @!attribute [rw] virtual_node # The virtual node to associate with the weighted target. # @return [String] # # @!attribute [rw] weight # The relative weight of the weighted target. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/WeightedTarget AWS API Documentation # class WeightedTarget < Struct.new( :port, :virtual_node, :weight) SENSITIVE = [] include Aws::Structure end end end