Module VpcLattice.TargetGroup

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html

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

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

and target = {
  1. port : int option;
  2. id : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-target.html

and matcher = {
  1. http_code : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-matcher.html

and health_check_config = {
  1. path : string option;
  2. health_check_interval_seconds : int option;
  3. matcher : matcher option;
  4. healthy_threshold_count : int option;
  5. port : int option;
  6. enabled : bool option;
  7. protocol : string option;
  8. protocol_version : string option;
  9. unhealthy_threshold_count : int option;
  10. health_check_timeout_seconds : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html

and target_group_config = {
  1. ip_address_type : string option;
  2. port : int option;
  3. health_check : health_check_config option;
  4. lambda_event_structure_version : string option;
  5. vpc_identifier : string option;
  6. protocol : string option;
  7. protocol_version : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-targetgroupconfig.html

type properties = {
  1. type_ : string;
  2. config : target_group_config option;
  3. targets : target list option;
  4. tags : tag list option;
  5. name : string option;
}

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

val make_properties : type_:string -> ?config:target_group_config -> ?targets:target list -> ?tags:tag list -> ?name:string -> unit -> properties
val make_tag : value:string -> key:string -> unit -> tag
val make_target : ?port:int -> id:string -> unit -> target
val make_matcher : http_code:string -> unit -> matcher
val make_health_check_config : ?path:string -> ?health_check_interval_seconds:int -> ?matcher:matcher -> ?healthy_threshold_count:int -> ?port:int -> ?enabled:bool -> ?protocol:string -> ?protocol_version:string -> ?unhealthy_threshold_count:int -> ?health_check_timeout_seconds:int -> unit -> health_check_config
val make_target_group_config : ?ip_address_type:string -> ?port:int -> ?health_check:health_check_config -> ?lambda_event_structure_version:string -> ?vpc_identifier:string -> ?protocol:string -> ?protocol_version:string -> unit -> target_group_config
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_target : target -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_matcher : matcher -> Yojson.Safe.t
val yojson_of_health_check_config : health_check_config -> Yojson.Safe.t
val yojson_of_target_group_config : target_group_config -> [> `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. status : string;
  3. last_updated_at : string;
  4. created_at : string;
  5. id : string;
  6. arn : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string