Module AutoScaling.AutoScalingGroup

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html

type accelerator_count_request = {
  1. min : int option;
  2. max : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-acceleratorcountrequest.html

and accelerator_total_memory_mi_b_request = {
  1. min : int option;
  2. max : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-acceleratortotalmemorymibrequest.html

and instance_maintenance_policy = {
  1. max_healthy_percentage : int option;
  2. min_healthy_percentage : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancemaintenancepolicy.html

and network_interface_count_request = {
  1. min : int option;
  2. max : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-networkinterfacecountrequest.html

and metrics_collection = {
  1. metrics : string list option;
  2. granularity : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-metricscollection.html

and lifecycle_hook_specification = {
  1. lifecycle_hook_name : string;
  2. lifecycle_transition : string;
  3. heartbeat_timeout : int option;
  4. notification_metadata : string option;
  5. default_result : string option;
  6. notification_target_arn : string option;
  7. role_arn : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-lifecyclehookspecification.html

and tag_property = {
  1. value : string;
  2. key : string;
  3. propagate_at_launch : bool;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-tagproperty.html

and network_bandwidth_gbps_request = {
  1. min : float option;
  2. max : float option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-networkbandwidthgbpsrequest.html

and instances_distribution = {
  1. on_demand_allocation_strategy : string option;
  2. on_demand_base_capacity : int option;
  3. on_demand_percentage_above_base_capacity : int option;
  4. spot_instance_pools : int option;
  5. spot_allocation_strategy : string option;
  6. spot_max_price : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html

and baseline_ebs_bandwidth_mbps_request = {
  1. min : int option;
  2. max : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-baselineebsbandwidthmbpsrequest.html

and notification_configuration = {
  1. topic_arn : string list;
  2. notification_types : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-notificationconfiguration.html

and memory_gi_b_per_v_cpu_request = {
  1. min : float option;
  2. max : float option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-memorygibpervcpurequest.html

and memory_mi_b_request = {
  1. min : int option;
  2. max : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-memorymibrequest.html

and v_cpu_count_request = {
  1. min : int option;
  2. max : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-vcpucountrequest.html

and total_local_storage_gb_request = {
  1. min : float option;
  2. max : float option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-totallocalstoragegbrequest.html

and launch_template_specification = {
  1. launch_template_name : string option;
  2. version : string;
  3. launch_template_id : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html

and instance_requirements = {
  1. local_storage_types : string list option;
  2. instance_generations : string list option;
  3. network_interface_count : network_interface_count_request option;
  4. accelerator_types : string list option;
  5. memory_gi_b_per_v_cpu : memory_gi_b_per_v_cpu_request option;
  6. accelerator_manufacturers : string list option;
  7. excluded_instance_types : string list option;
  8. v_cpu_count : v_cpu_count_request;
  9. allowed_instance_types : string list option;
  10. local_storage : string option;
  11. cpu_manufacturers : string list option;
  12. accelerator_count : accelerator_count_request option;
  13. network_bandwidth_gbps : network_bandwidth_gbps_request option;
  14. bare_metal : string option;
  15. require_hibernate_support : bool option;
  16. max_spot_price_as_percentage_of_optimal_on_demand_price : int option;
  17. baseline_ebs_bandwidth_mbps : baseline_ebs_bandwidth_mbps_request option;
  18. spot_max_price_percentage_over_lowest_price : int option;
  19. accelerator_names : string list option;
  20. accelerator_total_memory_mib : accelerator_total_memory_mi_b_request option;
  21. on_demand_max_price_percentage_over_lowest_price : int option;
  22. burstable_performance : string option;
  23. memory_mib : memory_mi_b_request;
  24. total_local_storage_gb : total_local_storage_gb_request option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancerequirements.html

and launch_template_overrides = {
  1. launch_template_specification : launch_template_specification option;
  2. weighted_capacity : string option;
  3. instance_requirements : instance_requirements option;
  4. instance_type : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html

and launch_template = {
  1. launch_template_specification : launch_template_specification;
  2. overrides : launch_template_overrides list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html

and mixed_instances_policy = {
  1. instances_distribution : instances_distribution option;
  2. launch_template : launch_template;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html

type properties = {
  1. lifecycle_hook_specification_list : lifecycle_hook_specification list option;
  2. load_balancer_names : string list option;
  3. launch_configuration_name : string option;
  4. service_linked_role_arn : string option;
  5. target_group_ar_ns : string list option;
  6. cooldown : string option;
  7. notification_configurations : notification_configuration list option;
  8. desired_capacity : string option;
  9. health_check_grace_period : int option;
  10. default_instance_warmup : int option;
  11. new_instances_protected_from_scale_in : bool option;
  12. launch_template : launch_template_specification option;
  13. mixed_instances_policy : mixed_instances_policy option;
  14. vpc_zone_identifier : string list option;
  15. tags : tag_property list option;
  16. context : string option;
  17. capacity_rebalance : bool option;
  18. instance_id : string option;
  19. availability_zones : string list option;
  20. metrics_collection : metrics_collection list option;
  21. instance_maintenance_policy : instance_maintenance_policy option;
  22. max_size : string;
  23. min_size : string;
  24. termination_policies : string list option;
  25. auto_scaling_group_name : string option;
  26. desired_capacity_type : string option;
  27. placement_group : string option;
  28. health_check_type : string option;
  29. max_instance_lifetime : int option;
}

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

val make_properties : ?lifecycle_hook_specification_list:lifecycle_hook_specification list -> ?load_balancer_names:string list -> ?launch_configuration_name:string -> ?service_linked_role_arn:string -> ?target_group_ar_ns:string list -> ?cooldown:string -> ?notification_configurations:notification_configuration list -> ?desired_capacity:string -> ?health_check_grace_period:int -> ?default_instance_warmup:int -> ?new_instances_protected_from_scale_in:bool -> ?launch_template:launch_template_specification -> ?mixed_instances_policy:mixed_instances_policy -> ?vpc_zone_identifier:string list -> ?tags:tag_property list -> ?context:string -> ?capacity_rebalance:bool -> ?instance_id:string -> ?availability_zones:string list -> ?metrics_collection:metrics_collection list -> ?instance_maintenance_policy:instance_maintenance_policy -> max_size:string -> min_size:string -> ?termination_policies:string list -> ?auto_scaling_group_name:string -> ?desired_capacity_type:string -> ?placement_group:string -> ?health_check_type:string -> ?max_instance_lifetime:int -> unit -> properties
val make_accelerator_count_request : ?min:int -> ?max:int -> unit -> accelerator_count_request
val make_accelerator_total_memory_mi_b_request : ?min:int -> ?max:int -> unit -> accelerator_total_memory_mi_b_request
val make_instance_maintenance_policy : ?max_healthy_percentage:int -> ?min_healthy_percentage:int -> unit -> instance_maintenance_policy
val make_network_interface_count_request : ?min:int -> ?max:int -> unit -> network_interface_count_request
val make_metrics_collection : ?metrics:string list -> granularity:string -> unit -> metrics_collection
val make_lifecycle_hook_specification : lifecycle_hook_name:string -> lifecycle_transition:string -> ?heartbeat_timeout:int -> ?notification_metadata:string -> ?default_result:string -> ?notification_target_arn:string -> ?role_arn:string -> unit -> lifecycle_hook_specification
val make_tag_property : value:string -> key:string -> propagate_at_launch:bool -> unit -> tag_property
val make_network_bandwidth_gbps_request : ?min:float -> ?max:float -> unit -> network_bandwidth_gbps_request
val make_instances_distribution : ?on_demand_allocation_strategy:string -> ?on_demand_base_capacity:int -> ?on_demand_percentage_above_base_capacity:int -> ?spot_instance_pools:int -> ?spot_allocation_strategy:string -> ?spot_max_price:string -> unit -> instances_distribution
val make_baseline_ebs_bandwidth_mbps_request : ?min:int -> ?max:int -> unit -> baseline_ebs_bandwidth_mbps_request
val make_notification_configuration : topic_arn:string list -> ?notification_types:string list -> unit -> notification_configuration
val make_memory_gi_b_per_v_cpu_request : ?min:float -> ?max:float -> unit -> memory_gi_b_per_v_cpu_request
val make_memory_mi_b_request : ?min:int -> ?max:int -> unit -> memory_mi_b_request
val make_v_cpu_count_request : ?min:int -> ?max:int -> unit -> v_cpu_count_request
val make_total_local_storage_gb_request : ?min:float -> ?max:float -> unit -> total_local_storage_gb_request
val make_launch_template_specification : ?launch_template_name:string -> version:string -> ?launch_template_id:string -> unit -> launch_template_specification
val make_instance_requirements : ?local_storage_types:string list -> ?instance_generations:string list -> ?network_interface_count:network_interface_count_request -> ?accelerator_types:string list -> ?memory_gi_b_per_v_cpu:memory_gi_b_per_v_cpu_request -> ?accelerator_manufacturers:string list -> ?excluded_instance_types:string list -> v_cpu_count:v_cpu_count_request -> ?allowed_instance_types:string list -> ?local_storage:string -> ?cpu_manufacturers:string list -> ?accelerator_count:accelerator_count_request -> ?network_bandwidth_gbps:network_bandwidth_gbps_request -> ?bare_metal:string -> ?require_hibernate_support:bool -> ?max_spot_price_as_percentage_of_optimal_on_demand_price:int -> ?baseline_ebs_bandwidth_mbps:baseline_ebs_bandwidth_mbps_request -> ?spot_max_price_percentage_over_lowest_price:int -> ?accelerator_names:string list -> ?accelerator_total_memory_mib:accelerator_total_memory_mi_b_request -> ?on_demand_max_price_percentage_over_lowest_price:int -> ?burstable_performance:string -> memory_mib:memory_mi_b_request -> ?total_local_storage_gb:total_local_storage_gb_request -> unit -> instance_requirements
val make_launch_template_overrides : ?launch_template_specification:launch_template_specification -> ?weighted_capacity:string -> ?instance_requirements:instance_requirements -> ?instance_type:string -> unit -> launch_template_overrides
val make_launch_template : launch_template_specification:launch_template_specification -> ?overrides:launch_template_overrides list -> unit -> launch_template
val make_mixed_instances_policy : ?instances_distribution:instances_distribution -> launch_template:launch_template -> unit -> mixed_instances_policy
val yojson_of_accelerator_count_request : accelerator_count_request -> Yojson.Safe.t
val yojson_of_accelerator_total_memory_mi_b_request : accelerator_total_memory_mi_b_request -> Yojson.Safe.t
val yojson_of_instance_maintenance_policy : instance_maintenance_policy -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_network_interface_count_request : network_interface_count_request -> Yojson.Safe.t
val yojson_of_metrics_collection : metrics_collection -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_lifecycle_hook_specification : lifecycle_hook_specification -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_tag_property : tag_property -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_network_bandwidth_gbps_request : network_bandwidth_gbps_request -> Yojson.Safe.t
val yojson_of_instances_distribution : instances_distribution -> Yojson.Safe.t
val yojson_of_baseline_ebs_bandwidth_mbps_request : baseline_ebs_bandwidth_mbps_request -> Yojson.Safe.t
val yojson_of_notification_configuration : notification_configuration -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_memory_gi_b_per_v_cpu_request : memory_gi_b_per_v_cpu_request -> Yojson.Safe.t
val yojson_of_memory_mi_b_request : memory_mi_b_request -> Yojson.Safe.t
val yojson_of_v_cpu_count_request : v_cpu_count_request -> Yojson.Safe.t
val yojson_of_total_local_storage_gb_request : total_local_storage_gb_request -> Yojson.Safe.t
val yojson_of_launch_template_specification : launch_template_specification -> Yojson.Safe.t
val yojson_of_instance_requirements : instance_requirements -> Yojson.Safe.t
val yojson_of_launch_template_overrides : launch_template_overrides -> Yojson.Safe.t
val yojson_of_launch_template : launch_template -> Yojson.Safe.t
val yojson_of_mixed_instances_policy : mixed_instances_policy -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties : properties -> [> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
  1. ref_ : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string