Module AppMesh.VirtualNode

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

type listener_tls_acm_certificate = {
  1. certificate_arn : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsacmcertificate.html

and port_mapping = {
  1. port : int;
  2. protocol : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html

and virtual_node_tcp_connection_pool = {
  1. max_connections : int;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodetcpconnectionpool.html

and tag = {
  1. key : string;
  2. value : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html

and listener_tls_file_certificate = {
  1. private_key : string;
  2. certificate_chain : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsfilecertificate.html

and listener_tls_sds_certificate = {
  1. secret_name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlssdscertificate.html

and tls_validation_context_file_trust = {
  1. certificate_chain : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextfiletrust.html

and aws_cloud_map_instance_attribute = {
  1. value : string;
  2. key : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html

and json_format_ref = {
  1. value : string;
  2. key : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-jsonformatref.html

and virtual_node_http_connection_pool = {
  1. max_connections : int;
  2. max_pending_requests : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttpconnectionpool.html

and dns_service_discovery = {
  1. ip_preference : string option;
  2. hostname : string;
  3. response_type : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html

and tls_validation_context_acm_trust = {
  1. certificate_authority_arns : string list;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextacmtrust.html

and tls_validation_context_sds_trust = {
  1. secret_name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextsdstrust.html

and duration = {
  1. value : int;
  2. unit : string;
}

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

and health_check = {
  1. path : string option;
  2. unhealthy_threshold : int;
  3. port : int option;
  4. healthy_threshold : int;
  5. timeout_millis : int;
  6. protocol : string;
  7. interval_millis : int;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html

and virtual_node_grpc_connection_pool = {
  1. max_requests : int;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodegrpcconnectionpool.html

and virtual_node_http2_connection_pool = {
  1. max_requests : int;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttp2connectionpool.html

and subject_alternative_name_matchers = {
  1. exact : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenamematchers.html

and aws_cloud_map_service_discovery = {
  1. namespace_name : string;
  2. service_name : string;
  3. ip_preference : string option;
  4. attributes_ : aws_cloud_map_instance_attribute list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html

and http_timeout = {
  1. per_request : duration option;
  2. idle : duration option;
}

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

and outlier_detection = {
  1. max_ejection_percent : int;
  2. base_ejection_duration : duration;
  3. max_server_errors : int;
  4. interval : duration;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html

and logging_format = {
  1. text : string option;
  2. json : json_format_ref list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-loggingformat.html

and tls_validation_context_trust = {
  1. sds : tls_validation_context_sds_trust option;
  2. acm : tls_validation_context_acm_trust option;
  3. file : tls_validation_context_file_trust option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontexttrust.html

and listener_tls_validation_context_trust = {
  1. sds : tls_validation_context_sds_trust option;
  2. file : tls_validation_context_file_trust option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontexttrust.html

and tcp_timeout = {
  1. idle : duration option;
}

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

and virtual_node_connection_pool = {
  1. tcp : virtual_node_tcp_connection_pool option;
  2. htt_p2 : virtual_node_http2_connection_pool option;
  3. http : virtual_node_http_connection_pool option;
  4. grpc : virtual_node_grpc_connection_pool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html

and grpc_timeout = {
  1. per_request : duration option;
  2. idle : duration option;
}

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

and listener_tls_certificate = {
  1. sds : listener_tls_sds_certificate option;
  2. acm : listener_tls_acm_certificate option;
  3. file : listener_tls_file_certificate option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html

and subject_alternative_names = {
  1. match_ : subject_alternative_name_matchers;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenames.html

and client_tls_certificate = {
  1. sds : listener_tls_sds_certificate option;
  2. file : listener_tls_file_certificate option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clienttlscertificate.html

and listener_tls_validation_context = {
  1. subject_alternative_names : subject_alternative_names option;
  2. trust : listener_tls_validation_context_trust;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontext.html

and listener_timeout = {
  1. tcp : tcp_timeout option;
  2. htt_p2 : http_timeout option;
  3. http : http_timeout option;
  4. grpc : grpc_timeout option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html

and service_discovery = {
  1. dns : dns_service_discovery option;
  2. aws_cloud_map : aws_cloud_map_service_discovery option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-servicediscovery.html

and tls_validation_context = {
  1. subject_alternative_names : subject_alternative_names option;
  2. trust : tls_validation_context_trust;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontext.html

and file_access_log = {
  1. path : string;
  2. format : logging_format option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html

and access_log = {
  1. file : file_access_log option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html

and listener_tls = {
  1. validation : listener_tls_validation_context option;
  2. mode : string;
  3. certificate : listener_tls_certificate;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html

and client_policy_tls = {
  1. validation : tls_validation_context;
  2. enforce : bool option;
  3. ports : int list option;
  4. certificate : client_tls_certificate option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html

and logging = {
  1. access_log : access_log option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html

and listener = {
  1. connection_pool : virtual_node_connection_pool option;
  2. timeout : listener_timeout option;
  3. health_check : health_check option;
  4. tls : listener_tls option;
  5. port_mapping : port_mapping;
  6. outlier_detection : outlier_detection option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html

and client_policy = {
  1. tls : client_policy_tls option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicy.html

and backend_defaults = {
  1. client_policy : client_policy option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backenddefaults.html

and virtual_service_backend = {
  1. client_policy : client_policy option;
  2. virtual_service_name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html

and backend = {
  1. virtual_service : virtual_service_backend option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html

and virtual_node_spec = {
  1. logging : logging option;
  2. backends : backend list option;
  3. listeners : listener list option;
  4. backend_defaults : backend_defaults option;
  5. service_discovery : service_discovery option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html

type properties = {
  1. mesh_name : string;
  2. mesh_owner : string option;
  3. spec : virtual_node_spec;
  4. virtual_node_name : string option;
  5. tags : tag list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html;

val make_properties : mesh_name:string -> ?mesh_owner:string -> spec:virtual_node_spec -> ?virtual_node_name:string -> ?tags:tag list -> unit -> properties
val make_listener_tls_acm_certificate : certificate_arn:string -> unit -> listener_tls_acm_certificate
val make_port_mapping : port:int -> protocol:string -> unit -> port_mapping
val make_virtual_node_tcp_connection_pool : max_connections:int -> unit -> virtual_node_tcp_connection_pool
val make_tag : key:string -> value:string -> unit -> tag
val make_listener_tls_file_certificate : private_key:string -> certificate_chain:string -> unit -> listener_tls_file_certificate
val make_listener_tls_sds_certificate : secret_name:string -> unit -> listener_tls_sds_certificate
val make_tls_validation_context_file_trust : certificate_chain:string -> unit -> tls_validation_context_file_trust
val make_aws_cloud_map_instance_attribute : value:string -> key:string -> unit -> aws_cloud_map_instance_attribute
val make_json_format_ref : value:string -> key:string -> unit -> json_format_ref
val make_virtual_node_http_connection_pool : max_connections:int -> ?max_pending_requests:int -> unit -> virtual_node_http_connection_pool
val make_dns_service_discovery : ?ip_preference:string -> hostname:string -> ?response_type:string -> unit -> dns_service_discovery
val make_tls_validation_context_acm_trust : certificate_authority_arns:string list -> unit -> tls_validation_context_acm_trust
val make_tls_validation_context_sds_trust : secret_name:string -> unit -> tls_validation_context_sds_trust
val make_duration : value:int -> unit:string -> unit -> duration
val make_health_check : ?path:string -> unhealthy_threshold:int -> ?port:int -> healthy_threshold:int -> timeout_millis:int -> protocol:string -> interval_millis:int -> unit -> health_check
val make_virtual_node_grpc_connection_pool : max_requests:int -> unit -> virtual_node_grpc_connection_pool
val make_virtual_node_http2_connection_pool : max_requests:int -> unit -> virtual_node_http2_connection_pool
val make_subject_alternative_name_matchers : ?exact:string list -> unit -> subject_alternative_name_matchers
val make_aws_cloud_map_service_discovery : namespace_name:string -> service_name:string -> ?ip_preference:string -> ?attributes_:aws_cloud_map_instance_attribute list -> unit -> aws_cloud_map_service_discovery
val make_http_timeout : ?per_request:duration -> ?idle:duration -> unit -> http_timeout
val make_outlier_detection : max_ejection_percent:int -> base_ejection_duration:duration -> max_server_errors:int -> interval:duration -> unit -> outlier_detection
val make_logging_format : ?text:string -> ?json:json_format_ref list -> unit -> logging_format
val make_listener_tls_validation_context_trust : ?sds:tls_validation_context_sds_trust -> ?file:tls_validation_context_file_trust -> unit -> listener_tls_validation_context_trust
val make_tcp_timeout : ?idle:duration -> unit -> tcp_timeout
val make_grpc_timeout : ?per_request:duration -> ?idle:duration -> unit -> grpc_timeout
val make_subject_alternative_names : match_:subject_alternative_name_matchers -> unit -> subject_alternative_names
val make_client_tls_certificate : ?sds:listener_tls_sds_certificate -> ?file:listener_tls_file_certificate -> unit -> client_tls_certificate
val make_listener_tls_validation_context : ?subject_alternative_names:subject_alternative_names -> trust:listener_tls_validation_context_trust -> unit -> listener_tls_validation_context
val make_listener_timeout : ?tcp:tcp_timeout -> ?htt_p2:http_timeout -> ?http:http_timeout -> ?grpc:grpc_timeout -> unit -> listener_timeout
val make_service_discovery : ?dns:dns_service_discovery -> ?aws_cloud_map:aws_cloud_map_service_discovery -> unit -> service_discovery
val make_tls_validation_context : ?subject_alternative_names:subject_alternative_names -> trust:tls_validation_context_trust -> unit -> tls_validation_context
val make_file_access_log : path:string -> ?format:logging_format -> unit -> file_access_log
val make_access_log : ?file:file_access_log -> unit -> access_log
val make_listener_tls : ?validation:listener_tls_validation_context -> mode:string -> certificate:listener_tls_certificate -> unit -> listener_tls
val make_client_policy_tls : validation:tls_validation_context -> ?enforce:bool -> ?ports:int list -> ?certificate:client_tls_certificate -> unit -> client_policy_tls
val make_logging : ?access_log:access_log -> unit -> logging
val make_listener : ?connection_pool:virtual_node_connection_pool -> ?timeout:listener_timeout -> ?health_check:health_check -> ?tls:listener_tls -> port_mapping:port_mapping -> ?outlier_detection:outlier_detection -> unit -> listener
val make_client_policy : ?tls:client_policy_tls -> unit -> client_policy
val make_backend_defaults : ?client_policy:client_policy -> unit -> backend_defaults
val make_virtual_service_backend : ?client_policy:client_policy -> virtual_service_name:string -> unit -> virtual_service_backend
val make_backend : ?virtual_service:virtual_service_backend -> unit -> backend
val make_virtual_node_spec : ?logging:logging -> ?backends:backend list -> ?listeners:listener list -> ?backend_defaults:backend_defaults -> ?service_discovery:service_discovery -> unit -> virtual_node_spec
val yojson_of_listener_tls_acm_certificate : listener_tls_acm_certificate -> Yojson.Safe.t
val yojson_of_port_mapping : port_mapping -> Yojson.Safe.t
val yojson_of_virtual_node_tcp_connection_pool : virtual_node_tcp_connection_pool -> Yojson.Safe.t
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_listener_tls_file_certificate : listener_tls_file_certificate -> Yojson.Safe.t
val yojson_of_listener_tls_sds_certificate : listener_tls_sds_certificate -> Yojson.Safe.t
val yojson_of_tls_validation_context_file_trust : tls_validation_context_file_trust -> Yojson.Safe.t
val yojson_of_aws_cloud_map_instance_attribute : aws_cloud_map_instance_attribute -> Yojson.Safe.t
val yojson_of_json_format_ref : json_format_ref -> Yojson.Safe.t
val yojson_of_virtual_node_http_connection_pool : virtual_node_http_connection_pool -> Yojson.Safe.t
val yojson_of_dns_service_discovery : dns_service_discovery -> Yojson.Safe.t
val yojson_of_tls_validation_context_acm_trust : tls_validation_context_acm_trust -> Yojson.Safe.t
val yojson_of_tls_validation_context_sds_trust : tls_validation_context_sds_trust -> Yojson.Safe.t
val yojson_of_duration : duration -> Yojson.Safe.t
val yojson_of_health_check : health_check -> Yojson.Safe.t
val yojson_of_virtual_node_grpc_connection_pool : virtual_node_grpc_connection_pool -> Yojson.Safe.t
val yojson_of_virtual_node_http2_connection_pool : virtual_node_http2_connection_pool -> Yojson.Safe.t
val yojson_of_subject_alternative_name_matchers : subject_alternative_name_matchers -> Yojson.Safe.t
val yojson_of_aws_cloud_map_service_discovery : aws_cloud_map_service_discovery -> Yojson.Safe.t
val yojson_of_http_timeout : http_timeout -> Yojson.Safe.t
val yojson_of_outlier_detection : outlier_detection -> Yojson.Safe.t
val yojson_of_logging_format : logging_format -> Yojson.Safe.t
val yojson_of_tls_validation_context_trust : tls_validation_context_trust -> Yojson.Safe.t
val yojson_of_listener_tls_validation_context_trust : listener_tls_validation_context_trust -> Yojson.Safe.t
val yojson_of_tcp_timeout : tcp_timeout -> Yojson.Safe.t
val yojson_of_virtual_node_connection_pool : virtual_node_connection_pool -> Yojson.Safe.t
val yojson_of_grpc_timeout : grpc_timeout -> Yojson.Safe.t
val yojson_of_listener_tls_certificate : listener_tls_certificate -> Yojson.Safe.t
val yojson_of_subject_alternative_names : subject_alternative_names -> Yojson.Safe.t
val yojson_of_client_tls_certificate : client_tls_certificate -> Yojson.Safe.t
val yojson_of_listener_tls_validation_context : listener_tls_validation_context -> Yojson.Safe.t
val yojson_of_listener_timeout : listener_timeout -> Yojson.Safe.t
val yojson_of_service_discovery : service_discovery -> Yojson.Safe.t
val yojson_of_tls_validation_context : tls_validation_context -> Yojson.Safe.t
val yojson_of_file_access_log : file_access_log -> Yojson.Safe.t
val yojson_of_access_log : access_log -> Yojson.Safe.t
val yojson_of_listener_tls : listener_tls -> Yojson.Safe.t
val yojson_of_client_policy_tls : client_policy_tls -> Yojson.Safe.t
val yojson_of_logging : logging -> Yojson.Safe.t
val yojson_of_listener : listener -> Yojson.Safe.t
val yojson_of_client_policy : client_policy -> Yojson.Safe.t
val yojson_of_backend_defaults : backend_defaults -> Yojson.Safe.t
val yojson_of_virtual_service_backend : virtual_service_backend -> Yojson.Safe.t
val yojson_of_backend : backend -> Yojson.Safe.t
val yojson_of_virtual_node_spec : virtual_node_spec -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties : properties -> [> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
  1. ref_ : string;
  2. uid : string;
  3. mesh_name : string;
  4. mesh_owner : string;
  5. resource_owner : string;
  6. arn : string;
  7. virtual_node_name : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string