# frozen_string_literal: true # WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE module Aws::AutoScaling module Types # Specifies the minimum and maximum for the `AcceleratorCount` object # when you specify InstanceRequirements for an Auto Scaling group. # # @!attribute [rw] min # The minimum value. # @return [Integer] # # @!attribute [rw] max # The maximum value. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AcceleratorCountRequest AWS API Documentation # class AcceleratorCountRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # Specifies the minimum and maximum for the `AcceleratorTotalMemoryMiB` # object when you specify InstanceRequirements for an Auto Scaling # group. # # @!attribute [rw] min # The memory minimum in MiB. # @return [Integer] # # @!attribute [rw] max # The memory maximum in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AcceleratorTotalMemoryMiBRequest AWS API Documentation # class AcceleratorTotalMemoryMiBRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The request failed because an active instance refresh or rollback for # the specified Auto Scaling group was not found. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ActiveInstanceRefreshNotFoundFault AWS API Documentation # class ActiveInstanceRefreshNotFoundFault < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] activities # The scaling activities. Activities are sorted by start time. # Activities still in progress are described first. # @return [Array] # # @!attribute [rw] next_token # A string that indicates that the response contains more items than # can be returned in a single response. To receive additional items, # specify this string for the `NextToken` value when requesting the # next set of items. This value is null when there are no more items # to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ActivitiesType AWS API Documentation # class ActivitiesType < Struct.new( :activities, :next_token) SENSITIVE = [] include Aws::Structure end # Describes scaling activity, which is a long-running process that # represents a change to your Auto Scaling group, such as changing its # size or replacing an instance. # # @!attribute [rw] activity_id # The ID of the activity. # @return [String] # # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @!attribute [rw] description # A friendly, more verbose description of the activity. # @return [String] # # @!attribute [rw] cause # The reason the activity began. # @return [String] # # @!attribute [rw] start_time # The start time of the activity. # @return [Time] # # @!attribute [rw] end_time # The end time of the activity. # @return [Time] # # @!attribute [rw] status_code # The current status of the activity. # @return [String] # # @!attribute [rw] status_message # A friendly, more verbose description of the activity status. # @return [String] # # @!attribute [rw] progress # A value between 0 and 100 that indicates the progress of the # activity. # @return [Integer] # # @!attribute [rw] details # The details about the activity. # @return [String] # # @!attribute [rw] auto_scaling_group_state # The state of the Auto Scaling group, which is either `InService` or # `Deleted`. # @return [String] # # @!attribute [rw] auto_scaling_group_arn # The Amazon Resource Name (ARN) of the Auto Scaling group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/Activity AWS API Documentation # class Activity < Struct.new( :activity_id, :auto_scaling_group_name, :description, :cause, :start_time, :end_time, :status_code, :status_message, :progress, :details, :auto_scaling_group_state, :auto_scaling_group_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] activity # A scaling activity. # @return [Types::Activity] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ActivityType AWS API Documentation # class ActivityType < Struct.new( :activity) SENSITIVE = [] include Aws::Structure end # Describes a policy adjustment type. # # @!attribute [rw] adjustment_type # The policy adjustment type. The valid values are `ChangeInCapacity`, # `ExactCapacity`, and `PercentChangeInCapacity`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AdjustmentType AWS API Documentation # class AdjustmentType < Struct.new( :adjustment_type) SENSITIVE = [] include Aws::Structure end # Describes an alarm. # # @!attribute [rw] alarm_name # The name of the alarm. # @return [String] # # @!attribute [rw] alarm_arn # The Amazon Resource Name (ARN) of the alarm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/Alarm AWS API Documentation # class Alarm < Struct.new( :alarm_name, :alarm_arn) SENSITIVE = [] include Aws::Structure end # Specifies the CloudWatch alarm specification to use in an instance # refresh. # # @!attribute [rw] alarms # The names of one or more CloudWatch alarms to monitor for the # instance refresh. You can specify up to 10 alarms. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AlarmSpecification AWS API Documentation # class AlarmSpecification < Struct.new( :alarms) SENSITIVE = [] include Aws::Structure end # You already have an Auto Scaling group or launch configuration with # this name. # # @!attribute [rw] message # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AlreadyExistsFault AWS API Documentation # class AlreadyExistsFault < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_ids # The IDs of the instances. You can specify up to 20 instances. # @return [Array] # # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachInstancesQuery AWS API Documentation # class AttachInstancesQuery < Struct.new( :instance_ids, :auto_scaling_group_name) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancerTargetGroupsResultType AWS API Documentation # class AttachLoadBalancerTargetGroupsResultType < Aws::EmptyStructure; end # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @!attribute [rw] target_group_arns # The Amazon Resource Names (ARNs) of the target groups. You can # specify up to 10 target groups. To get the ARN of a target group, # use the Elastic Load Balancing [DescribeTargetGroups][1] API # operation. # # # # [1]: https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancerTargetGroupsType AWS API Documentation # class AttachLoadBalancerTargetGroupsType < Struct.new( :auto_scaling_group_name, :target_group_arns) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancersResultType AWS API Documentation # class AttachLoadBalancersResultType < Aws::EmptyStructure; end # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @!attribute [rw] load_balancer_names # The names of the load balancers. You can specify up to 10 load # balancers. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancersType AWS API Documentation # class AttachLoadBalancersType < Struct.new( :auto_scaling_group_name, :load_balancer_names) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachTrafficSourcesResultType AWS API Documentation # class AttachTrafficSourcesResultType < Aws::EmptyStructure; end # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @!attribute [rw] traffic_sources # The unique identifiers of one or more traffic sources. You can # specify up to 10 traffic sources. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachTrafficSourcesType AWS API Documentation # class AttachTrafficSourcesType < Struct.new( :auto_scaling_group_name, :traffic_sources) SENSITIVE = [] include Aws::Structure end # Describes an Auto Scaling group. # # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @!attribute [rw] auto_scaling_group_arn # The Amazon Resource Name (ARN) of the Auto Scaling group. # @return [String] # # @!attribute [rw] launch_configuration_name # The name of the associated launch configuration. # @return [String] # # @!attribute [rw] launch_template # The launch template for the group. # @return [Types::LaunchTemplateSpecification] # # @!attribute [rw] mixed_instances_policy # The mixed instances policy for the group. # @return [Types::MixedInstancesPolicy] # # @!attribute [rw] min_size # The minimum size of the group. # @return [Integer] # # @!attribute [rw] max_size # The maximum size of the group. # @return [Integer] # # @!attribute [rw] desired_capacity # The desired size of the group. # @return [Integer] # # @!attribute [rw] predicted_capacity # The predicted capacity of the group when it has a predictive scaling # policy. # @return [Integer] # # @!attribute [rw] default_cooldown # The duration of the default cooldown period, in seconds. # @return [Integer] # # @!attribute [rw] availability_zones # One or more Availability Zones for the group. # @return [Array] # # @!attribute [rw] load_balancer_names # One or more load balancers associated with the group. # @return [Array] # # @!attribute [rw] target_group_arns # The Amazon Resource Names (ARN) of the target groups for your load # balancer. # @return [Array] # # @!attribute [rw] health_check_type # A comma-separated value string of one or more health check types. # @return [String] # # @!attribute [rw] health_check_grace_period # The duration of the health check grace period, in seconds. # @return [Integer] # # @!attribute [rw] instances # The EC2 instances associated with the group. # @return [Array] # # @!attribute [rw] created_time # The date and time the group was created. # @return [Time] # # @!attribute [rw] suspended_processes # The suspended processes associated with the group. # @return [Array] # # @!attribute [rw] placement_group # The name of the placement group into which to launch your instances, # if any. # @return [String] # # @!attribute [rw] vpc_zone_identifier # One or more subnet IDs, if applicable, separated by commas. # @return [String] # # @!attribute [rw] enabled_metrics # The metrics enabled for the group. # @return [Array] # # @!attribute [rw] status # The current state of the group when the DeleteAutoScalingGroup # operation is in progress. # @return [String] # # @!attribute [rw] tags # The tags for the group. # @return [Array] # # @!attribute [rw] termination_policies # The termination policies for the group. # @return [Array] # # @!attribute [rw] new_instances_protected_from_scale_in # Indicates whether newly launched instances are protected from # termination by Amazon EC2 Auto Scaling when scaling in. # @return [Boolean] # # @!attribute [rw] service_linked_role_arn # The Amazon Resource Name (ARN) of the service-linked role that the # Auto Scaling group uses to call other Amazon Web Services on your # behalf. # @return [String] # # @!attribute [rw] max_instance_lifetime # The maximum amount of time, in seconds, that an instance can be in # service. # # Valid Range: Minimum value of 0. # @return [Integer] # # @!attribute [rw] capacity_rebalance # Indicates whether Capacity Rebalancing is enabled. # @return [Boolean] # # @!attribute [rw] warm_pool_configuration # The warm pool for the group. # @return [Types::WarmPoolConfiguration] # # @!attribute [rw] warm_pool_size # The current size of the warm pool. # @return [Integer] # # @!attribute [rw] context # Reserved. # @return [String] # # @!attribute [rw] desired_capacity_type # The unit of measurement for the value specified for desired # capacity. Amazon EC2 Auto Scaling supports `DesiredCapacityType` for # attribute-based instance type selection only. # @return [String] # # @!attribute [rw] default_instance_warmup # The duration of the default instance warmup, in seconds. # @return [Integer] # # @!attribute [rw] traffic_sources # The traffic sources associated with this Auto Scaling group. # @return [Array] # # @!attribute [rw] instance_maintenance_policy # An instance maintenance policy. # @return [Types::InstanceMaintenancePolicy] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingGroup AWS API Documentation # class AutoScalingGroup < Struct.new( :auto_scaling_group_name, :auto_scaling_group_arn, :launch_configuration_name, :launch_template, :mixed_instances_policy, :min_size, :max_size, :desired_capacity, :predicted_capacity, :default_cooldown, :availability_zones, :load_balancer_names, :target_group_arns, :health_check_type, :health_check_grace_period, :instances, :created_time, :suspended_processes, :placement_group, :vpc_zone_identifier, :enabled_metrics, :status, :tags, :termination_policies, :new_instances_protected_from_scale_in, :service_linked_role_arn, :max_instance_lifetime, :capacity_rebalance, :warm_pool_configuration, :warm_pool_size, :context, :desired_capacity_type, :default_instance_warmup, :traffic_sources, :instance_maintenance_policy) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_scaling_group_names # The names of the Auto Scaling groups. By default, you can only # specify up to 50 names. You can optionally increase this limit using # the `MaxRecords` property. # # If you omit this property, all Auto Scaling groups are described. # @return [Array] # # @!attribute [rw] next_token # The token for the next set of items to return. (You received this # token from a previous call.) # @return [String] # # @!attribute [rw] max_records # The maximum number of items to return with this call. The default # value is `50` and the maximum value is `100`. # @return [Integer] # # @!attribute [rw] filters # One or more filters to limit the results based on specific tags. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingGroupNamesType AWS API Documentation # class AutoScalingGroupNamesType < Struct.new( :auto_scaling_group_names, :next_token, :max_records, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_scaling_groups # The groups. # @return [Array] # # @!attribute [rw] next_token # A string that indicates that the response contains more items than # can be returned in a single response. To receive additional items, # specify this string for the `NextToken` value when requesting the # next set of items. This value is null when there are no more items # to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingGroupsType AWS API Documentation # class AutoScalingGroupsType < Struct.new( :auto_scaling_groups, :next_token) SENSITIVE = [] include Aws::Structure end # Describes an EC2 instance associated with an Auto Scaling group. # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] instance_type # The instance type of the EC2 instance. # @return [String] # # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group for the instance. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone for the instance. # @return [String] # # @!attribute [rw] lifecycle_state # The lifecycle state for the instance. The `Quarantined` state is not # used. For more information, see [Amazon EC2 Auto Scaling instance # lifecycle][1] in the *Amazon EC2 Auto Scaling User Guide*. # # Valid values: `Pending` \| `Pending:Wait` \| `Pending:Proceed` \| # `Quarantined` \| `InService` \| `Terminating` \| `Terminating:Wait` # \| `Terminating:Proceed` \| `Terminated` \| `Detaching` \| # `Detached` \| `EnteringStandby` \| `Standby` \| `Warmed:Pending` \| # `Warmed:Pending:Wait` \| `Warmed:Pending:Proceed` \| # `Warmed:Terminating` \| `Warmed:Terminating:Wait` \| # `Warmed:Terminating:Proceed` \| `Warmed:Terminated` \| # `Warmed:Stopped` \| `Warmed:Running` # # # # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-lifecycle.html # @return [String] # # @!attribute [rw] health_status # The last reported health status of this instance. `Healthy` means # that the instance is healthy and should remain in service. # `Unhealthy` means that the instance is unhealthy and Amazon EC2 Auto # Scaling should terminate and replace it. # @return [String] # # @!attribute [rw] launch_configuration_name # The launch configuration used to launch the instance. This value is # not available if you attached the instance to the Auto Scaling # group. # @return [String] # # @!attribute [rw] launch_template # The launch template for the instance. # @return [Types::LaunchTemplateSpecification] # # @!attribute [rw] protected_from_scale_in # Indicates whether the instance is protected from termination by # Amazon EC2 Auto Scaling when scaling in. # @return [Boolean] # # @!attribute [rw] weighted_capacity # The number of capacity units contributed by the instance based on # its instance type. # # Valid Range: Minimum value of 1. Maximum value of 999. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingInstanceDetails AWS API Documentation # class AutoScalingInstanceDetails < Struct.new( :instance_id, :instance_type, :auto_scaling_group_name, :availability_zone, :lifecycle_state, :health_status, :launch_configuration_name, :launch_template, :protected_from_scale_in, :weighted_capacity) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_scaling_instances # The instances. # @return [Array] # # @!attribute [rw] next_token # A string that indicates that the response contains more items than # can be returned in a single response. To receive additional items, # specify this string for the `NextToken` value when requesting the # next set of items. This value is null when there are no more items # to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingInstancesType AWS API Documentation # class AutoScalingInstancesType < Struct.new( :auto_scaling_instances, :next_token) SENSITIVE = [] include Aws::Structure end # Specifies the minimum and maximum for the `BaselineEbsBandwidthMbps` # object when you specify InstanceRequirements for an Auto Scaling # group. # # @!attribute [rw] min # The minimum value in Mbps. # @return [Integer] # # @!attribute [rw] max # The maximum value in Mbps. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BaselineEbsBandwidthMbpsRequest AWS API Documentation # class BaselineEbsBandwidthMbpsRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] failed_scheduled_actions # The names of the scheduled actions that could not be deleted, # including an error message. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchDeleteScheduledActionAnswer AWS API Documentation # class BatchDeleteScheduledActionAnswer < Struct.new( :failed_scheduled_actions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @!attribute [rw] scheduled_action_names # The names of the scheduled actions to delete. The maximum number # allowed is 50. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchDeleteScheduledActionType AWS API Documentation # class BatchDeleteScheduledActionType < Struct.new( :auto_scaling_group_name, :scheduled_action_names) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] failed_scheduled_update_group_actions # The names of the scheduled actions that could not be created or # updated, including an error message. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchPutScheduledUpdateGroupActionAnswer AWS API Documentation # class BatchPutScheduledUpdateGroupActionAnswer < Struct.new( :failed_scheduled_update_group_actions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @!attribute [rw] scheduled_update_group_actions # One or more scheduled actions. The maximum number allowed is 50. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchPutScheduledUpdateGroupActionType AWS API Documentation # class BatchPutScheduledUpdateGroupActionType < Struct.new( :auto_scaling_group_name, :scheduled_update_group_actions) SENSITIVE = [] include Aws::Structure end # Describes a block device mapping. # # @!attribute [rw] virtual_name # The name of the instance store volume (virtual device) to attach to # an instance at launch. The name must be in the form ephemeral*X* # where *X* is a number starting from zero (0), for example, # `ephemeral0`. # @return [String] # # @!attribute [rw] device_name # The device name assigned to the volume (for example, `/dev/sdh` or # `xvdh`). For more information, see [Device naming on Linux # instances][1] in the *Amazon EC2 User Guide for Linux Instances*. # # To define a block device mapping, set the device name and exactly # one of the following properties: `Ebs`, `NoDevice`, or # `VirtualName`. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html # @return [String] # # @!attribute [rw] ebs # Information to attach an EBS volume to an instance at launch. # @return [Types::Ebs] # # @!attribute [rw] no_device # Setting this value to `true` prevents a volume that is included in # the block device mapping of the AMI from being mapped to the # specified device name at launch. # # If `NoDevice` is `true` for the root device, instances might fail # the EC2 health check. In that case, Amazon EC2 Auto Scaling launches # replacement instances. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BlockDeviceMapping AWS API Documentation # class BlockDeviceMapping < Struct.new( :virtual_name, :device_name, :ebs, :no_device) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_refresh_id # The instance refresh ID associated with the request. This is the # unique ID assigned to the instance refresh when it was started. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CancelInstanceRefreshAnswer AWS API Documentation # class CancelInstanceRefreshAnswer < Struct.new( :instance_refresh_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_scaling_group_name # The name of the Auto Scaling group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CancelInstanceRefreshType AWS API Documentation # class CancelInstanceRefreshType < Struct.new( :auto_scaling_group_name) SENSITIVE = [] include Aws::Structure end # A `GetPredictiveScalingForecast` call returns the capacity forecast # for a predictive scaling policy. This structure includes the data # points for that capacity forecast, along with the timestamps of those # data points. # # @!attribute [rw] timestamps # The timestamps for the data points, in UTC format. # @return [Array