AppMesh.VirtualNodesee http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsacmcertificate.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-portmapping.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodetcpconnectionpool.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsfilecertificate.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlssdscertificate.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextfiletrust.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapinstanceattribute.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-jsonformatref.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttpconnectionpool.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-dnsservicediscovery.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextacmtrust.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontextsdstrust.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html
and health_check = {path : string option;unhealthy_threshold : int;port : int option;healthy_threshold : int;timeout_millis : int;protocol : string;interval_millis : int;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-healthcheck.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodegrpcconnectionpool.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodehttp2connectionpool.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenamematchers.html
and aws_cloud_map_service_discovery = {namespace_name : string;service_name : string;ip_preference : string option;attributes_ : aws_cloud_map_instance_attribute list option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-awscloudmapservicediscovery.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html
and outlier_detection = {max_ejection_percent : int;base_ejection_duration : duration;max_server_errors : int;interval : duration;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-outlierdetection.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-loggingformat.html
and tls_validation_context_trust = {sds : tls_validation_context_sds_trust option;acm : tls_validation_context_acm_trust option;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 = {sds : tls_validation_context_sds_trust option;file : tls_validation_context_file_trust option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontexttrust.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tcptimeout.html
and virtual_node_connection_pool = {tcp : virtual_node_tcp_connection_pool option;htt_p2 : virtual_node_http2_connection_pool option;http : virtual_node_http_connection_pool option;grpc : virtual_node_grpc_connection_pool option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodeconnectionpool.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html
and listener_tls_certificate = {sds : listener_tls_sds_certificate option;acm : listener_tls_acm_certificate option;file : listener_tls_file_certificate option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlscertificate.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-subjectalternativenames.html
and client_tls_certificate = {sds : listener_tls_sds_certificate option;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 = {subject_alternative_names : subject_alternative_names option;trust : listener_tls_validation_context_trust;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertlsvalidationcontext.html
and listener_timeout = {tcp : tcp_timeout option;htt_p2 : http_timeout option;http : http_timeout option;grpc : grpc_timeout option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html
and service_discovery = {dns : dns_service_discovery option;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 = {subject_alternative_names : subject_alternative_names option;trust : tls_validation_context_trust;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tlsvalidationcontext.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-fileaccesslog.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-accesslog.html
and listener_tls = {validation : listener_tls_validation_context option;mode : string;certificate : listener_tls_certificate;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertls.html
and client_policy_tls = {validation : tls_validation_context;enforce : bool option;ports : int list option;certificate : client_tls_certificate option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicytls.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-logging.html
and listener = {connection_pool : virtual_node_connection_pool option;timeout : listener_timeout option;health_check : health_check option;tls : listener_tls option;port_mapping : port_mapping;outlier_detection : outlier_detection option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-clientpolicy.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backenddefaults.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualservicebackend.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-backend.html
and virtual_node_spec = {logging : logging option;backends : backend list option;listeners : listener list option;backend_defaults : backend_defaults option;service_discovery : service_discovery option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-virtualnodespec.html
type properties = {mesh_name : string;mesh_owner : string option;spec : virtual_node_spec;virtual_node_name : string 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 ->
propertiesval make_listener_tls_acm_certificate :
certificate_arn:string ->
unit ->
listener_tls_acm_certificateval make_port_mapping : port:int -> protocol:string -> unit -> port_mappingval make_virtual_node_tcp_connection_pool :
max_connections:int ->
unit ->
virtual_node_tcp_connection_poolval make_tag : key:string -> value:string -> unit -> tagval make_listener_tls_file_certificate :
private_key:string ->
certificate_chain:string ->
unit ->
listener_tls_file_certificateval make_listener_tls_sds_certificate :
secret_name:string ->
unit ->
listener_tls_sds_certificateval make_tls_validation_context_file_trust :
certificate_chain:string ->
unit ->
tls_validation_context_file_trustval make_aws_cloud_map_instance_attribute :
value:string ->
key:string ->
unit ->
aws_cloud_map_instance_attributeval make_json_format_ref :
value:string ->
key:string ->
unit ->
json_format_refval make_virtual_node_http_connection_pool :
max_connections:int ->
?max_pending_requests:int ->
unit ->
virtual_node_http_connection_poolval make_dns_service_discovery :
?ip_preference:string ->
hostname:string ->
?response_type:string ->
unit ->
dns_service_discoveryval make_tls_validation_context_acm_trust :
certificate_authority_arns:string list ->
unit ->
tls_validation_context_acm_trustval make_tls_validation_context_sds_trust :
secret_name:string ->
unit ->
tls_validation_context_sds_trustval make_duration : value:int -> unit:string -> unit -> durationval make_health_check :
?path:string ->
unhealthy_threshold:int ->
?port:int ->
healthy_threshold:int ->
timeout_millis:int ->
protocol:string ->
interval_millis:int ->
unit ->
health_checkval make_virtual_node_grpc_connection_pool :
max_requests:int ->
unit ->
virtual_node_grpc_connection_poolval make_virtual_node_http2_connection_pool :
max_requests:int ->
unit ->
virtual_node_http2_connection_poolval make_subject_alternative_name_matchers :
?exact:string list ->
unit ->
subject_alternative_name_matchersval 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_discoveryval make_http_timeout :
?per_request:duration ->
?idle:duration ->
unit ->
http_timeoutval make_outlier_detection :
max_ejection_percent:int ->
base_ejection_duration:duration ->
max_server_errors:int ->
interval:duration ->
unit ->
outlier_detectionval make_logging_format :
?text:string ->
?json:json_format_ref list ->
unit ->
logging_formatval make_tls_validation_context_trust :
?sds:tls_validation_context_sds_trust ->
?acm:tls_validation_context_acm_trust ->
?file:tls_validation_context_file_trust ->
unit ->
tls_validation_context_trustval make_listener_tls_validation_context_trust :
?sds:tls_validation_context_sds_trust ->
?file:tls_validation_context_file_trust ->
unit ->
listener_tls_validation_context_trustval make_tcp_timeout : ?idle:duration -> unit -> tcp_timeoutval make_virtual_node_connection_pool :
?tcp:virtual_node_tcp_connection_pool ->
?htt_p2:virtual_node_http2_connection_pool ->
?http:virtual_node_http_connection_pool ->
?grpc:virtual_node_grpc_connection_pool ->
unit ->
virtual_node_connection_poolval make_grpc_timeout :
?per_request:duration ->
?idle:duration ->
unit ->
grpc_timeoutval make_listener_tls_certificate :
?sds:listener_tls_sds_certificate ->
?acm:listener_tls_acm_certificate ->
?file:listener_tls_file_certificate ->
unit ->
listener_tls_certificateval make_subject_alternative_names :
match_:subject_alternative_name_matchers ->
unit ->
subject_alternative_namesval make_client_tls_certificate :
?sds:listener_tls_sds_certificate ->
?file:listener_tls_file_certificate ->
unit ->
client_tls_certificateval make_listener_tls_validation_context :
?subject_alternative_names:subject_alternative_names ->
trust:listener_tls_validation_context_trust ->
unit ->
listener_tls_validation_contextval make_listener_timeout :
?tcp:tcp_timeout ->
?htt_p2:http_timeout ->
?http:http_timeout ->
?grpc:grpc_timeout ->
unit ->
listener_timeoutval make_service_discovery :
?dns:dns_service_discovery ->
?aws_cloud_map:aws_cloud_map_service_discovery ->
unit ->
service_discoveryval make_tls_validation_context :
?subject_alternative_names:subject_alternative_names ->
trust:tls_validation_context_trust ->
unit ->
tls_validation_contextval make_file_access_log :
path:string ->
?format:logging_format ->
unit ->
file_access_logval make_access_log : ?file:file_access_log -> unit -> access_logval make_listener_tls :
?validation:listener_tls_validation_context ->
mode:string ->
certificate:listener_tls_certificate ->
unit ->
listener_tlsval make_client_policy_tls :
validation:tls_validation_context ->
?enforce:bool ->
?ports:int list ->
?certificate:client_tls_certificate ->
unit ->
client_policy_tlsval make_logging : ?access_log:access_log -> unit -> loggingval 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 ->
listenerval make_client_policy : ?tls:client_policy_tls -> unit -> client_policyval make_backend_defaults :
?client_policy:client_policy ->
unit ->
backend_defaultsval make_virtual_service_backend :
?client_policy:client_policy ->
virtual_service_name:string ->
unit ->
virtual_service_backendval make_backend : ?virtual_service:virtual_service_backend -> unit -> backendval make_virtual_node_spec :
?logging:logging ->
?backends:backend list ->
?listeners:listener list ->
?backend_defaults:backend_defaults ->
?service_discovery:service_discovery ->
unit ->
virtual_node_specval yojson_of_listener_tls_acm_certificate :
listener_tls_acm_certificate ->
Yojson.Safe.tval yojson_of_port_mapping : port_mapping -> Yojson.Safe.tval yojson_of_virtual_node_tcp_connection_pool :
virtual_node_tcp_connection_pool ->
Yojson.Safe.tval yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_listener_tls_file_certificate :
listener_tls_file_certificate ->
Yojson.Safe.tval yojson_of_listener_tls_sds_certificate :
listener_tls_sds_certificate ->
Yojson.Safe.tval yojson_of_tls_validation_context_file_trust :
tls_validation_context_file_trust ->
Yojson.Safe.tval yojson_of_aws_cloud_map_instance_attribute :
aws_cloud_map_instance_attribute ->
Yojson.Safe.tval yojson_of_json_format_ref : json_format_ref -> Yojson.Safe.tval yojson_of_virtual_node_http_connection_pool :
virtual_node_http_connection_pool ->
Yojson.Safe.tval yojson_of_dns_service_discovery : dns_service_discovery -> Yojson.Safe.tval yojson_of_tls_validation_context_acm_trust :
tls_validation_context_acm_trust ->
Yojson.Safe.tval yojson_of_tls_validation_context_sds_trust :
tls_validation_context_sds_trust ->
Yojson.Safe.tval yojson_of_duration : duration -> Yojson.Safe.tval yojson_of_health_check : health_check -> Yojson.Safe.tval yojson_of_virtual_node_grpc_connection_pool :
virtual_node_grpc_connection_pool ->
Yojson.Safe.tval yojson_of_virtual_node_http2_connection_pool :
virtual_node_http2_connection_pool ->
Yojson.Safe.tval yojson_of_subject_alternative_name_matchers :
subject_alternative_name_matchers ->
Yojson.Safe.tval yojson_of_aws_cloud_map_service_discovery :
aws_cloud_map_service_discovery ->
Yojson.Safe.tval yojson_of_http_timeout : http_timeout -> Yojson.Safe.tval yojson_of_outlier_detection : outlier_detection -> Yojson.Safe.tval yojson_of_logging_format : logging_format -> Yojson.Safe.tval yojson_of_tls_validation_context_trust :
tls_validation_context_trust ->
Yojson.Safe.tval yojson_of_listener_tls_validation_context_trust :
listener_tls_validation_context_trust ->
Yojson.Safe.tval yojson_of_tcp_timeout : tcp_timeout -> Yojson.Safe.tval yojson_of_virtual_node_connection_pool :
virtual_node_connection_pool ->
Yojson.Safe.tval yojson_of_grpc_timeout : grpc_timeout -> Yojson.Safe.tval yojson_of_listener_tls_certificate :
listener_tls_certificate ->
Yojson.Safe.tval yojson_of_subject_alternative_names :
subject_alternative_names ->
Yojson.Safe.tval yojson_of_client_tls_certificate : client_tls_certificate -> Yojson.Safe.tval yojson_of_listener_tls_validation_context :
listener_tls_validation_context ->
Yojson.Safe.tval yojson_of_listener_timeout : listener_timeout -> Yojson.Safe.tval yojson_of_service_discovery : service_discovery -> Yojson.Safe.tval yojson_of_tls_validation_context : tls_validation_context -> Yojson.Safe.tval yojson_of_file_access_log : file_access_log -> Yojson.Safe.tval yojson_of_access_log : access_log -> Yojson.Safe.tval yojson_of_listener_tls : listener_tls -> Yojson.Safe.tval yojson_of_client_policy_tls : client_policy_tls -> Yojson.Safe.tval yojson_of_logging : logging -> Yojson.Safe.tval yojson_of_listener : listener -> Yojson.Safe.tval yojson_of_client_policy : client_policy -> Yojson.Safe.tval yojson_of_backend_defaults : backend_defaults -> Yojson.Safe.tval yojson_of_virtual_service_backend :
virtual_service_backend ->
Yojson.Safe.tval yojson_of_backend : backend -> Yojson.Safe.tval 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 ]val create_attributes : string -> attributes