def update(options = {})
      options = options.merge(auto_scaling_group_name: @name)
      resp = @client.update_auto_scaling_group(options)
      AutoScalingGroup.new(
        name: options[:auto_scaling_group_name],
        client: @client
      )
    end
def update(options = {})
      options = options.merge(auto_scaling_group_name: @name)
      resp = @client.update_auto_scaling_group(options)
      AutoScalingGroup.new(
        name: options[:auto_scaling_group_name],
        client: @client
      )
    end
@example Request syntax with placeholder values

   autoscalinggroup = auto_scaling_group.update({
     launch_configuration_name: "ResourceName",
     launch_template: {
       launch_template_id: "XmlStringMaxLen255",
       launch_template_name: "LaunchTemplateName",
       version: "XmlStringMaxLen255",
     },
     mixed_instances_policy: {
       launch_template: {
         launch_template_specification: {
           launch_template_id: "XmlStringMaxLen255",
           launch_template_name: "LaunchTemplateName",
           version: "XmlStringMaxLen255",
         },
         overrides: [
           {
             instance_type: "XmlStringMaxLen255",
           },
         ],
       },
       instances_distribution: {
         on_demand_allocation_strategy: "XmlString",
         on_demand_base_capacity: 1,
         on_demand_percentage_above_base_capacity: 1,
         spot_allocation_strategy: "XmlString",
         spot_instance_pools: 1,
         spot_max_price: "MixedInstanceSpotPrice",
       },
     },
     min_size: 1,
     max_size: 1,
     desired_capacity: 1,
     default_cooldown: 1,
     availability_zones: ["XmlStringMaxLen255"],
     health_check_type: "XmlStringMaxLen32",
     health_check_grace_period: 1,
     placement_group: "XmlStringMaxLen255",
     vpc_zone_identifier: "XmlStringMaxLen2047",
     termination_policies: ["XmlStringMaxLen1600"],
     new_instances_protected_from_scale_in: false,
     service_linked_role_arn: "ResourceName",
   })
 @param [Hash] options ({})
 @option options [String] :launch_configuration_name
   The name of the launch configuration. If you specify this parameter,
   you can't specify a launch template or a mixed instances policy.
 @option options [Types::LaunchTemplateSpecification] :launch_template
   The launch template and version to use to specify the updates. If you
   specify this parameter, you can't specify a launch configuration or a
   mixed instances policy.
 @option options [Types::MixedInstancesPolicy] :mixed_instances_policy
   The mixed instances policy to use to specify the updates. If you
   specify this parameter, you can't specify a launch configuration or a
   launch template.

   For more information, see [Auto Scaling Groups with Multiple Instance
   Types and Purchase Options][1] in the *Amazon EC2 Auto Scaling User
   Guide*.



   [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
 @option options [Integer] :min_size
   The minimum size of the Auto Scaling group.
 @option options [Integer] :max_size
   The maximum size of the Auto Scaling group.
 @option options [Integer] :desired_capacity
   The number of EC2 instances that should be running in the Auto Scaling
   group. This number must be greater than or equal to the minimum size
   of the group and less than or equal to the maximum size of the group.
 @option options [Integer] :default_cooldown
   The amount of time, in seconds, after a scaling activity completes
   before another scaling activity can start. The default value is `300`.

   For more information, see [Scaling Cooldowns][1] in the *Amazon EC2
   Auto Scaling User Guide*.



   [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html
 @option options [Array<String>] :availability_zones
   One or more Availability Zones for the group.
 @option options [String] :health_check_type
   The service to use for the health checks. The valid values are `EC2`
   and `ELB`. If you configure an Auto Scaling group to use ELB health
   checks, it considers the instance unhealthy if it fails either the EC2
   status checks or the load balancer health checks.
 @option options [Integer] :health_check_grace_period
   The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
   before checking the health status of an EC2 instance that has come
   into service. The default value is `0`.

   For more information, see [Health Checks for Auto Scaling
   Instances][1] in the *Amazon EC2 Auto Scaling User Guide*.

   Conditional: This parameter is required if you are adding an `ELB`
   health check.



   [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html
 @option options [String] :placement_group
   The name of the placement group into which to launch your instances,
   if any. A placement group is a logical grouping of instances within a
   single Availability Zone. You cannot specify multiple Availability
   Zones and a placement group. For more information, see [Placement
   Groups][1] in the *Amazon EC2 User Guide for Linux Instances*.



   [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html
 @option options [String] :vpc_zone_identifier
   A comma-separated list of subnet IDs, if you are launching into a VPC.

   If you specify `VPCZoneIdentifier` with `AvailabilityZones`, the
   subnets that you specify for this parameter must reside in those
   Availability Zones.
 @option options [Array<String>] :termination_policies
   A standalone termination policy or a list of termination policies used
   to select the instance to terminate. The policies are executed in the
   order that they are listed.

   For more information, see [Controlling Which Instances Auto Scaling
   Terminates During Scale In][1] in the *Amazon EC2 Auto Scaling User
   Guide*.



   [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html
 @option options [Boolean] :new_instances_protected_from_scale_in
   Indicates whether newly launched instances are protected from
   termination by Amazon EC2 Auto Scaling when scaling in.

   For more information about preventing instances from terminating on
   scale in, see [Instance Protection][1] in the *Amazon EC2 Auto Scaling
   User Guide*.



   [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection
 @option options [String] :service_linked_role_arn
   The Amazon Resource Name (ARN) of the service-linked role that the
   Auto Scaling group uses to call other AWS services on your behalf. For
   more information, see [Service-Linked Roles][1] in the *Amazon EC2
   Auto Scaling User Guide*.



   [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html
 @return [AutoScalingGroup]