CloudFront.Distributionsee http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.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-cloudfront-distribution-legacys3origin.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-georestriction.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cookies.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-logging.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmember.html
and custom_error_response = {response_code : int option;error_caching_min_ttl : float option;error_code : int;response_page_path : string option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customerrorresponse.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-originshield.html
and custom_origin_config = {origin_read_timeout : int option;https_port : int option;origin_keepalive_timeout : int option;origin_ssl_protocols : string list option;http_port : int option;origin_protocol_policy : string;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-customoriginconfig.html
and viewer_certificate = {iam_certificate_id : string option;ssl_support_method : string option;minimum_protocol_version : string option;cloud_front_default_certificate : bool option;acm_certificate_arn : string option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-viewercertificate.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-statuscodes.html
and legacy_custom_origin = {https_port : int option;origin_ssl_protocols : string list;dns_name : string;http_port : int option;origin_protocol_policy : string;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-legacycustomorigin.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origincustomheader.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-lambdafunctionassociation.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-functionassociation.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-forwardedvalues.html
and origin = {connection_timeout : int option;origin_access_control_id : string option;connection_attempts : int option;origin_custom_headers : origin_custom_header list option;domain_name : string;origin_shield : origin_shield option;s3_origin_config : s3_origin_config option;origin_path : string option;id : string;custom_origin_config : custom_origin_config option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origin.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-restrictions.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupmembers.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroupfailovercriteria.html
and cache_behavior = {compress : bool option;function_associations : function_association list option;lambda_function_associations : lambda_function_association list option;target_origin_id : string;viewer_protocol_policy : string;response_headers_policy_id : string option;realtime_log_config_arn : string option;trusted_signers : string list option;default_ttl : float option;field_level_encryption_id : string option;trusted_key_groups : string list option;allowed_methods : string list option;path_pattern : string;cached_methods : string list option;smooth_streaming : bool option;forwarded_values : forwarded_values option;origin_request_policy_id : string option;min_ttl : float option;cache_policy_id : string option;max_ttl : float option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html
and default_cache_behavior = {compress : bool option;function_associations : function_association list option;lambda_function_associations : lambda_function_association list option;target_origin_id : string;viewer_protocol_policy : string;response_headers_policy_id : string option;realtime_log_config_arn : string option;trusted_signers : string list option;default_ttl : float option;field_level_encryption_id : string option;trusted_key_groups : string list option;allowed_methods : string list option;cached_methods : string list option;smooth_streaming : bool option;forwarded_values : forwarded_values option;origin_request_policy_id : string option;min_ttl : float option;cache_policy_id : string option;max_ttl : float option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html
and origin_group = {id : string;failover_criteria : origin_group_failover_criteria;members : origin_group_members;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroup.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-origingroups.html
and distribution_config = {logging : logging option;comment : string option;default_root_object : string option;origins : origin list option;viewer_certificate : viewer_certificate option;price_class : string option;custom_origin : legacy_custom_origin option;s3_origin : legacy_s3_origin option;default_cache_behavior : default_cache_behavior;staging : bool option;custom_error_responses : custom_error_response list option;continuous_deployment_policy_id : string option;origin_groups : origin_groups option;enabled : bool;aliases : string list option;ip_v6_enabled : bool option;cnam_es : string list option;web_acl_id : string option;http_version : string option;restrictions : restrictions option;cache_behaviors : cache_behavior list option;}see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html;
val make_properties :
distribution_config:distribution_config ->
?tags:tag list ->
unit ->
propertiesval make_tag : value:string -> key:string -> unit -> tagval make_legacy_s3_origin :
?origin_access_identity:string ->
dns_name:string ->
unit ->
legacy_s3_originval make_geo_restriction :
?locations:string list ->
restriction_type:string ->
unit ->
geo_restrictionval make_cookies :
?whitelisted_names:string list ->
forward:string ->
unit ->
cookiesval make_s3_origin_config :
?origin_access_identity:string ->
unit ->
s3_origin_configval make_logging :
?include_cookies:bool ->
bucket:string ->
?prefix:string ->
unit ->
loggingval make_origin_group_member : origin_id:string -> unit -> origin_group_memberval make_custom_error_response :
?response_code:int ->
?error_caching_min_ttl:float ->
error_code:int ->
?response_page_path:string ->
unit ->
custom_error_responseval make_origin_shield :
?origin_shield_region:string ->
?enabled:bool ->
unit ->
origin_shieldval make_custom_origin_config :
?origin_read_timeout:int ->
?https_port:int ->
?origin_keepalive_timeout:int ->
?origin_ssl_protocols:string list ->
?http_port:int ->
origin_protocol_policy:string ->
unit ->
custom_origin_configval make_viewer_certificate :
?iam_certificate_id:string ->
?ssl_support_method:string ->
?minimum_protocol_version:string ->
?cloud_front_default_certificate:bool ->
?acm_certificate_arn:string ->
unit ->
viewer_certificateval make_status_codes : quantity:int -> items:int list -> unit -> status_codesval make_legacy_custom_origin :
?https_port:int ->
origin_ssl_protocols:string list ->
dns_name:string ->
?http_port:int ->
origin_protocol_policy:string ->
unit ->
legacy_custom_originval make_origin_custom_header :
header_value:string ->
header_name:string ->
unit ->
origin_custom_headerval make_lambda_function_association :
?include_body:bool ->
?event_type:string ->
?lambda_function_arn:string ->
unit ->
lambda_function_associationval make_function_association :
?function_arn:string ->
?event_type:string ->
unit ->
function_associationval make_forwarded_values :
?cookies:cookies ->
?headers:string list ->
query_string:bool ->
?query_string_cache_keys:string list ->
unit ->
forwarded_valuesval make_origin :
?connection_timeout:int ->
?origin_access_control_id:string ->
?connection_attempts:int ->
?origin_custom_headers:origin_custom_header list ->
domain_name:string ->
?origin_shield:origin_shield ->
?s3_origin_config:s3_origin_config ->
?origin_path:string ->
id:string ->
?custom_origin_config:custom_origin_config ->
unit ->
originval make_restrictions : geo_restriction:geo_restriction -> unit -> restrictionsval make_origin_group_members :
quantity:int ->
items:origin_group_member list ->
unit ->
origin_group_membersval make_origin_group_failover_criteria :
status_codes:status_codes ->
unit ->
origin_group_failover_criteriaval make_cache_behavior :
?compress:bool ->
?function_associations:function_association list ->
?lambda_function_associations:lambda_function_association list ->
target_origin_id:string ->
viewer_protocol_policy:string ->
?response_headers_policy_id:string ->
?realtime_log_config_arn:string ->
?trusted_signers:string list ->
?default_ttl:float ->
?field_level_encryption_id:string ->
?trusted_key_groups:string list ->
?allowed_methods:string list ->
path_pattern:string ->
?cached_methods:string list ->
?smooth_streaming:bool ->
?forwarded_values:forwarded_values ->
?origin_request_policy_id:string ->
?min_ttl:float ->
?cache_policy_id:string ->
?max_ttl:float ->
unit ->
cache_behaviorval make_default_cache_behavior :
?compress:bool ->
?function_associations:function_association list ->
?lambda_function_associations:lambda_function_association list ->
target_origin_id:string ->
viewer_protocol_policy:string ->
?response_headers_policy_id:string ->
?realtime_log_config_arn:string ->
?trusted_signers:string list ->
?default_ttl:float ->
?field_level_encryption_id:string ->
?trusted_key_groups:string list ->
?allowed_methods:string list ->
?cached_methods:string list ->
?smooth_streaming:bool ->
?forwarded_values:forwarded_values ->
?origin_request_policy_id:string ->
?min_ttl:float ->
?cache_policy_id:string ->
?max_ttl:float ->
unit ->
default_cache_behaviorval make_origin_group :
id:string ->
failover_criteria:origin_group_failover_criteria ->
members:origin_group_members ->
unit ->
origin_groupval make_origin_groups :
quantity:int ->
?items:origin_group list ->
unit ->
origin_groupsval make_distribution_config :
?logging:logging ->
?comment:string ->
?default_root_object:string ->
?origins:origin list ->
?viewer_certificate:viewer_certificate ->
?price_class:string ->
?custom_origin:legacy_custom_origin ->
?s3_origin:legacy_s3_origin ->
default_cache_behavior:default_cache_behavior ->
?staging:bool ->
?custom_error_responses:custom_error_response list ->
?continuous_deployment_policy_id:string ->
?origin_groups:origin_groups ->
enabled:bool ->
?aliases:string list ->
?ip_v6_enabled:bool ->
?cnam_es:string list ->
?web_acl_id:string ->
?http_version:string ->
?restrictions:restrictions ->
?cache_behaviors:cache_behavior list ->
unit ->
distribution_configval yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_legacy_s3_origin : legacy_s3_origin -> Yojson.Safe.tval yojson_of_geo_restriction : geo_restriction -> Yojson.Safe.tval yojson_of_cookies : cookies -> Yojson.Safe.tval yojson_of_s3_origin_config : s3_origin_config -> Yojson.Safe.tval yojson_of_logging : logging -> Yojson.Safe.tval yojson_of_origin_group_member : origin_group_member -> Yojson.Safe.tval yojson_of_custom_error_response : custom_error_response -> Yojson.Safe.tval yojson_of_origin_shield : origin_shield -> Yojson.Safe.tval yojson_of_custom_origin_config : custom_origin_config -> Yojson.Safe.tval yojson_of_viewer_certificate : viewer_certificate -> Yojson.Safe.tval yojson_of_status_codes : status_codes -> Yojson.Safe.tval yojson_of_legacy_custom_origin : legacy_custom_origin -> Yojson.Safe.tval yojson_of_origin_custom_header : origin_custom_header -> Yojson.Safe.tval yojson_of_lambda_function_association :
lambda_function_association ->
Yojson.Safe.tval yojson_of_function_association : function_association -> Yojson.Safe.tval yojson_of_forwarded_values : forwarded_values -> Yojson.Safe.tval yojson_of_origin : origin -> Yojson.Safe.tval yojson_of_restrictions : restrictions -> Yojson.Safe.tval yojson_of_origin_group_members : origin_group_members -> Yojson.Safe.tval yojson_of_origin_group_failover_criteria :
origin_group_failover_criteria ->
Yojson.Safe.tval yojson_of_cache_behavior : cache_behavior -> Yojson.Safe.tval yojson_of_default_cache_behavior : default_cache_behavior -> Yojson.Safe.tval yojson_of_origin_group : origin_group -> Yojson.Safe.tval yojson_of_origin_groups : origin_groups -> Yojson.Safe.tval yojson_of_distribution_config :
distribution_config ->
[> `Assoc of (string * Yojson.Safe.t) list ]val yojson_of_properties :
properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]val create_attributes : string -> attributes