Module ElasticLoadBalancingV2.ListenerRule

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html

type http_header_config = {
  1. values : string list option;
  2. http_header_name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httpheaderconfig.html

and target_group_tuple = {
  1. target_group_arn : string option;
  2. weight : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-targetgrouptuple.html

and source_ip_config = {
  1. values : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-sourceipconfig.html

and authenticate_oidc_config = {
  1. on_unauthenticated_request : string option;
  2. token_endpoint : string;
  3. use_existing_client_secret : bool option;
  4. session_timeout : int option;
  5. scope : string option;
  6. issuer : string;
  7. client_secret : string option;
  8. user_info_endpoint : string;
  9. client_id : string;
  10. authorization_endpoint : string;
  11. authentication_request_extra_params : string Stdlib__Map.Make(Stdlib.String).t option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticateoidcconfig.html

and host_header_config = {
  1. values : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html

and path_pattern_config = {
  1. values : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-pathpatternconfig.html

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

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringkeyvalue.html

and fixed_response_config = {
  1. content_type : string option;
  2. status_code : string;
  3. message_body : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-fixedresponseconfig.html

and authenticate_cognito_config = {
  1. on_unauthenticated_request : string option;
  2. user_pool_client_id : string;
  3. user_pool_domain : string;
  4. session_timeout : int option;
  5. scope : string option;
  6. user_pool_arn : string;
  7. authentication_request_extra_params : string Stdlib__Map.Make(Stdlib.String).t option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-authenticatecognitoconfig.html

and http_request_method_config = {
  1. values : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-httprequestmethodconfig.html

and redirect_config = {
  1. path : string option;
  2. query : string option;
  3. port : string option;
  4. host : string option;
  5. protocol : string option;
  6. status_code : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-redirectconfig.html

and target_group_stickiness_config = {
  1. enabled : bool option;
  2. duration_seconds : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-targetgroupstickinessconfig.html

and forward_config = {
  1. target_group_stickiness_config : target_group_stickiness_config option;
  2. target_groups : target_group_tuple list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-forwardconfig.html

and query_string_config = {
  1. values : query_string_key_value list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-querystringconfig.html

and action = {
  1. order : int option;
  2. target_group_arn : string option;
  3. fixed_response_config : fixed_response_config option;
  4. authenticate_cognito_config : authenticate_cognito_config option;
  5. type_ : string;
  6. redirect_config : redirect_config option;
  7. forward_config : forward_config option;
  8. authenticate_oidc_config : authenticate_oidc_config option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-action.html

and rule_condition = {
  1. field : string option;
  2. http_header_config : http_header_config option;
  3. values : string list option;
  4. query_string_config : query_string_config option;
  5. host_header_config : host_header_config option;
  6. http_request_method_config : http_request_method_config option;
  7. path_pattern_config : path_pattern_config option;
  8. source_ip_config : source_ip_config option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-rulecondition.html

type properties = {
  1. listener_arn : string option;
  2. actions : action list;
  3. priority : int;
  4. conditions : rule_condition list;
}

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

val make_properties : ?listener_arn:string -> actions:action list -> priority:int -> conditions:rule_condition list -> unit -> properties
val make_http_header_config : ?values:string list -> ?http_header_name:string -> unit -> http_header_config
val make_target_group_tuple : ?target_group_arn:string -> ?weight:int -> unit -> target_group_tuple
val make_source_ip_config : ?values:string list -> unit -> source_ip_config
val make_authenticate_oidc_config : ?on_unauthenticated_request:string -> token_endpoint:string -> ?use_existing_client_secret:bool -> ?session_timeout:int -> ?scope:string -> issuer:string -> ?client_secret:string -> user_info_endpoint:string -> client_id:string -> authorization_endpoint:string -> ?session_cookie_name:string -> ?authentication_request_extra_params:string Stdlib__Map.Make(Stdlib.String).t -> unit -> authenticate_oidc_config
val make_host_header_config : ?values:string list -> unit -> host_header_config
val make_path_pattern_config : ?values:string list -> unit -> path_pattern_config
val make_query_string_key_value : ?value:string -> ?key:string -> unit -> query_string_key_value
val make_fixed_response_config : ?content_type:string -> status_code:string -> ?message_body:string -> unit -> fixed_response_config
val make_authenticate_cognito_config : ?on_unauthenticated_request:string -> user_pool_client_id:string -> user_pool_domain:string -> ?session_timeout:int -> ?scope:string -> ?session_cookie_name:string -> user_pool_arn:string -> ?authentication_request_extra_params:string Stdlib__Map.Make(Stdlib.String).t -> unit -> authenticate_cognito_config
val make_http_request_method_config : ?values:string list -> unit -> http_request_method_config
val make_redirect_config : ?path:string -> ?query:string -> ?port:string -> ?host:string -> ?protocol:string -> status_code:string -> unit -> redirect_config
val make_target_group_stickiness_config : ?enabled:bool -> ?duration_seconds:int -> unit -> target_group_stickiness_config
val make_forward_config : ?target_group_stickiness_config:target_group_stickiness_config -> ?target_groups:target_group_tuple list -> unit -> forward_config
val make_query_string_config : ?values:query_string_key_value list -> unit -> query_string_config
val make_action : ?order:int -> ?target_group_arn:string -> ?fixed_response_config:fixed_response_config -> ?authenticate_cognito_config:authenticate_cognito_config -> type_:string -> ?redirect_config:redirect_config -> ?forward_config:forward_config -> ?authenticate_oidc_config:authenticate_oidc_config -> unit -> action
val make_rule_condition : ?field:string -> ?http_header_config:http_header_config -> ?values:string list -> ?query_string_config:query_string_config -> ?host_header_config:host_header_config -> ?http_request_method_config:http_request_method_config -> ?path_pattern_config:path_pattern_config -> ?source_ip_config:source_ip_config -> unit -> rule_condition
val yojson_of_http_header_config : http_header_config -> Yojson.Safe.t
val yojson_of_target_group_tuple : target_group_tuple -> Yojson.Safe.t
val yojson_of_source_ip_config : source_ip_config -> Yojson.Safe.t
val yojson_of_authenticate_oidc_config : authenticate_oidc_config -> Yojson.Safe.t
val yojson_of_host_header_config : host_header_config -> Yojson.Safe.t
val yojson_of_path_pattern_config : path_pattern_config -> Yojson.Safe.t
val yojson_of_query_string_key_value : query_string_key_value -> Yojson.Safe.t
val yojson_of_fixed_response_config : fixed_response_config -> Yojson.Safe.t
val yojson_of_authenticate_cognito_config : authenticate_cognito_config -> Yojson.Safe.t
val yojson_of_http_request_method_config : http_request_method_config -> Yojson.Safe.t
val yojson_of_redirect_config : redirect_config -> Yojson.Safe.t
val yojson_of_target_group_stickiness_config : target_group_stickiness_config -> Yojson.Safe.t
val yojson_of_forward_config : forward_config -> Yojson.Safe.t
val yojson_of_query_string_config : query_string_config -> Yojson.Safe.t
val yojson_of_action : action -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_rule_condition : rule_condition -> [> `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. rule_arn : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string