aws-sdk-go: github.com/aws/aws-sdk-go/service/autoscaling Index | Examples | Files | Directories

package autoscaling

import "github.com/aws/aws-sdk-go/service/autoscaling"

Package autoscaling provides the client and types for making API requests to Auto Scaling.

Amazon EC2 Auto Scaling is designed to automatically launch or terminate EC2 instances based on user-defined scaling policies, scheduled actions, and health checks. Use this service with AWS Auto Scaling, Amazon CloudWatch, and Elastic Load Balancing.

For more information, including information about granting IAM users required permissions for Amazon EC2 Auto Scaling actions, see the Amazon EC2 Auto Scaling User Guide (https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html).

See https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01 for more information on this service.

See autoscaling package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/autoscaling/

Using the Client

To contact Auto Scaling with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the Auto Scaling client AutoScaling for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/autoscaling/#New

Index

Examples

Package Files

api.go doc.go errors.go service.go waiters.go

Constants

const (
    // LifecycleStatePending is a LifecycleState enum value
    LifecycleStatePending = "Pending"

    // LifecycleStatePendingWait is a LifecycleState enum value
    LifecycleStatePendingWait = "Pending:Wait"

    // LifecycleStatePendingProceed is a LifecycleState enum value
    LifecycleStatePendingProceed = "Pending:Proceed"

    // LifecycleStateQuarantined is a LifecycleState enum value
    LifecycleStateQuarantined = "Quarantined"

    // LifecycleStateInService is a LifecycleState enum value
    LifecycleStateInService = "InService"

    // LifecycleStateTerminating is a LifecycleState enum value
    LifecycleStateTerminating = "Terminating"

    // LifecycleStateTerminatingWait is a LifecycleState enum value
    LifecycleStateTerminatingWait = "Terminating:Wait"

    // LifecycleStateTerminatingProceed is a LifecycleState enum value
    LifecycleStateTerminatingProceed = "Terminating:Proceed"

    // LifecycleStateTerminated is a LifecycleState enum value
    LifecycleStateTerminated = "Terminated"

    // LifecycleStateDetaching is a LifecycleState enum value
    LifecycleStateDetaching = "Detaching"

    // LifecycleStateDetached is a LifecycleState enum value
    LifecycleStateDetached = "Detached"

    // LifecycleStateEnteringStandby is a LifecycleState enum value
    LifecycleStateEnteringStandby = "EnteringStandby"

    // LifecycleStateStandby is a LifecycleState enum value
    LifecycleStateStandby = "Standby"
)
const (
    // MetricStatisticAverage is a MetricStatistic enum value
    MetricStatisticAverage = "Average"

    // MetricStatisticMinimum is a MetricStatistic enum value
    MetricStatisticMinimum = "Minimum"

    // MetricStatisticMaximum is a MetricStatistic enum value
    MetricStatisticMaximum = "Maximum"

    // MetricStatisticSampleCount is a MetricStatistic enum value
    MetricStatisticSampleCount = "SampleCount"

    // MetricStatisticSum is a MetricStatistic enum value
    MetricStatisticSum = "Sum"
)
const (
    // MetricTypeAsgaverageCpuutilization is a MetricType enum value
    MetricTypeAsgaverageCpuutilization = "ASGAverageCPUUtilization"

    // MetricTypeAsgaverageNetworkIn is a MetricType enum value
    MetricTypeAsgaverageNetworkIn = "ASGAverageNetworkIn"

    // MetricTypeAsgaverageNetworkOut is a MetricType enum value
    MetricTypeAsgaverageNetworkOut = "ASGAverageNetworkOut"

    // MetricTypeAlbrequestCountPerTarget is a MetricType enum value
    MetricTypeAlbrequestCountPerTarget = "ALBRequestCountPerTarget"
)
const (
    // ScalingActivityStatusCodePendingSpotBidPlacement is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodePendingSpotBidPlacement = "PendingSpotBidPlacement"

    // ScalingActivityStatusCodeWaitingForSpotInstanceRequestId is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeWaitingForSpotInstanceRequestId = "WaitingForSpotInstanceRequestId"

    // ScalingActivityStatusCodeWaitingForSpotInstanceId is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeWaitingForSpotInstanceId = "WaitingForSpotInstanceId"

    // ScalingActivityStatusCodeWaitingForInstanceId is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeWaitingForInstanceId = "WaitingForInstanceId"

    // ScalingActivityStatusCodePreInService is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodePreInService = "PreInService"

    // ScalingActivityStatusCodeInProgress is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeInProgress = "InProgress"

    // ScalingActivityStatusCodeWaitingForElbconnectionDraining is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeWaitingForElbconnectionDraining = "WaitingForELBConnectionDraining"

    // ScalingActivityStatusCodeMidLifecycleAction is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeMidLifecycleAction = "MidLifecycleAction"

    // ScalingActivityStatusCodeWaitingForInstanceWarmup is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeWaitingForInstanceWarmup = "WaitingForInstanceWarmup"

    // ScalingActivityStatusCodeSuccessful is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeSuccessful = "Successful"

    // ScalingActivityStatusCodeFailed is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeFailed = "Failed"

    // ScalingActivityStatusCodeCancelled is a ScalingActivityStatusCode enum value
    ScalingActivityStatusCodeCancelled = "Cancelled"
)
const (

    // ErrCodeAlreadyExistsFault for service response error code
    // "AlreadyExists".
    //
    // You already have an Auto Scaling group or launch configuration with this
    // name.
    ErrCodeAlreadyExistsFault = "AlreadyExists"

    // ErrCodeInvalidNextToken for service response error code
    // "InvalidNextToken".
    //
    // The NextToken value is not valid.
    ErrCodeInvalidNextToken = "InvalidNextToken"

    // ErrCodeLimitExceededFault for service response error code
    // "LimitExceeded".
    //
    // You have already reached a limit for your Amazon EC2 Auto Scaling resources
    // (for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
    // For more information, see DescribeAccountLimits.
    ErrCodeLimitExceededFault = "LimitExceeded"

    // ErrCodeResourceContentionFault for service response error code
    // "ResourceContention".
    //
    // You already have a pending update to an Amazon EC2 Auto Scaling resource
    // (for example, an Auto Scaling group, instance, or load balancer).
    ErrCodeResourceContentionFault = "ResourceContention"

    // ErrCodeResourceInUseFault for service response error code
    // "ResourceInUse".
    //
    // The operation can't be performed because the resource is in use.
    ErrCodeResourceInUseFault = "ResourceInUse"

    // ErrCodeScalingActivityInProgressFault for service response error code
    // "ScalingActivityInProgress".
    //
    // The operation can't be performed because there are scaling activities in
    // progress.
    ErrCodeScalingActivityInProgressFault = "ScalingActivityInProgress"

    // ErrCodeServiceLinkedRoleFailure for service response error code
    // "ServiceLinkedRoleFailure".
    //
    // The service-linked role is not yet ready for use.
    ErrCodeServiceLinkedRoleFailure = "ServiceLinkedRoleFailure"
)
const (
    ServiceName = "autoscaling"  // Name of service.
    EndpointsID = ServiceName    // ID to lookup a service endpoint with.
    ServiceID   = "Auto Scaling" // ServiceID is a unique identifer of a specific service.
)

Service information constants

type Activity Uses

type Activity struct {

    // The ID of the activity.
    //
    // ActivityId is a required field
    ActivityId *string `type:"string" required:"true"`

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The reason the activity began.
    //
    // Cause is a required field
    Cause *string `min:"1" type:"string" required:"true"`

    // A friendly, more verbose description of the activity.
    Description *string `type:"string"`

    // The details about the activity.
    Details *string `type:"string"`

    // The end time of the activity.
    EndTime *time.Time `type:"timestamp"`

    // A value between 0 and 100 that indicates the progress of the activity.
    Progress *int64 `type:"integer"`

    // The start time of the activity.
    //
    // StartTime is a required field
    StartTime *time.Time `type:"timestamp" required:"true"`

    // The current status of the activity.
    //
    // StatusCode is a required field
    StatusCode *string `type:"string" required:"true" enum:"ScalingActivityStatusCode"`

    // A friendly, more verbose description of the activity status.
    StatusMessage *string `min:"1" type:"string"`
    // contains filtered or unexported fields
}

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.

func (Activity) GoString Uses

func (s Activity) GoString() string

GoString returns the string representation

func (*Activity) SetActivityId Uses

func (s *Activity) SetActivityId(v string) *Activity

SetActivityId sets the ActivityId field's value.

func (*Activity) SetAutoScalingGroupName Uses

func (s *Activity) SetAutoScalingGroupName(v string) *Activity

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*Activity) SetCause Uses

func (s *Activity) SetCause(v string) *Activity

SetCause sets the Cause field's value.

func (*Activity) SetDescription Uses

func (s *Activity) SetDescription(v string) *Activity

SetDescription sets the Description field's value.

func (*Activity) SetDetails Uses

func (s *Activity) SetDetails(v string) *Activity

SetDetails sets the Details field's value.

func (*Activity) SetEndTime Uses

func (s *Activity) SetEndTime(v time.Time) *Activity

SetEndTime sets the EndTime field's value.

func (*Activity) SetProgress Uses

func (s *Activity) SetProgress(v int64) *Activity

SetProgress sets the Progress field's value.

func (*Activity) SetStartTime Uses

func (s *Activity) SetStartTime(v time.Time) *Activity

SetStartTime sets the StartTime field's value.

func (*Activity) SetStatusCode Uses

func (s *Activity) SetStatusCode(v string) *Activity

SetStatusCode sets the StatusCode field's value.

func (*Activity) SetStatusMessage Uses

func (s *Activity) SetStatusMessage(v string) *Activity

SetStatusMessage sets the StatusMessage field's value.

func (Activity) String Uses

func (s Activity) String() string

String returns the string representation

type AdjustmentType Uses

type AdjustmentType struct {

    // The policy adjustment type. The valid values are ChangeInCapacity, ExactCapacity,
    // and PercentChangeInCapacity.
    AdjustmentType *string `min:"1" type:"string"`
    // contains filtered or unexported fields
}

Describes a policy adjustment type.

func (AdjustmentType) GoString Uses

func (s AdjustmentType) GoString() string

GoString returns the string representation

func (*AdjustmentType) SetAdjustmentType Uses

func (s *AdjustmentType) SetAdjustmentType(v string) *AdjustmentType

SetAdjustmentType sets the AdjustmentType field's value.

func (AdjustmentType) String Uses

func (s AdjustmentType) String() string

String returns the string representation

type Alarm Uses

type Alarm struct {

    // The Amazon Resource Name (ARN) of the alarm.
    AlarmARN *string `min:"1" type:"string"`

    // The name of the alarm.
    AlarmName *string `min:"1" type:"string"`
    // contains filtered or unexported fields
}

Describes an alarm.

func (Alarm) GoString Uses

func (s Alarm) GoString() string

GoString returns the string representation

func (*Alarm) SetAlarmARN Uses

func (s *Alarm) SetAlarmARN(v string) *Alarm

SetAlarmARN sets the AlarmARN field's value.

func (*Alarm) SetAlarmName Uses

func (s *Alarm) SetAlarmName(v string) *Alarm

SetAlarmName sets the AlarmName field's value.

func (Alarm) String Uses

func (s Alarm) String() string

String returns the string representation

type AttachInstancesInput Uses

type AttachInstancesInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The IDs of the instances. You can specify up to 20 instances.
    InstanceIds []*string `type:"list"`
    // contains filtered or unexported fields
}

func (AttachInstancesInput) GoString Uses

func (s AttachInstancesInput) GoString() string

GoString returns the string representation

func (*AttachInstancesInput) SetAutoScalingGroupName Uses

func (s *AttachInstancesInput) SetAutoScalingGroupName(v string) *AttachInstancesInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*AttachInstancesInput) SetInstanceIds Uses

func (s *AttachInstancesInput) SetInstanceIds(v []*string) *AttachInstancesInput

SetInstanceIds sets the InstanceIds field's value.

func (AttachInstancesInput) String Uses

func (s AttachInstancesInput) String() string

String returns the string representation

func (*AttachInstancesInput) Validate Uses

func (s *AttachInstancesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type AttachInstancesOutput Uses

type AttachInstancesOutput struct {
    // contains filtered or unexported fields
}

func (AttachInstancesOutput) GoString Uses

func (s AttachInstancesOutput) GoString() string

GoString returns the string representation

func (AttachInstancesOutput) String Uses

func (s AttachInstancesOutput) String() string

String returns the string representation

type AttachLoadBalancerTargetGroupsInput Uses

type AttachLoadBalancerTargetGroupsInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The Amazon Resource Names (ARN) of the target groups. You can specify up
    // to 10 target groups.
    //
    // TargetGroupARNs is a required field
    TargetGroupARNs []*string `type:"list" required:"true"`
    // contains filtered or unexported fields
}

func (AttachLoadBalancerTargetGroupsInput) GoString Uses

func (s AttachLoadBalancerTargetGroupsInput) GoString() string

GoString returns the string representation

func (*AttachLoadBalancerTargetGroupsInput) SetAutoScalingGroupName Uses

func (s *AttachLoadBalancerTargetGroupsInput) SetAutoScalingGroupName(v string) *AttachLoadBalancerTargetGroupsInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*AttachLoadBalancerTargetGroupsInput) SetTargetGroupARNs Uses

func (s *AttachLoadBalancerTargetGroupsInput) SetTargetGroupARNs(v []*string) *AttachLoadBalancerTargetGroupsInput

SetTargetGroupARNs sets the TargetGroupARNs field's value.

func (AttachLoadBalancerTargetGroupsInput) String Uses

func (s AttachLoadBalancerTargetGroupsInput) String() string

String returns the string representation

func (*AttachLoadBalancerTargetGroupsInput) Validate Uses

func (s *AttachLoadBalancerTargetGroupsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type AttachLoadBalancerTargetGroupsOutput Uses

type AttachLoadBalancerTargetGroupsOutput struct {
    // contains filtered or unexported fields
}

func (AttachLoadBalancerTargetGroupsOutput) GoString Uses

func (s AttachLoadBalancerTargetGroupsOutput) GoString() string

GoString returns the string representation

func (AttachLoadBalancerTargetGroupsOutput) String Uses

func (s AttachLoadBalancerTargetGroupsOutput) String() string

String returns the string representation

type AttachLoadBalancersInput Uses

type AttachLoadBalancersInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The names of the load balancers. You can specify up to 10 load balancers.
    //
    // LoadBalancerNames is a required field
    LoadBalancerNames []*string `type:"list" required:"true"`
    // contains filtered or unexported fields
}

func (AttachLoadBalancersInput) GoString Uses

func (s AttachLoadBalancersInput) GoString() string

GoString returns the string representation

func (*AttachLoadBalancersInput) SetAutoScalingGroupName Uses

func (s *AttachLoadBalancersInput) SetAutoScalingGroupName(v string) *AttachLoadBalancersInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*AttachLoadBalancersInput) SetLoadBalancerNames Uses

func (s *AttachLoadBalancersInput) SetLoadBalancerNames(v []*string) *AttachLoadBalancersInput

SetLoadBalancerNames sets the LoadBalancerNames field's value.

func (AttachLoadBalancersInput) String Uses

func (s AttachLoadBalancersInput) String() string

String returns the string representation

func (*AttachLoadBalancersInput) Validate Uses

func (s *AttachLoadBalancersInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type AttachLoadBalancersOutput Uses

type AttachLoadBalancersOutput struct {
    // contains filtered or unexported fields
}

func (AttachLoadBalancersOutput) GoString Uses

func (s AttachLoadBalancersOutput) GoString() string

GoString returns the string representation

func (AttachLoadBalancersOutput) String Uses

func (s AttachLoadBalancersOutput) String() string

String returns the string representation

type AutoScaling Uses

type AutoScaling struct {
    *client.Client
}

AutoScaling provides the API operation methods for making requests to Auto Scaling. See this package's package overview docs for details on the service.

AutoScaling methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New Uses

func New(p client.ConfigProvider, cfgs ...*aws.Config) *AutoScaling

New creates a new instance of the AutoScaling client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a AutoScaling client from just a session.
svc := autoscaling.New(mySession)

// Create a AutoScaling client with additional configuration
svc := autoscaling.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*AutoScaling) AttachInstances Uses

func (c *AutoScaling) AttachInstances(input *AttachInstancesInput) (*AttachInstancesOutput, error)

AttachInstances API operation for Auto Scaling.

Attaches one or more EC2 instances to the specified Auto Scaling group.

When you attach instances, Amazon EC2 Auto Scaling increases the desired capacity of the group by the number of instances being attached. If the number of instances being attached plus the desired capacity of the group exceeds the maximum size of the group, the operation fails.

If there is a Classic Load Balancer attached to your Auto Scaling group, the instances are also registered with the load balancer. If there are target groups attached to your Auto Scaling group, the instances are also registered with the target groups.

For more information, see Attach EC2 Instances to Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-instance-asg.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation AttachInstances for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachInstances

To attach an instance to an Auto Scaling group

This example attaches the specified instance to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.AttachInstancesInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    InstanceIds: []*string{
        aws.String("i-93633f9b"),
    },
}

result, err := svc.AttachInstances(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) AttachInstancesRequest Uses

func (c *AutoScaling) AttachInstancesRequest(input *AttachInstancesInput) (req *request.Request, output *AttachInstancesOutput)

AttachInstancesRequest generates a "aws/request.Request" representing the client's request for the AttachInstances operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See AttachInstances for more information on using the AttachInstances API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the AttachInstancesRequest method.
req, resp := client.AttachInstancesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachInstances

func (*AutoScaling) AttachInstancesWithContext Uses

func (c *AutoScaling) AttachInstancesWithContext(ctx aws.Context, input *AttachInstancesInput, opts ...request.Option) (*AttachInstancesOutput, error)

AttachInstancesWithContext is the same as AttachInstances with the addition of the ability to pass a context and additional request options.

See AttachInstances for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) AttachLoadBalancerTargetGroups Uses

func (c *AutoScaling) AttachLoadBalancerTargetGroups(input *AttachLoadBalancerTargetGroupsInput) (*AttachLoadBalancerTargetGroupsOutput, error)

AttachLoadBalancerTargetGroups API operation for Auto Scaling.

Attaches one or more target groups to the specified Auto Scaling group.

To describe the target groups for an Auto Scaling group, use DescribeLoadBalancerTargetGroups. To detach the target group from the Auto Scaling group, use DetachLoadBalancerTargetGroups.

With Application Load Balancers and Network Load Balancers, instances are registered as targets with a target group. With Classic Load Balancers, instances are registered with the load balancer. For more information, see Attaching a Load Balancer to Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-load-balancer-asg.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation AttachLoadBalancerTargetGroups for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancerTargetGroups

To attach a target group to an Auto Scaling group

This example attaches the specified target group to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.AttachLoadBalancerTargetGroupsInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    TargetGroupARNs: []*string{
        aws.String("arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067"),
    },
}

result, err := svc.AttachLoadBalancerTargetGroups(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) AttachLoadBalancerTargetGroupsRequest Uses

func (c *AutoScaling) AttachLoadBalancerTargetGroupsRequest(input *AttachLoadBalancerTargetGroupsInput) (req *request.Request, output *AttachLoadBalancerTargetGroupsOutput)

AttachLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the client's request for the AttachLoadBalancerTargetGroups operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See AttachLoadBalancerTargetGroups for more information on using the AttachLoadBalancerTargetGroups API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the AttachLoadBalancerTargetGroupsRequest method.
req, resp := client.AttachLoadBalancerTargetGroupsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancerTargetGroups

func (*AutoScaling) AttachLoadBalancerTargetGroupsWithContext Uses

func (c *AutoScaling) AttachLoadBalancerTargetGroupsWithContext(ctx aws.Context, input *AttachLoadBalancerTargetGroupsInput, opts ...request.Option) (*AttachLoadBalancerTargetGroupsOutput, error)

AttachLoadBalancerTargetGroupsWithContext is the same as AttachLoadBalancerTargetGroups with the addition of the ability to pass a context and additional request options.

See AttachLoadBalancerTargetGroups for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) AttachLoadBalancers Uses

func (c *AutoScaling) AttachLoadBalancers(input *AttachLoadBalancersInput) (*AttachLoadBalancersOutput, error)

AttachLoadBalancers API operation for Auto Scaling.

Attaches one or more Classic Load Balancers to the specified Auto Scaling group.

To attach an Application Load Balancer or a Network Load Balancer instead, see AttachLoadBalancerTargetGroups.

To describe the load balancers for an Auto Scaling group, use DescribeLoadBalancers. To detach the load balancer from the Auto Scaling group, use DetachLoadBalancers.

For more information, see Attaching a Load Balancer to Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-load-balancer-asg.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation AttachLoadBalancers for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancers

To attach a load balancer to an Auto Scaling group

This example attaches the specified load balancer to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.AttachLoadBalancersInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    LoadBalancerNames: []*string{
        aws.String("my-load-balancer"),
    },
}

result, err := svc.AttachLoadBalancers(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) AttachLoadBalancersRequest Uses

func (c *AutoScaling) AttachLoadBalancersRequest(input *AttachLoadBalancersInput) (req *request.Request, output *AttachLoadBalancersOutput)

AttachLoadBalancersRequest generates a "aws/request.Request" representing the client's request for the AttachLoadBalancers operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See AttachLoadBalancers for more information on using the AttachLoadBalancers API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the AttachLoadBalancersRequest method.
req, resp := client.AttachLoadBalancersRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancers

func (*AutoScaling) AttachLoadBalancersWithContext Uses

func (c *AutoScaling) AttachLoadBalancersWithContext(ctx aws.Context, input *AttachLoadBalancersInput, opts ...request.Option) (*AttachLoadBalancersOutput, error)

AttachLoadBalancersWithContext is the same as AttachLoadBalancers with the addition of the ability to pass a context and additional request options.

See AttachLoadBalancers for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) BatchDeleteScheduledAction Uses

func (c *AutoScaling) BatchDeleteScheduledAction(input *BatchDeleteScheduledActionInput) (*BatchDeleteScheduledActionOutput, error)

BatchDeleteScheduledAction API operation for Auto Scaling.

Deletes one or more scheduled actions for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation BatchDeleteScheduledAction for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchDeleteScheduledAction

func (*AutoScaling) BatchDeleteScheduledActionRequest Uses

func (c *AutoScaling) BatchDeleteScheduledActionRequest(input *BatchDeleteScheduledActionInput) (req *request.Request, output *BatchDeleteScheduledActionOutput)

BatchDeleteScheduledActionRequest generates a "aws/request.Request" representing the client's request for the BatchDeleteScheduledAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See BatchDeleteScheduledAction for more information on using the BatchDeleteScheduledAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the BatchDeleteScheduledActionRequest method.
req, resp := client.BatchDeleteScheduledActionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchDeleteScheduledAction

func (*AutoScaling) BatchDeleteScheduledActionWithContext Uses

func (c *AutoScaling) BatchDeleteScheduledActionWithContext(ctx aws.Context, input *BatchDeleteScheduledActionInput, opts ...request.Option) (*BatchDeleteScheduledActionOutput, error)

BatchDeleteScheduledActionWithContext is the same as BatchDeleteScheduledAction with the addition of the ability to pass a context and additional request options.

See BatchDeleteScheduledAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) BatchPutScheduledUpdateGroupAction Uses

func (c *AutoScaling) BatchPutScheduledUpdateGroupAction(input *BatchPutScheduledUpdateGroupActionInput) (*BatchPutScheduledUpdateGroupActionOutput, error)

BatchPutScheduledUpdateGroupAction API operation for Auto Scaling.

Creates or updates one or more scheduled scaling actions for an Auto Scaling group. If you leave a parameter unspecified when updating a scheduled scaling action, the corresponding value remains unchanged.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation BatchPutScheduledUpdateGroupAction for usage and error information.

Returned Error Codes:

* ErrCodeAlreadyExistsFault "AlreadyExists"
You already have an Auto Scaling group or launch configuration with this
name.

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchPutScheduledUpdateGroupAction

func (*AutoScaling) BatchPutScheduledUpdateGroupActionRequest Uses

func (c *AutoScaling) BatchPutScheduledUpdateGroupActionRequest(input *BatchPutScheduledUpdateGroupActionInput) (req *request.Request, output *BatchPutScheduledUpdateGroupActionOutput)

BatchPutScheduledUpdateGroupActionRequest generates a "aws/request.Request" representing the client's request for the BatchPutScheduledUpdateGroupAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See BatchPutScheduledUpdateGroupAction for more information on using the BatchPutScheduledUpdateGroupAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the BatchPutScheduledUpdateGroupActionRequest method.
req, resp := client.BatchPutScheduledUpdateGroupActionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchPutScheduledUpdateGroupAction

func (*AutoScaling) BatchPutScheduledUpdateGroupActionWithContext Uses

func (c *AutoScaling) BatchPutScheduledUpdateGroupActionWithContext(ctx aws.Context, input *BatchPutScheduledUpdateGroupActionInput, opts ...request.Option) (*BatchPutScheduledUpdateGroupActionOutput, error)

BatchPutScheduledUpdateGroupActionWithContext is the same as BatchPutScheduledUpdateGroupAction with the addition of the ability to pass a context and additional request options.

See BatchPutScheduledUpdateGroupAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) CompleteLifecycleAction Uses

func (c *AutoScaling) CompleteLifecycleAction(input *CompleteLifecycleActionInput) (*CompleteLifecycleActionOutput, error)

CompleteLifecycleAction API operation for Auto Scaling.

Completes the lifecycle action for the specified token or instance with the specified result.

This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

(Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Amazon EC2 Auto Scaling launches or terminates instances.

(Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Amazon EC2 Auto Scaling to publish lifecycle notifications to the target.

Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

If you finish before the timeout period ends, complete the lifecycle action.

For more information, see Amazon EC2 Auto Scaling Lifecycle Hooks (https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation CompleteLifecycleAction for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CompleteLifecycleAction

To complete the lifecycle action

This example notifies Auto Scaling that the specified lifecycle action is complete so that it can finish launching or terminating the instance.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.CompleteLifecycleActionInput{
    AutoScalingGroupName:  aws.String("my-auto-scaling-group"),
    LifecycleActionResult: aws.String("CONTINUE"),
    LifecycleActionToken:  aws.String("bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635"),
    LifecycleHookName:     aws.String("my-lifecycle-hook"),
}

result, err := svc.CompleteLifecycleAction(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) CompleteLifecycleActionRequest Uses

func (c *AutoScaling) CompleteLifecycleActionRequest(input *CompleteLifecycleActionInput) (req *request.Request, output *CompleteLifecycleActionOutput)

CompleteLifecycleActionRequest generates a "aws/request.Request" representing the client's request for the CompleteLifecycleAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CompleteLifecycleAction for more information on using the CompleteLifecycleAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CompleteLifecycleActionRequest method.
req, resp := client.CompleteLifecycleActionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CompleteLifecycleAction

func (*AutoScaling) CompleteLifecycleActionWithContext Uses

func (c *AutoScaling) CompleteLifecycleActionWithContext(ctx aws.Context, input *CompleteLifecycleActionInput, opts ...request.Option) (*CompleteLifecycleActionOutput, error)

CompleteLifecycleActionWithContext is the same as CompleteLifecycleAction with the addition of the ability to pass a context and additional request options.

See CompleteLifecycleAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) CreateAutoScalingGroup Uses

func (c *AutoScaling) CreateAutoScalingGroup(input *CreateAutoScalingGroupInput) (*CreateAutoScalingGroupOutput, error)

CreateAutoScalingGroup API operation for Auto Scaling.

Creates an Auto Scaling group with the specified name and attributes.

If you exceed your maximum limit of Auto Scaling groups, the call fails. For information about viewing this limit, see DescribeAccountLimits. For information about updating this limit, see Amazon EC2 Auto Scaling Limits (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation CreateAutoScalingGroup for usage and error information.

Returned Error Codes:

* ErrCodeAlreadyExistsFault "AlreadyExists"
You already have an Auto Scaling group or launch configuration with this
name.

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroup

To create an Auto Scaling group

This example creates an Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.CreateAutoScalingGroupInput{
    AutoScalingGroupName:    aws.String("my-auto-scaling-group"),
    LaunchConfigurationName: aws.String("my-launch-config"),
    MaxSize:                 aws.Int64(3),
    MinSize:                 aws.Int64(1),
    VPCZoneIdentifier:       aws.String("subnet-4176792c"),
}

result, err := svc.CreateAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeAlreadyExistsFault:
            fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error())
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

To create an Auto Scaling group with an attached load balancer

This example creates an Auto Scaling group and attaches the specified Classic Load Balancer.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.CreateAutoScalingGroupInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    AvailabilityZones: []*string{
        aws.String("us-west-2c"),
    },
    HealthCheckGracePeriod:  aws.Int64(120),
    HealthCheckType:         aws.String("ELB"),
    LaunchConfigurationName: aws.String("my-launch-config"),
    LoadBalancerNames: []*string{
        aws.String("my-load-balancer"),
    },
    MaxSize: aws.Int64(3),
    MinSize: aws.Int64(1),
}

result, err := svc.CreateAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeAlreadyExistsFault:
            fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error())
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

To create an Auto Scaling group with an attached target group

This example creates an Auto Scaling group and attaches the specified target group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.CreateAutoScalingGroupInput{
    AutoScalingGroupName:    aws.String("my-auto-scaling-group"),
    HealthCheckGracePeriod:  aws.Int64(120),
    HealthCheckType:         aws.String("ELB"),
    LaunchConfigurationName: aws.String("my-launch-config"),
    MaxSize:                 aws.Int64(3),
    MinSize:                 aws.Int64(1),
    TargetGroupARNs: []*string{
        aws.String("arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067"),
    },
    VPCZoneIdentifier: aws.String("subnet-4176792c, subnet-65ea5f08"),
}

result, err := svc.CreateAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeAlreadyExistsFault:
            fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error())
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) CreateAutoScalingGroupRequest Uses

func (c *AutoScaling) CreateAutoScalingGroupRequest(input *CreateAutoScalingGroupInput) (req *request.Request, output *CreateAutoScalingGroupOutput)

CreateAutoScalingGroupRequest generates a "aws/request.Request" representing the client's request for the CreateAutoScalingGroup operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CreateAutoScalingGroup for more information on using the CreateAutoScalingGroup API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CreateAutoScalingGroupRequest method.
req, resp := client.CreateAutoScalingGroupRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroup

func (*AutoScaling) CreateAutoScalingGroupWithContext Uses

func (c *AutoScaling) CreateAutoScalingGroupWithContext(ctx aws.Context, input *CreateAutoScalingGroupInput, opts ...request.Option) (*CreateAutoScalingGroupOutput, error)

CreateAutoScalingGroupWithContext is the same as CreateAutoScalingGroup with the addition of the ability to pass a context and additional request options.

See CreateAutoScalingGroup for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) CreateLaunchConfiguration Uses

func (c *AutoScaling) CreateLaunchConfiguration(input *CreateLaunchConfigurationInput) (*CreateLaunchConfigurationOutput, error)

CreateLaunchConfiguration API operation for Auto Scaling.

Creates a launch configuration.

If you exceed your maximum limit of launch configurations, the call fails. For information about viewing this limit, see DescribeAccountLimits. For information about updating this limit, see Amazon EC2 Auto Scaling Limits (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) in the Amazon EC2 Auto Scaling User Guide.

For more information, see Launch Configurations (https://docs.aws.amazon.com/autoscaling/ec2/userguide/LaunchConfiguration.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation CreateLaunchConfiguration for usage and error information.

Returned Error Codes:

* ErrCodeAlreadyExistsFault "AlreadyExists"
You already have an Auto Scaling group or launch configuration with this
name.

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateLaunchConfiguration

To create a launch configuration

This example creates a launch configuration.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.CreateLaunchConfigurationInput{
    IamInstanceProfile:      aws.String("my-iam-role"),
    ImageId:                 aws.String("ami-12345678"),
    InstanceType:            aws.String("m3.medium"),
    LaunchConfigurationName: aws.String("my-launch-config"),
    SecurityGroups: []*string{
        aws.String("sg-eb2af88e"),
    },
}

result, err := svc.CreateLaunchConfiguration(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeAlreadyExistsFault:
            fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error())
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) CreateLaunchConfigurationRequest Uses

func (c *AutoScaling) CreateLaunchConfigurationRequest(input *CreateLaunchConfigurationInput) (req *request.Request, output *CreateLaunchConfigurationOutput)

CreateLaunchConfigurationRequest generates a "aws/request.Request" representing the client's request for the CreateLaunchConfiguration operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CreateLaunchConfiguration for more information on using the CreateLaunchConfiguration API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CreateLaunchConfigurationRequest method.
req, resp := client.CreateLaunchConfigurationRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateLaunchConfiguration

func (*AutoScaling) CreateLaunchConfigurationWithContext Uses

func (c *AutoScaling) CreateLaunchConfigurationWithContext(ctx aws.Context, input *CreateLaunchConfigurationInput, opts ...request.Option) (*CreateLaunchConfigurationOutput, error)

CreateLaunchConfigurationWithContext is the same as CreateLaunchConfiguration with the addition of the ability to pass a context and additional request options.

See CreateLaunchConfiguration for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) CreateOrUpdateTags Uses

func (c *AutoScaling) CreateOrUpdateTags(input *CreateOrUpdateTagsInput) (*CreateOrUpdateTagsOutput, error)

CreateOrUpdateTags API operation for Auto Scaling.

Creates or updates tags for the specified Auto Scaling group.

When you specify a tag with a key that already exists, the operation overwrites the previous tag definition, and you do not get an error message.

For more information, see Tagging Auto Scaling Groups and Instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-tagging.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation CreateOrUpdateTags for usage and error information.

Returned Error Codes:

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeAlreadyExistsFault "AlreadyExists"
You already have an Auto Scaling group or launch configuration with this
name.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeResourceInUseFault "ResourceInUse"
The operation can't be performed because the resource is in use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateOrUpdateTags

To create or update tags for an Auto Scaling group

This example adds two tags to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.CreateOrUpdateTagsInput{
    Tags: []*autoscaling.Tag{
        {
            Key:               aws.String("Role"),
            PropagateAtLaunch: aws.Bool(true),
            ResourceId:        aws.String("my-auto-scaling-group"),
            ResourceType:      aws.String("auto-scaling-group"),
            Value:             aws.String("WebServer"),
        },
        {
            Key:               aws.String("Dept"),
            PropagateAtLaunch: aws.Bool(true),
            ResourceId:        aws.String("my-auto-scaling-group"),
            ResourceType:      aws.String("auto-scaling-group"),
            Value:             aws.String("Research"),
        },
    },
}

result, err := svc.CreateOrUpdateTags(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeAlreadyExistsFault:
            fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeResourceInUseFault:
            fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) CreateOrUpdateTagsRequest Uses

func (c *AutoScaling) CreateOrUpdateTagsRequest(input *CreateOrUpdateTagsInput) (req *request.Request, output *CreateOrUpdateTagsOutput)

CreateOrUpdateTagsRequest generates a "aws/request.Request" representing the client's request for the CreateOrUpdateTags operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CreateOrUpdateTags for more information on using the CreateOrUpdateTags API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CreateOrUpdateTagsRequest method.
req, resp := client.CreateOrUpdateTagsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateOrUpdateTags

func (*AutoScaling) CreateOrUpdateTagsWithContext Uses

func (c *AutoScaling) CreateOrUpdateTagsWithContext(ctx aws.Context, input *CreateOrUpdateTagsInput, opts ...request.Option) (*CreateOrUpdateTagsOutput, error)

CreateOrUpdateTagsWithContext is the same as CreateOrUpdateTags with the addition of the ability to pass a context and additional request options.

See CreateOrUpdateTags for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DeleteAutoScalingGroup Uses

func (c *AutoScaling) DeleteAutoScalingGroup(input *DeleteAutoScalingGroupInput) (*DeleteAutoScalingGroupOutput, error)

DeleteAutoScalingGroup API operation for Auto Scaling.

Deletes the specified Auto Scaling group.

If the group has instances or scaling activities in progress, you must specify the option to force the deletion in order for it to succeed.

If the group has policies, deleting the group deletes the policies, the underlying alarm actions, and any alarm that no longer has an associated action.

To remove instances from the Auto Scaling group before deleting it, call DetachInstances with the list of instances and the option to decrement the desired capacity. This ensures that Amazon EC2 Auto Scaling does not launch replacement instances.

To terminate all instances before deleting the Auto Scaling group, call UpdateAutoScalingGroup and set the minimum size and desired capacity of the Auto Scaling group to zero.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteAutoScalingGroup for usage and error information.

Returned Error Codes:

* ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress"
The operation can't be performed because there are scaling activities in
progress.

* ErrCodeResourceInUseFault "ResourceInUse"
The operation can't be performed because the resource is in use.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteAutoScalingGroup

To delete an Auto Scaling group

This example deletes the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DeleteAutoScalingGroupInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
}

result, err := svc.DeleteAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeScalingActivityInProgressFault:
            fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error())
        case autoscaling.ErrCodeResourceInUseFault:
            fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

To delete an Auto Scaling group and all its instances

This example deletes the specified Auto Scaling group and all its instances.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DeleteAutoScalingGroupInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    ForceDelete:          aws.Bool(true),
}

result, err := svc.DeleteAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeScalingActivityInProgressFault:
            fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error())
        case autoscaling.ErrCodeResourceInUseFault:
            fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DeleteAutoScalingGroupRequest Uses

func (c *AutoScaling) DeleteAutoScalingGroupRequest(input *DeleteAutoScalingGroupInput) (req *request.Request, output *DeleteAutoScalingGroupOutput)

DeleteAutoScalingGroupRequest generates a "aws/request.Request" representing the client's request for the DeleteAutoScalingGroup operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteAutoScalingGroup for more information on using the DeleteAutoScalingGroup API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteAutoScalingGroupRequest method.
req, resp := client.DeleteAutoScalingGroupRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteAutoScalingGroup

func (*AutoScaling) DeleteAutoScalingGroupWithContext Uses

func (c *AutoScaling) DeleteAutoScalingGroupWithContext(ctx aws.Context, input *DeleteAutoScalingGroupInput, opts ...request.Option) (*DeleteAutoScalingGroupOutput, error)

DeleteAutoScalingGroupWithContext is the same as DeleteAutoScalingGroup with the addition of the ability to pass a context and additional request options.

See DeleteAutoScalingGroup for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DeleteLaunchConfiguration Uses

func (c *AutoScaling) DeleteLaunchConfiguration(input *DeleteLaunchConfigurationInput) (*DeleteLaunchConfigurationOutput, error)

DeleteLaunchConfiguration API operation for Auto Scaling.

Deletes the specified launch configuration.

The launch configuration must not be attached to an Auto Scaling group. When this call completes, the launch configuration is no longer available for use.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteLaunchConfiguration for usage and error information.

Returned Error Codes:

* ErrCodeResourceInUseFault "ResourceInUse"
The operation can't be performed because the resource is in use.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteLaunchConfiguration

To delete a launch configuration

This example deletes the specified launch configuration.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DeleteLaunchConfigurationInput{
    LaunchConfigurationName: aws.String("my-launch-config"),
}

result, err := svc.DeleteLaunchConfiguration(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceInUseFault:
            fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DeleteLaunchConfigurationRequest Uses

func (c *AutoScaling) DeleteLaunchConfigurationRequest(input *DeleteLaunchConfigurationInput) (req *request.Request, output *DeleteLaunchConfigurationOutput)

DeleteLaunchConfigurationRequest generates a "aws/request.Request" representing the client's request for the DeleteLaunchConfiguration operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteLaunchConfiguration for more information on using the DeleteLaunchConfiguration API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteLaunchConfigurationRequest method.
req, resp := client.DeleteLaunchConfigurationRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteLaunchConfiguration

func (*AutoScaling) DeleteLaunchConfigurationWithContext Uses

func (c *AutoScaling) DeleteLaunchConfigurationWithContext(ctx aws.Context, input *DeleteLaunchConfigurationInput, opts ...request.Option) (*DeleteLaunchConfigurationOutput, error)

DeleteLaunchConfigurationWithContext is the same as DeleteLaunchConfiguration with the addition of the ability to pass a context and additional request options.

See DeleteLaunchConfiguration for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DeleteLifecycleHook Uses

func (c *AutoScaling) DeleteLifecycleHook(input *DeleteLifecycleHookInput) (*DeleteLifecycleHookOutput, error)

DeleteLifecycleHook API operation for Auto Scaling.

Deletes the specified lifecycle hook.

If there are any outstanding lifecycle actions, they are completed first (ABANDON for launching instances, CONTINUE for terminating instances).

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteLifecycleHook for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteLifecycleHook

To delete a lifecycle hook

This example deletes the specified lifecycle hook.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DeleteLifecycleHookInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    LifecycleHookName:    aws.String("my-lifecycle-hook"),
}

result, err := svc.DeleteLifecycleHook(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DeleteLifecycleHookRequest Uses

func (c *AutoScaling) DeleteLifecycleHookRequest(input *DeleteLifecycleHookInput) (req *request.Request, output *DeleteLifecycleHookOutput)

DeleteLifecycleHookRequest generates a "aws/request.Request" representing the client's request for the DeleteLifecycleHook operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteLifecycleHook for more information on using the DeleteLifecycleHook API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteLifecycleHookRequest method.
req, resp := client.DeleteLifecycleHookRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteLifecycleHook

func (*AutoScaling) DeleteLifecycleHookWithContext Uses

func (c *AutoScaling) DeleteLifecycleHookWithContext(ctx aws.Context, input *DeleteLifecycleHookInput, opts ...request.Option) (*DeleteLifecycleHookOutput, error)

DeleteLifecycleHookWithContext is the same as DeleteLifecycleHook with the addition of the ability to pass a context and additional request options.

See DeleteLifecycleHook for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DeleteNotificationConfiguration Uses

func (c *AutoScaling) DeleteNotificationConfiguration(input *DeleteNotificationConfigurationInput) (*DeleteNotificationConfigurationOutput, error)

DeleteNotificationConfiguration API operation for Auto Scaling.

Deletes the specified notification.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteNotificationConfiguration for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteNotificationConfiguration

To delete an Auto Scaling notification

This example deletes the specified notification from the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DeleteNotificationConfigurationInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    TopicARN:             aws.String("arn:aws:sns:us-west-2:123456789012:my-sns-topic"),
}

result, err := svc.DeleteNotificationConfiguration(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DeleteNotificationConfigurationRequest Uses

func (c *AutoScaling) DeleteNotificationConfigurationRequest(input *DeleteNotificationConfigurationInput) (req *request.Request, output *DeleteNotificationConfigurationOutput)

DeleteNotificationConfigurationRequest generates a "aws/request.Request" representing the client's request for the DeleteNotificationConfiguration operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteNotificationConfiguration for more information on using the DeleteNotificationConfiguration API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteNotificationConfigurationRequest method.
req, resp := client.DeleteNotificationConfigurationRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteNotificationConfiguration

func (*AutoScaling) DeleteNotificationConfigurationWithContext Uses

func (c *AutoScaling) DeleteNotificationConfigurationWithContext(ctx aws.Context, input *DeleteNotificationConfigurationInput, opts ...request.Option) (*DeleteNotificationConfigurationOutput, error)

DeleteNotificationConfigurationWithContext is the same as DeleteNotificationConfiguration with the addition of the ability to pass a context and additional request options.

See DeleteNotificationConfiguration for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DeletePolicy Uses

func (c *AutoScaling) DeletePolicy(input *DeletePolicyInput) (*DeletePolicyOutput, error)

DeletePolicy API operation for Auto Scaling.

Deletes the specified scaling policy.

Deleting either a step scaling policy or a simple scaling policy deletes the underlying alarm action, but does not delete the alarm, even if it no longer has an associated action.

For more information, see Deleting a Scaling Policy (https://docs.aws.amazon.com/autoscaling/ec2/userguide/deleting-scaling-policy.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeletePolicy for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeletePolicy

To delete an Auto Scaling policy

This example deletes the specified Auto Scaling policy.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DeletePolicyInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    PolicyName:           aws.String("ScaleIn"),
}

result, err := svc.DeletePolicy(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DeletePolicyRequest Uses

func (c *AutoScaling) DeletePolicyRequest(input *DeletePolicyInput) (req *request.Request, output *DeletePolicyOutput)

DeletePolicyRequest generates a "aws/request.Request" representing the client's request for the DeletePolicy operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeletePolicy for more information on using the DeletePolicy API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeletePolicyRequest method.
req, resp := client.DeletePolicyRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeletePolicy

func (*AutoScaling) DeletePolicyWithContext Uses

func (c *AutoScaling) DeletePolicyWithContext(ctx aws.Context, input *DeletePolicyInput, opts ...request.Option) (*DeletePolicyOutput, error)

DeletePolicyWithContext is the same as DeletePolicy with the addition of the ability to pass a context and additional request options.

See DeletePolicy for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DeleteScheduledAction Uses

func (c *AutoScaling) DeleteScheduledAction(input *DeleteScheduledActionInput) (*DeleteScheduledActionOutput, error)

DeleteScheduledAction API operation for Auto Scaling.

Deletes the specified scheduled action.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteScheduledAction for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteScheduledAction

To delete a scheduled action from an Auto Scaling group

This example deletes the specified scheduled action from the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DeleteScheduledActionInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    ScheduledActionName:  aws.String("my-scheduled-action"),
}

result, err := svc.DeleteScheduledAction(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DeleteScheduledActionRequest Uses

func (c *AutoScaling) DeleteScheduledActionRequest(input *DeleteScheduledActionInput) (req *request.Request, output *DeleteScheduledActionOutput)

DeleteScheduledActionRequest generates a "aws/request.Request" representing the client's request for the DeleteScheduledAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteScheduledAction for more information on using the DeleteScheduledAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteScheduledActionRequest method.
req, resp := client.DeleteScheduledActionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteScheduledAction

func (*AutoScaling) DeleteScheduledActionWithContext Uses

func (c *AutoScaling) DeleteScheduledActionWithContext(ctx aws.Context, input *DeleteScheduledActionInput, opts ...request.Option) (*DeleteScheduledActionOutput, error)

DeleteScheduledActionWithContext is the same as DeleteScheduledAction with the addition of the ability to pass a context and additional request options.

See DeleteScheduledAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DeleteTags Uses

func (c *AutoScaling) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error)

DeleteTags API operation for Auto Scaling.

Deletes the specified tags.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteTags for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeResourceInUseFault "ResourceInUse"
The operation can't be performed because the resource is in use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteTags

To delete a tag from an Auto Scaling group

This example deletes the specified tag from the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DeleteTagsInput{
    Tags: []*autoscaling.Tag{
        {
            Key:          aws.String("Dept"),
            ResourceId:   aws.String("my-auto-scaling-group"),
            ResourceType: aws.String("auto-scaling-group"),
            Value:        aws.String("Research"),
        },
    },
}

result, err := svc.DeleteTags(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeResourceInUseFault:
            fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DeleteTagsRequest Uses

func (c *AutoScaling) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput)

DeleteTagsRequest generates a "aws/request.Request" representing the client's request for the DeleteTags operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteTags for more information on using the DeleteTags API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteTagsRequest method.
req, resp := client.DeleteTagsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteTags

func (*AutoScaling) DeleteTagsWithContext Uses

func (c *AutoScaling) DeleteTagsWithContext(ctx aws.Context, input *DeleteTagsInput, opts ...request.Option) (*DeleteTagsOutput, error)

DeleteTagsWithContext is the same as DeleteTags with the addition of the ability to pass a context and additional request options.

See DeleteTags for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeAccountLimits Uses

func (c *AutoScaling) DescribeAccountLimits(input *DescribeAccountLimitsInput) (*DescribeAccountLimitsOutput, error)

DescribeAccountLimits API operation for Auto Scaling.

Describes the current Amazon EC2 Auto Scaling resource limits for your AWS account.

For information about requesting an increase in these limits, see Amazon EC2 Auto Scaling Limits (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAccountLimits for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAccountLimits

To describe your Auto Scaling account limits

This example describes the Auto Scaling limits for your AWS account.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeAccountLimitsInput{}

result, err := svc.DescribeAccountLimits(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeAccountLimitsRequest Uses

func (c *AutoScaling) DescribeAccountLimitsRequest(input *DescribeAccountLimitsInput) (req *request.Request, output *DescribeAccountLimitsOutput)

DescribeAccountLimitsRequest generates a "aws/request.Request" representing the client's request for the DescribeAccountLimits operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAccountLimits for more information on using the DescribeAccountLimits API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAccountLimitsRequest method.
req, resp := client.DescribeAccountLimitsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAccountLimits

func (*AutoScaling) DescribeAccountLimitsWithContext Uses

func (c *AutoScaling) DescribeAccountLimitsWithContext(ctx aws.Context, input *DescribeAccountLimitsInput, opts ...request.Option) (*DescribeAccountLimitsOutput, error)

DescribeAccountLimitsWithContext is the same as DescribeAccountLimits with the addition of the ability to pass a context and additional request options.

See DescribeAccountLimits for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeAdjustmentTypes Uses

func (c *AutoScaling) DescribeAdjustmentTypes(input *DescribeAdjustmentTypesInput) (*DescribeAdjustmentTypesOutput, error)

DescribeAdjustmentTypes API operation for Auto Scaling.

Describes the policy adjustment types for use with PutScalingPolicy.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAdjustmentTypes for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAdjustmentTypes

To describe the Auto Scaling adjustment types

This example describes the available adjustment types.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeAdjustmentTypesInput{}

result, err := svc.DescribeAdjustmentTypes(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeAdjustmentTypesRequest Uses

func (c *AutoScaling) DescribeAdjustmentTypesRequest(input *DescribeAdjustmentTypesInput) (req *request.Request, output *DescribeAdjustmentTypesOutput)

DescribeAdjustmentTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeAdjustmentTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAdjustmentTypes for more information on using the DescribeAdjustmentTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAdjustmentTypesRequest method.
req, resp := client.DescribeAdjustmentTypesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAdjustmentTypes

func (*AutoScaling) DescribeAdjustmentTypesWithContext Uses

func (c *AutoScaling) DescribeAdjustmentTypesWithContext(ctx aws.Context, input *DescribeAdjustmentTypesInput, opts ...request.Option) (*DescribeAdjustmentTypesOutput, error)

DescribeAdjustmentTypesWithContext is the same as DescribeAdjustmentTypes with the addition of the ability to pass a context and additional request options.

See DescribeAdjustmentTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeAutoScalingGroups Uses

func (c *AutoScaling) DescribeAutoScalingGroups(input *DescribeAutoScalingGroupsInput) (*DescribeAutoScalingGroupsOutput, error)

DescribeAutoScalingGroups API operation for Auto Scaling.

Describes one or more Auto Scaling groups.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAutoScalingGroups for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextToken "InvalidNextToken"
The NextToken value is not valid.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingGroups

To describe an Auto Scaling group

This example describes the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeAutoScalingGroupsInput{
    AutoScalingGroupNames: []*string{
        aws.String("my-auto-scaling-group"),
    },
}

result, err := svc.DescribeAutoScalingGroups(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeInvalidNextToken:
            fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeAutoScalingGroupsPages Uses

func (c *AutoScaling) DescribeAutoScalingGroupsPages(input *DescribeAutoScalingGroupsInput, fn func(*DescribeAutoScalingGroupsOutput, bool) bool) error

DescribeAutoScalingGroupsPages iterates over the pages of a DescribeAutoScalingGroups operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeAutoScalingGroups method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeAutoScalingGroups operation.
pageNum := 0
err := client.DescribeAutoScalingGroupsPages(params,
    func(page *autoscaling.DescribeAutoScalingGroupsOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*AutoScaling) DescribeAutoScalingGroupsPagesWithContext Uses

func (c *AutoScaling) DescribeAutoScalingGroupsPagesWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, fn func(*DescribeAutoScalingGroupsOutput, bool) bool, opts ...request.Option) error

DescribeAutoScalingGroupsPagesWithContext same as DescribeAutoScalingGroupsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeAutoScalingGroupsRequest Uses

func (c *AutoScaling) DescribeAutoScalingGroupsRequest(input *DescribeAutoScalingGroupsInput) (req *request.Request, output *DescribeAutoScalingGroupsOutput)

DescribeAutoScalingGroupsRequest generates a "aws/request.Request" representing the client's request for the DescribeAutoScalingGroups operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAutoScalingGroups for more information on using the DescribeAutoScalingGroups API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAutoScalingGroupsRequest method.
req, resp := client.DescribeAutoScalingGroupsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingGroups

func (*AutoScaling) DescribeAutoScalingGroupsWithContext Uses

func (c *AutoScaling) DescribeAutoScalingGroupsWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, opts ...request.Option) (*DescribeAutoScalingGroupsOutput, error)

DescribeAutoScalingGroupsWithContext is the same as DescribeAutoScalingGroups with the addition of the ability to pass a context and additional request options.

See DescribeAutoScalingGroups for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeAutoScalingInstances Uses

func (c *AutoScaling) DescribeAutoScalingInstances(input *DescribeAutoScalingInstancesInput) (*DescribeAutoScalingInstancesOutput, error)

DescribeAutoScalingInstances API operation for Auto Scaling.

Describes one or more Auto Scaling instances.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAutoScalingInstances for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextToken "InvalidNextToken"
The NextToken value is not valid.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingInstances

To describe one or more Auto Scaling instances

This example describes the specified Auto Scaling instance.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeAutoScalingInstancesInput{
    InstanceIds: []*string{
        aws.String("i-4ba0837f"),
    },
}

result, err := svc.DescribeAutoScalingInstances(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeInvalidNextToken:
            fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeAutoScalingInstancesPages Uses

func (c *AutoScaling) DescribeAutoScalingInstancesPages(input *DescribeAutoScalingInstancesInput, fn func(*DescribeAutoScalingInstancesOutput, bool) bool) error

DescribeAutoScalingInstancesPages iterates over the pages of a DescribeAutoScalingInstances operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeAutoScalingInstances method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeAutoScalingInstances operation.
pageNum := 0
err := client.DescribeAutoScalingInstancesPages(params,
    func(page *autoscaling.DescribeAutoScalingInstancesOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*AutoScaling) DescribeAutoScalingInstancesPagesWithContext Uses

func (c *AutoScaling) DescribeAutoScalingInstancesPagesWithContext(ctx aws.Context, input *DescribeAutoScalingInstancesInput, fn func(*DescribeAutoScalingInstancesOutput, bool) bool, opts ...request.Option) error

DescribeAutoScalingInstancesPagesWithContext same as DescribeAutoScalingInstancesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeAutoScalingInstancesRequest Uses

func (c *AutoScaling) DescribeAutoScalingInstancesRequest(input *DescribeAutoScalingInstancesInput) (req *request.Request, output *DescribeAutoScalingInstancesOutput)

DescribeAutoScalingInstancesRequest generates a "aws/request.Request" representing the client's request for the DescribeAutoScalingInstances operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAutoScalingInstances for more information on using the DescribeAutoScalingInstances API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAutoScalingInstancesRequest method.
req, resp := client.DescribeAutoScalingInstancesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingInstances

func (*AutoScaling) DescribeAutoScalingInstancesWithContext Uses

func (c *AutoScaling) DescribeAutoScalingInstancesWithContext(ctx aws.Context, input *DescribeAutoScalingInstancesInput, opts ...request.Option) (*DescribeAutoScalingInstancesOutput, error)

DescribeAutoScalingInstancesWithContext is the same as DescribeAutoScalingInstances with the addition of the ability to pass a context and additional request options.

See DescribeAutoScalingInstances for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeAutoScalingNotificationTypes Uses

func (c *AutoScaling) DescribeAutoScalingNotificationTypes(input *DescribeAutoScalingNotificationTypesInput) (*DescribeAutoScalingNotificationTypesOutput, error)

DescribeAutoScalingNotificationTypes API operation for Auto Scaling.

Describes the notification types that are supported by Amazon EC2 Auto Scaling.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAutoScalingNotificationTypes for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingNotificationTypes

To describe the Auto Scaling notification types

This example describes the available notification types.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeAutoScalingNotificationTypesInput{}

result, err := svc.DescribeAutoScalingNotificationTypes(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeAutoScalingNotificationTypesRequest Uses

func (c *AutoScaling) DescribeAutoScalingNotificationTypesRequest(input *DescribeAutoScalingNotificationTypesInput) (req *request.Request, output *DescribeAutoScalingNotificationTypesOutput)

DescribeAutoScalingNotificationTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeAutoScalingNotificationTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAutoScalingNotificationTypes for more information on using the DescribeAutoScalingNotificationTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAutoScalingNotificationTypesRequest method.
req, resp := client.DescribeAutoScalingNotificationTypesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingNotificationTypes

func (*AutoScaling) DescribeAutoScalingNotificationTypesWithContext Uses

func (c *AutoScaling) DescribeAutoScalingNotificationTypesWithContext(ctx aws.Context, input *DescribeAutoScalingNotificationTypesInput, opts ...request.Option) (*DescribeAutoScalingNotificationTypesOutput, error)

DescribeAutoScalingNotificationTypesWithContext is the same as DescribeAutoScalingNotificationTypes with the addition of the ability to pass a context and additional request options.

See DescribeAutoScalingNotificationTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeLaunchConfigurations Uses

func (c *AutoScaling) DescribeLaunchConfigurations(input *DescribeLaunchConfigurationsInput) (*DescribeLaunchConfigurationsOutput, error)

DescribeLaunchConfigurations API operation for Auto Scaling.

Describes one or more launch configurations.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLaunchConfigurations for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextToken "InvalidNextToken"
The NextToken value is not valid.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLaunchConfigurations

To describe Auto Scaling launch configurations

This example describes the specified launch configuration.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeLaunchConfigurationsInput{
    LaunchConfigurationNames: []*string{
        aws.String("my-launch-config"),
    },
}

result, err := svc.DescribeLaunchConfigurations(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeInvalidNextToken:
            fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeLaunchConfigurationsPages Uses

func (c *AutoScaling) DescribeLaunchConfigurationsPages(input *DescribeLaunchConfigurationsInput, fn func(*DescribeLaunchConfigurationsOutput, bool) bool) error

DescribeLaunchConfigurationsPages iterates over the pages of a DescribeLaunchConfigurations operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeLaunchConfigurations method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeLaunchConfigurations operation.
pageNum := 0
err := client.DescribeLaunchConfigurationsPages(params,
    func(page *autoscaling.DescribeLaunchConfigurationsOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*AutoScaling) DescribeLaunchConfigurationsPagesWithContext Uses

func (c *AutoScaling) DescribeLaunchConfigurationsPagesWithContext(ctx aws.Context, input *DescribeLaunchConfigurationsInput, fn func(*DescribeLaunchConfigurationsOutput, bool) bool, opts ...request.Option) error

DescribeLaunchConfigurationsPagesWithContext same as DescribeLaunchConfigurationsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeLaunchConfigurationsRequest Uses

func (c *AutoScaling) DescribeLaunchConfigurationsRequest(input *DescribeLaunchConfigurationsInput) (req *request.Request, output *DescribeLaunchConfigurationsOutput)

DescribeLaunchConfigurationsRequest generates a "aws/request.Request" representing the client's request for the DescribeLaunchConfigurations operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLaunchConfigurations for more information on using the DescribeLaunchConfigurations API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLaunchConfigurationsRequest method.
req, resp := client.DescribeLaunchConfigurationsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLaunchConfigurations

func (*AutoScaling) DescribeLaunchConfigurationsWithContext Uses

func (c *AutoScaling) DescribeLaunchConfigurationsWithContext(ctx aws.Context, input *DescribeLaunchConfigurationsInput, opts ...request.Option) (*DescribeLaunchConfigurationsOutput, error)

DescribeLaunchConfigurationsWithContext is the same as DescribeLaunchConfigurations with the addition of the ability to pass a context and additional request options.

See DescribeLaunchConfigurations for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeLifecycleHookTypes Uses

func (c *AutoScaling) DescribeLifecycleHookTypes(input *DescribeLifecycleHookTypesInput) (*DescribeLifecycleHookTypesOutput, error)

DescribeLifecycleHookTypes API operation for Auto Scaling.

Describes the available types of lifecycle hooks.

The following hook types are supported:

* autoscaling:EC2_INSTANCE_LAUNCHING

* autoscaling:EC2_INSTANCE_TERMINATING

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLifecycleHookTypes for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLifecycleHookTypes

To describe the available types of lifecycle hooks

This example describes the available lifecycle hook types.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeLifecycleHookTypesInput{}

result, err := svc.DescribeLifecycleHookTypes(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeLifecycleHookTypesRequest Uses

func (c *AutoScaling) DescribeLifecycleHookTypesRequest(input *DescribeLifecycleHookTypesInput) (req *request.Request, output *DescribeLifecycleHookTypesOutput)

DescribeLifecycleHookTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeLifecycleHookTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLifecycleHookTypes for more information on using the DescribeLifecycleHookTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLifecycleHookTypesRequest method.
req, resp := client.DescribeLifecycleHookTypesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLifecycleHookTypes

func (*AutoScaling) DescribeLifecycleHookTypesWithContext Uses

func (c *AutoScaling) DescribeLifecycleHookTypesWithContext(ctx aws.Context, input *DescribeLifecycleHookTypesInput, opts ...request.Option) (*DescribeLifecycleHookTypesOutput, error)

DescribeLifecycleHookTypesWithContext is the same as DescribeLifecycleHookTypes with the addition of the ability to pass a context and additional request options.

See DescribeLifecycleHookTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeLifecycleHooks Uses

func (c *AutoScaling) DescribeLifecycleHooks(input *DescribeLifecycleHooksInput) (*DescribeLifecycleHooksOutput, error)

DescribeLifecycleHooks API operation for Auto Scaling.

Describes the lifecycle hooks for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLifecycleHooks for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLifecycleHooks

To describe your lifecycle hooks

This example describes the lifecycle hooks for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeLifecycleHooksInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
}

result, err := svc.DescribeLifecycleHooks(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeLifecycleHooksRequest Uses

func (c *AutoScaling) DescribeLifecycleHooksRequest(input *DescribeLifecycleHooksInput) (req *request.Request, output *DescribeLifecycleHooksOutput)

DescribeLifecycleHooksRequest generates a "aws/request.Request" representing the client's request for the DescribeLifecycleHooks operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLifecycleHooks for more information on using the DescribeLifecycleHooks API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLifecycleHooksRequest method.
req, resp := client.DescribeLifecycleHooksRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLifecycleHooks

func (*AutoScaling) DescribeLifecycleHooksWithContext Uses

func (c *AutoScaling) DescribeLifecycleHooksWithContext(ctx aws.Context, input *DescribeLifecycleHooksInput, opts ...request.Option) (*DescribeLifecycleHooksOutput, error)

DescribeLifecycleHooksWithContext is the same as DescribeLifecycleHooks with the addition of the ability to pass a context and additional request options.

See DescribeLifecycleHooks for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeLoadBalancerTargetGroups Uses

func (c *AutoScaling) DescribeLoadBalancerTargetGroups(input *DescribeLoadBalancerTargetGroupsInput) (*DescribeLoadBalancerTargetGroupsOutput, error)

DescribeLoadBalancerTargetGroups API operation for Auto Scaling.

Describes the target groups for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLoadBalancerTargetGroups for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLoadBalancerTargetGroups

To describe the target groups for an Auto Scaling group

This example describes the target groups attached to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeLoadBalancerTargetGroupsInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
}

result, err := svc.DescribeLoadBalancerTargetGroups(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeLoadBalancerTargetGroupsRequest Uses

func (c *AutoScaling) DescribeLoadBalancerTargetGroupsRequest(input *DescribeLoadBalancerTargetGroupsInput) (req *request.Request, output *DescribeLoadBalancerTargetGroupsOutput)

DescribeLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the client's request for the DescribeLoadBalancerTargetGroups operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLoadBalancerTargetGroups for more information on using the DescribeLoadBalancerTargetGroups API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLoadBalancerTargetGroupsRequest method.
req, resp := client.DescribeLoadBalancerTargetGroupsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLoadBalancerTargetGroups

func (*AutoScaling) DescribeLoadBalancerTargetGroupsWithContext Uses

func (c *AutoScaling) DescribeLoadBalancerTargetGroupsWithContext(ctx aws.Context, input *DescribeLoadBalancerTargetGroupsInput, opts ...request.Option) (*DescribeLoadBalancerTargetGroupsOutput, error)

DescribeLoadBalancerTargetGroupsWithContext is the same as DescribeLoadBalancerTargetGroups with the addition of the ability to pass a context and additional request options.

See DescribeLoadBalancerTargetGroups for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeLoadBalancers Uses

func (c *AutoScaling) DescribeLoadBalancers(input *DescribeLoadBalancersInput) (*DescribeLoadBalancersOutput, error)

DescribeLoadBalancers API operation for Auto Scaling.

Describes the load balancers for the specified Auto Scaling group.

This operation describes only Classic Load Balancers. If you have Application Load Balancers or Network Load Balancers, use DescribeLoadBalancerTargetGroups instead.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLoadBalancers for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLoadBalancers

To describe the load balancers for an Auto Scaling group

This example describes the load balancers attached to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeLoadBalancersInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
}

result, err := svc.DescribeLoadBalancers(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeLoadBalancersRequest Uses

func (c *AutoScaling) DescribeLoadBalancersRequest(input *DescribeLoadBalancersInput) (req *request.Request, output *DescribeLoadBalancersOutput)

DescribeLoadBalancersRequest generates a "aws/request.Request" representing the client's request for the DescribeLoadBalancers operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLoadBalancers for more information on using the DescribeLoadBalancers API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLoadBalancersRequest method.
req, resp := client.DescribeLoadBalancersRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLoadBalancers

func (*AutoScaling) DescribeLoadBalancersWithContext Uses

func (c *AutoScaling) DescribeLoadBalancersWithContext(ctx aws.Context, input *DescribeLoadBalancersInput, opts ...request.Option) (*DescribeLoadBalancersOutput, error)

DescribeLoadBalancersWithContext is the same as DescribeLoadBalancers with the addition of the ability to pass a context and additional request options.

See DescribeLoadBalancers for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeMetricCollectionTypes Uses

func (c *AutoScaling) DescribeMetricCollectionTypes(input *DescribeMetricCollectionTypesInput) (*DescribeMetricCollectionTypesOutput, error)

DescribeMetricCollectionTypes API operation for Auto Scaling.

Describes the available CloudWatch metrics for Amazon EC2 Auto Scaling.

The GroupStandbyInstances metric is not returned by default. You must explicitly request this metric when calling EnableMetricsCollection.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeMetricCollectionTypes for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeMetricCollectionTypes

To describe the Auto Scaling metric collection types

This example describes the available metric collection types.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeMetricCollectionTypesInput{}

result, err := svc.DescribeMetricCollectionTypes(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeMetricCollectionTypesRequest Uses

func (c *AutoScaling) DescribeMetricCollectionTypesRequest(input *DescribeMetricCollectionTypesInput) (req *request.Request, output *DescribeMetricCollectionTypesOutput)

DescribeMetricCollectionTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeMetricCollectionTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeMetricCollectionTypes for more information on using the DescribeMetricCollectionTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeMetricCollectionTypesRequest method.
req, resp := client.DescribeMetricCollectionTypesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeMetricCollectionTypes

func (*AutoScaling) DescribeMetricCollectionTypesWithContext Uses

func (c *AutoScaling) DescribeMetricCollectionTypesWithContext(ctx aws.Context, input *DescribeMetricCollectionTypesInput, opts ...request.Option) (*DescribeMetricCollectionTypesOutput, error)

DescribeMetricCollectionTypesWithContext is the same as DescribeMetricCollectionTypes with the addition of the ability to pass a context and additional request options.

See DescribeMetricCollectionTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeNotificationConfigurations Uses

func (c *AutoScaling) DescribeNotificationConfigurations(input *DescribeNotificationConfigurationsInput) (*DescribeNotificationConfigurationsOutput, error)

DescribeNotificationConfigurations API operation for Auto Scaling.

Describes the notification actions associated with the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeNotificationConfigurations for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextToken "InvalidNextToken"
The NextToken value is not valid.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeNotificationConfigurations

To describe Auto Scaling notification configurations

This example describes the notification configurations for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeNotificationConfigurationsInput{
    AutoScalingGroupNames: []*string{
        aws.String("my-auto-scaling-group"),
    },
}

result, err := svc.DescribeNotificationConfigurations(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeInvalidNextToken:
            fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeNotificationConfigurationsPages Uses

func (c *AutoScaling) DescribeNotificationConfigurationsPages(input *DescribeNotificationConfigurationsInput, fn func(*DescribeNotificationConfigurationsOutput, bool) bool) error

DescribeNotificationConfigurationsPages iterates over the pages of a DescribeNotificationConfigurations operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeNotificationConfigurations method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeNotificationConfigurations operation.
pageNum := 0
err := client.DescribeNotificationConfigurationsPages(params,
    func(page *autoscaling.DescribeNotificationConfigurationsOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*AutoScaling) DescribeNotificationConfigurationsPagesWithContext Uses

func (c *AutoScaling) DescribeNotificationConfigurationsPagesWithContext(ctx aws.Context, input *DescribeNotificationConfigurationsInput, fn func(*DescribeNotificationConfigurationsOutput, bool) bool, opts ...request.Option) error

DescribeNotificationConfigurationsPagesWithContext same as DescribeNotificationConfigurationsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeNotificationConfigurationsRequest Uses

func (c *AutoScaling) DescribeNotificationConfigurationsRequest(input *DescribeNotificationConfigurationsInput) (req *request.Request, output *DescribeNotificationConfigurationsOutput)

DescribeNotificationConfigurationsRequest generates a "aws/request.Request" representing the client's request for the DescribeNotificationConfigurations operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeNotificationConfigurations for more information on using the DescribeNotificationConfigurations API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeNotificationConfigurationsRequest method.
req, resp := client.DescribeNotificationConfigurationsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeNotificationConfigurations

func (*AutoScaling) DescribeNotificationConfigurationsWithContext Uses

func (c *AutoScaling) DescribeNotificationConfigurationsWithContext(ctx aws.Context, input *DescribeNotificationConfigurationsInput, opts ...request.Option) (*DescribeNotificationConfigurationsOutput, error)

DescribeNotificationConfigurationsWithContext is the same as DescribeNotificationConfigurations with the addition of the ability to pass a context and additional request options.

See DescribeNotificationConfigurations for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribePolicies Uses

func (c *AutoScaling) DescribePolicies(input *DescribePoliciesInput) (*DescribePoliciesOutput, error)

DescribePolicies API operation for Auto Scaling.

Describes the policies for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribePolicies for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextToken "InvalidNextToken"
The NextToken value is not valid.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribePolicies

To describe Auto Scaling policies

This example describes the policies for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribePoliciesInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
}

result, err := svc.DescribePolicies(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeInvalidNextToken:
            fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribePoliciesPages Uses

func (c *AutoScaling) DescribePoliciesPages(input *DescribePoliciesInput, fn func(*DescribePoliciesOutput, bool) bool) error

DescribePoliciesPages iterates over the pages of a DescribePolicies operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribePolicies method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribePolicies operation.
pageNum := 0
err := client.DescribePoliciesPages(params,
    func(page *autoscaling.DescribePoliciesOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*AutoScaling) DescribePoliciesPagesWithContext Uses

func (c *AutoScaling) DescribePoliciesPagesWithContext(ctx aws.Context, input *DescribePoliciesInput, fn func(*DescribePoliciesOutput, bool) bool, opts ...request.Option) error

DescribePoliciesPagesWithContext same as DescribePoliciesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribePoliciesRequest Uses

func (c *AutoScaling) DescribePoliciesRequest(input *DescribePoliciesInput) (req *request.Request, output *DescribePoliciesOutput)

DescribePoliciesRequest generates a "aws/request.Request" representing the client's request for the DescribePolicies operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribePolicies for more information on using the DescribePolicies API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribePoliciesRequest method.
req, resp := client.DescribePoliciesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribePolicies

func (*AutoScaling) DescribePoliciesWithContext Uses

func (c *AutoScaling) DescribePoliciesWithContext(ctx aws.Context, input *DescribePoliciesInput, opts ...request.Option) (*DescribePoliciesOutput, error)

DescribePoliciesWithContext is the same as DescribePolicies with the addition of the ability to pass a context and additional request options.

See DescribePolicies for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeScalingActivities Uses

func (c *AutoScaling) DescribeScalingActivities(input *DescribeScalingActivitiesInput) (*DescribeScalingActivitiesOutput, error)

DescribeScalingActivities API operation for Auto Scaling.

Describes one or more scaling activities for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeScalingActivities for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextToken "InvalidNextToken"
The NextToken value is not valid.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScalingActivities

To describe the scaling activities for an Auto Scaling group

This example describes the scaling activities for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeScalingActivitiesInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
}

result, err := svc.DescribeScalingActivities(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeInvalidNextToken:
            fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeScalingActivitiesPages Uses

func (c *AutoScaling) DescribeScalingActivitiesPages(input *DescribeScalingActivitiesInput, fn func(*DescribeScalingActivitiesOutput, bool) bool) error

DescribeScalingActivitiesPages iterates over the pages of a DescribeScalingActivities operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeScalingActivities method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeScalingActivities operation.
pageNum := 0
err := client.DescribeScalingActivitiesPages(params,
    func(page *autoscaling.DescribeScalingActivitiesOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*AutoScaling) DescribeScalingActivitiesPagesWithContext Uses

func (c *AutoScaling) DescribeScalingActivitiesPagesWithContext(ctx aws.Context, input *DescribeScalingActivitiesInput, fn func(*DescribeScalingActivitiesOutput, bool) bool, opts ...request.Option) error

DescribeScalingActivitiesPagesWithContext same as DescribeScalingActivitiesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeScalingActivitiesRequest Uses

func (c *AutoScaling) DescribeScalingActivitiesRequest(input *DescribeScalingActivitiesInput) (req *request.Request, output *DescribeScalingActivitiesOutput)

DescribeScalingActivitiesRequest generates a "aws/request.Request" representing the client's request for the DescribeScalingActivities operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeScalingActivities for more information on using the DescribeScalingActivities API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeScalingActivitiesRequest method.
req, resp := client.DescribeScalingActivitiesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScalingActivities

func (*AutoScaling) DescribeScalingActivitiesWithContext Uses

func (c *AutoScaling) DescribeScalingActivitiesWithContext(ctx aws.Context, input *DescribeScalingActivitiesInput, opts ...request.Option) (*DescribeScalingActivitiesOutput, error)

DescribeScalingActivitiesWithContext is the same as DescribeScalingActivities with the addition of the ability to pass a context and additional request options.

See DescribeScalingActivities for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeScalingProcessTypes Uses

func (c *AutoScaling) DescribeScalingProcessTypes(input *DescribeScalingProcessTypesInput) (*DescribeScalingProcessTypesOutput, error)

DescribeScalingProcessTypes API operation for Auto Scaling.

Describes the scaling process types for use with ResumeProcesses and SuspendProcesses.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeScalingProcessTypes for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScalingProcessTypes

To describe the Auto Scaling process types

This example describes the Auto Scaling process types.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeScalingProcessTypesInput{}

result, err := svc.DescribeScalingProcessTypes(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeScalingProcessTypesRequest Uses

func (c *AutoScaling) DescribeScalingProcessTypesRequest(input *DescribeScalingProcessTypesInput) (req *request.Request, output *DescribeScalingProcessTypesOutput)

DescribeScalingProcessTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeScalingProcessTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeScalingProcessTypes for more information on using the DescribeScalingProcessTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeScalingProcessTypesRequest method.
req, resp := client.DescribeScalingProcessTypesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScalingProcessTypes

func (*AutoScaling) DescribeScalingProcessTypesWithContext Uses

func (c *AutoScaling) DescribeScalingProcessTypesWithContext(ctx aws.Context, input *DescribeScalingProcessTypesInput, opts ...request.Option) (*DescribeScalingProcessTypesOutput, error)

DescribeScalingProcessTypesWithContext is the same as DescribeScalingProcessTypes with the addition of the ability to pass a context and additional request options.

See DescribeScalingProcessTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeScheduledActions Uses

func (c *AutoScaling) DescribeScheduledActions(input *DescribeScheduledActionsInput) (*DescribeScheduledActionsOutput, error)

DescribeScheduledActions API operation for Auto Scaling.

Describes the actions scheduled for your Auto Scaling group that haven't run or that have not reached their end time. To describe the actions that have already run, use DescribeScalingActivities.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeScheduledActions for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextToken "InvalidNextToken"
The NextToken value is not valid.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScheduledActions

To describe scheduled actions

This example describes the scheduled actions for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeScheduledActionsInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
}

result, err := svc.DescribeScheduledActions(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeInvalidNextToken:
            fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeScheduledActionsPages Uses

func (c *AutoScaling) DescribeScheduledActionsPages(input *DescribeScheduledActionsInput, fn func(*DescribeScheduledActionsOutput, bool) bool) error

DescribeScheduledActionsPages iterates over the pages of a DescribeScheduledActions operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeScheduledActions method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeScheduledActions operation.
pageNum := 0
err := client.DescribeScheduledActionsPages(params,
    func(page *autoscaling.DescribeScheduledActionsOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*AutoScaling) DescribeScheduledActionsPagesWithContext Uses

func (c *AutoScaling) DescribeScheduledActionsPagesWithContext(ctx aws.Context, input *DescribeScheduledActionsInput, fn func(*DescribeScheduledActionsOutput, bool) bool, opts ...request.Option) error

DescribeScheduledActionsPagesWithContext same as DescribeScheduledActionsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeScheduledActionsRequest Uses

func (c *AutoScaling) DescribeScheduledActionsRequest(input *DescribeScheduledActionsInput) (req *request.Request, output *DescribeScheduledActionsOutput)

DescribeScheduledActionsRequest generates a "aws/request.Request" representing the client's request for the DescribeScheduledActions operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeScheduledActions for more information on using the DescribeScheduledActions API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeScheduledActionsRequest method.
req, resp := client.DescribeScheduledActionsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScheduledActions

func (*AutoScaling) DescribeScheduledActionsWithContext Uses

func (c *AutoScaling) DescribeScheduledActionsWithContext(ctx aws.Context, input *DescribeScheduledActionsInput, opts ...request.Option) (*DescribeScheduledActionsOutput, error)

DescribeScheduledActionsWithContext is the same as DescribeScheduledActions with the addition of the ability to pass a context and additional request options.

See DescribeScheduledActions for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeTags Uses

func (c *AutoScaling) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error)

DescribeTags API operation for Auto Scaling.

Describes the specified tags.

You can use filters to limit the results. For example, you can query for the tags for a specific Auto Scaling group. You can specify multiple values for a filter. A tag must match at least one of the specified values for it to be included in the results.

You can also specify multiple filters. The result includes information for a particular tag only if it matches all the filters. If there's no match, no special message is returned.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeTags for usage and error information.

Returned Error Codes:

* ErrCodeInvalidNextToken "InvalidNextToken"
The NextToken value is not valid.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTags

To describe tags

This example describes the tags for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeTagsInput{
    Filters: []*autoscaling.Filter{
        {
            Name: aws.String("auto-scaling-group"),
            Values: []*string{
                aws.String("my-auto-scaling-group"),
            },
        },
    },
}

result, err := svc.DescribeTags(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeInvalidNextToken:
            fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeTagsPages Uses

func (c *AutoScaling) DescribeTagsPages(input *DescribeTagsInput, fn func(*DescribeTagsOutput, bool) bool) error

DescribeTagsPages iterates over the pages of a DescribeTags operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeTags method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeTags operation.
pageNum := 0
err := client.DescribeTagsPages(params,
    func(page *autoscaling.DescribeTagsOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*AutoScaling) DescribeTagsPagesWithContext Uses

func (c *AutoScaling) DescribeTagsPagesWithContext(ctx aws.Context, input *DescribeTagsInput, fn func(*DescribeTagsOutput, bool) bool, opts ...request.Option) error

DescribeTagsPagesWithContext same as DescribeTagsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeTagsRequest Uses

func (c *AutoScaling) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput)

DescribeTagsRequest generates a "aws/request.Request" representing the client's request for the DescribeTags operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeTags for more information on using the DescribeTags API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeTagsRequest method.
req, resp := client.DescribeTagsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTags

func (*AutoScaling) DescribeTagsWithContext Uses

func (c *AutoScaling) DescribeTagsWithContext(ctx aws.Context, input *DescribeTagsInput, opts ...request.Option) (*DescribeTagsOutput, error)

DescribeTagsWithContext is the same as DescribeTags with the addition of the ability to pass a context and additional request options.

See DescribeTags for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DescribeTerminationPolicyTypes Uses

func (c *AutoScaling) DescribeTerminationPolicyTypes(input *DescribeTerminationPolicyTypesInput) (*DescribeTerminationPolicyTypesOutput, error)

DescribeTerminationPolicyTypes API operation for Auto Scaling.

Describes the termination policies supported by Amazon EC2 Auto Scaling.

For more information, see Controlling Which Auto Scaling Instances Terminate During Scale In (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeTerminationPolicyTypes for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTerminationPolicyTypes

To describe termination policy types

This example describes the available termination policy types.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DescribeTerminationPolicyTypesInput{}

result, err := svc.DescribeTerminationPolicyTypes(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DescribeTerminationPolicyTypesRequest Uses

func (c *AutoScaling) DescribeTerminationPolicyTypesRequest(input *DescribeTerminationPolicyTypesInput) (req *request.Request, output *DescribeTerminationPolicyTypesOutput)

DescribeTerminationPolicyTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeTerminationPolicyTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeTerminationPolicyTypes for more information on using the DescribeTerminationPolicyTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeTerminationPolicyTypesRequest method.
req, resp := client.DescribeTerminationPolicyTypesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTerminationPolicyTypes

func (*AutoScaling) DescribeTerminationPolicyTypesWithContext Uses

func (c *AutoScaling) DescribeTerminationPolicyTypesWithContext(ctx aws.Context, input *DescribeTerminationPolicyTypesInput, opts ...request.Option) (*DescribeTerminationPolicyTypesOutput, error)

DescribeTerminationPolicyTypesWithContext is the same as DescribeTerminationPolicyTypes with the addition of the ability to pass a context and additional request options.

See DescribeTerminationPolicyTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DetachInstances Uses

func (c *AutoScaling) DetachInstances(input *DetachInstancesInput) (*DetachInstancesOutput, error)

DetachInstances API operation for Auto Scaling.

Removes one or more instances from the specified Auto Scaling group.

After the instances are detached, you can manage them independent of the Auto Scaling group.

If you do not specify the option to decrement the desired capacity, Amazon EC2 Auto Scaling launches instances to replace the ones that are detached.

If there is a Classic Load Balancer attached to the Auto Scaling group, the instances are deregistered from the load balancer. If there are target groups attached to the Auto Scaling group, the instances are deregistered from the target groups.

For more information, see Detach EC2 Instances from Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/detach-instance-asg.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DetachInstances for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachInstances

To detach an instance from an Auto Scaling group

This example detaches the specified instance from the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DetachInstancesInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    InstanceIds: []*string{
        aws.String("i-93633f9b"),
    },
    ShouldDecrementDesiredCapacity: aws.Bool(true),
}

result, err := svc.DetachInstances(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DetachInstancesRequest Uses

func (c *AutoScaling) DetachInstancesRequest(input *DetachInstancesInput) (req *request.Request, output *DetachInstancesOutput)

DetachInstancesRequest generates a "aws/request.Request" representing the client's request for the DetachInstances operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DetachInstances for more information on using the DetachInstances API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DetachInstancesRequest method.
req, resp := client.DetachInstancesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachInstances

func (*AutoScaling) DetachInstancesWithContext Uses

func (c *AutoScaling) DetachInstancesWithContext(ctx aws.Context, input *DetachInstancesInput, opts ...request.Option) (*DetachInstancesOutput, error)

DetachInstancesWithContext is the same as DetachInstances with the addition of the ability to pass a context and additional request options.

See DetachInstances for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DetachLoadBalancerTargetGroups Uses

func (c *AutoScaling) DetachLoadBalancerTargetGroups(input *DetachLoadBalancerTargetGroupsInput) (*DetachLoadBalancerTargetGroupsOutput, error)

DetachLoadBalancerTargetGroups API operation for Auto Scaling.

Detaches one or more target groups from the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DetachLoadBalancerTargetGroups for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachLoadBalancerTargetGroups

To detach a target group from an Auto Scaling group

This example detaches the specified target group from the specified Auto Scaling group

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DetachLoadBalancerTargetGroupsInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    TargetGroupARNs: []*string{
        aws.String("arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067"),
    },
}

result, err := svc.DetachLoadBalancerTargetGroups(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DetachLoadBalancerTargetGroupsRequest Uses

func (c *AutoScaling) DetachLoadBalancerTargetGroupsRequest(input *DetachLoadBalancerTargetGroupsInput) (req *request.Request, output *DetachLoadBalancerTargetGroupsOutput)

DetachLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the client's request for the DetachLoadBalancerTargetGroups operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DetachLoadBalancerTargetGroups for more information on using the DetachLoadBalancerTargetGroups API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DetachLoadBalancerTargetGroupsRequest method.
req, resp := client.DetachLoadBalancerTargetGroupsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachLoadBalancerTargetGroups

func (*AutoScaling) DetachLoadBalancerTargetGroupsWithContext Uses

func (c *AutoScaling) DetachLoadBalancerTargetGroupsWithContext(ctx aws.Context, input *DetachLoadBalancerTargetGroupsInput, opts ...request.Option) (*DetachLoadBalancerTargetGroupsOutput, error)

DetachLoadBalancerTargetGroupsWithContext is the same as DetachLoadBalancerTargetGroups with the addition of the ability to pass a context and additional request options.

See DetachLoadBalancerTargetGroups for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DetachLoadBalancers Uses

func (c *AutoScaling) DetachLoadBalancers(input *DetachLoadBalancersInput) (*DetachLoadBalancersOutput, error)

DetachLoadBalancers API operation for Auto Scaling.

Detaches one or more Classic Load Balancers from the specified Auto Scaling group.

This operation detaches only Classic Load Balancers. If you have Application Load Balancers or Network Load Balancers, use DetachLoadBalancerTargetGroups instead.

When you detach a load balancer, it enters the Removing state while deregistering the instances in the group. When all instances are deregistered, then you can no longer describe the load balancer using DescribeLoadBalancers. The instances remain running.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DetachLoadBalancers for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachLoadBalancers

To detach a load balancer from an Auto Scaling group

This example detaches the specified load balancer from the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DetachLoadBalancersInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    LoadBalancerNames: []*string{
        aws.String("my-load-balancer"),
    },
}

result, err := svc.DetachLoadBalancers(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DetachLoadBalancersRequest Uses

func (c *AutoScaling) DetachLoadBalancersRequest(input *DetachLoadBalancersInput) (req *request.Request, output *DetachLoadBalancersOutput)

DetachLoadBalancersRequest generates a "aws/request.Request" representing the client's request for the DetachLoadBalancers operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DetachLoadBalancers for more information on using the DetachLoadBalancers API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DetachLoadBalancersRequest method.
req, resp := client.DetachLoadBalancersRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachLoadBalancers

func (*AutoScaling) DetachLoadBalancersWithContext Uses

func (c *AutoScaling) DetachLoadBalancersWithContext(ctx aws.Context, input *DetachLoadBalancersInput, opts ...request.Option) (*DetachLoadBalancersOutput, error)

DetachLoadBalancersWithContext is the same as DetachLoadBalancers with the addition of the ability to pass a context and additional request options.

See DetachLoadBalancers for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) DisableMetricsCollection Uses

func (c *AutoScaling) DisableMetricsCollection(input *DisableMetricsCollectionInput) (*DisableMetricsCollectionOutput, error)

DisableMetricsCollection API operation for Auto Scaling.

Disables group metrics for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DisableMetricsCollection for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DisableMetricsCollection

To disable metrics collection for an Auto Scaling group

This example disables collecting data for the GroupDesiredCapacity metric for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.DisableMetricsCollectionInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    Metrics: []*string{
        aws.String("GroupDesiredCapacity"),
    },
}

result, err := svc.DisableMetricsCollection(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) DisableMetricsCollectionRequest Uses

func (c *AutoScaling) DisableMetricsCollectionRequest(input *DisableMetricsCollectionInput) (req *request.Request, output *DisableMetricsCollectionOutput)

DisableMetricsCollectionRequest generates a "aws/request.Request" representing the client's request for the DisableMetricsCollection operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DisableMetricsCollection for more information on using the DisableMetricsCollection API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DisableMetricsCollectionRequest method.
req, resp := client.DisableMetricsCollectionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DisableMetricsCollection

func (*AutoScaling) DisableMetricsCollectionWithContext Uses

func (c *AutoScaling) DisableMetricsCollectionWithContext(ctx aws.Context, input *DisableMetricsCollectionInput, opts ...request.Option) (*DisableMetricsCollectionOutput, error)

DisableMetricsCollectionWithContext is the same as DisableMetricsCollection with the addition of the ability to pass a context and additional request options.

See DisableMetricsCollection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) EnableMetricsCollection Uses

func (c *AutoScaling) EnableMetricsCollection(input *EnableMetricsCollectionInput) (*EnableMetricsCollectionOutput, error)

EnableMetricsCollection API operation for Auto Scaling.

Enables group metrics for the specified Auto Scaling group. For more information, see Monitoring Your Auto Scaling Groups and Instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-monitoring.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation EnableMetricsCollection for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/EnableMetricsCollection

To enable metrics collection for an Auto Scaling group

This example enables data collection for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.EnableMetricsCollectionInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    Granularity:          aws.String("1Minute"),
}

result, err := svc.EnableMetricsCollection(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) EnableMetricsCollectionRequest Uses

func (c *AutoScaling) EnableMetricsCollectionRequest(input *EnableMetricsCollectionInput) (req *request.Request, output *EnableMetricsCollectionOutput)

EnableMetricsCollectionRequest generates a "aws/request.Request" representing the client's request for the EnableMetricsCollection operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See EnableMetricsCollection for more information on using the EnableMetricsCollection API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the EnableMetricsCollectionRequest method.
req, resp := client.EnableMetricsCollectionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/EnableMetricsCollection

func (*AutoScaling) EnableMetricsCollectionWithContext Uses

func (c *AutoScaling) EnableMetricsCollectionWithContext(ctx aws.Context, input *EnableMetricsCollectionInput, opts ...request.Option) (*EnableMetricsCollectionOutput, error)

EnableMetricsCollectionWithContext is the same as EnableMetricsCollection with the addition of the ability to pass a context and additional request options.

See EnableMetricsCollection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) EnterStandby Uses

func (c *AutoScaling) EnterStandby(input *EnterStandbyInput) (*EnterStandbyOutput, error)

EnterStandby API operation for Auto Scaling.

Moves the specified instances into the standby state.

For more information, see Temporarily Removing Instances from Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-enter-exit-standby.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation EnterStandby for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/EnterStandby

To move instances into standby mode

This example puts the specified instance into standby mode.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.EnterStandbyInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    InstanceIds: []*string{
        aws.String("i-93633f9b"),
    },
    ShouldDecrementDesiredCapacity: aws.Bool(true),
}

result, err := svc.EnterStandby(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) EnterStandbyRequest Uses

func (c *AutoScaling) EnterStandbyRequest(input *EnterStandbyInput) (req *request.Request, output *EnterStandbyOutput)

EnterStandbyRequest generates a "aws/request.Request" representing the client's request for the EnterStandby operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See EnterStandby for more information on using the EnterStandby API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the EnterStandbyRequest method.
req, resp := client.EnterStandbyRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/EnterStandby

func (*AutoScaling) EnterStandbyWithContext Uses

func (c *AutoScaling) EnterStandbyWithContext(ctx aws.Context, input *EnterStandbyInput, opts ...request.Option) (*EnterStandbyOutput, error)

EnterStandbyWithContext is the same as EnterStandby with the addition of the ability to pass a context and additional request options.

See EnterStandby for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) ExecutePolicy Uses

func (c *AutoScaling) ExecutePolicy(input *ExecutePolicyInput) (*ExecutePolicyOutput, error)

ExecutePolicy API operation for Auto Scaling.

Executes the specified policy.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation ExecutePolicy for usage and error information.

Returned Error Codes:

* ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress"
The operation can't be performed because there are scaling activities in
progress.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExecutePolicy

To execute an Auto Scaling policy

This example executes the specified Auto Scaling policy for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.ExecutePolicyInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    HonorCooldown:        aws.Bool(true),
    PolicyName:           aws.String("ScaleIn"),
}

result, err := svc.ExecutePolicy(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeScalingActivityInProgressFault:
            fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) ExecutePolicyRequest Uses

func (c *AutoScaling) ExecutePolicyRequest(input *ExecutePolicyInput) (req *request.Request, output *ExecutePolicyOutput)

ExecutePolicyRequest generates a "aws/request.Request" representing the client's request for the ExecutePolicy operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See ExecutePolicy for more information on using the ExecutePolicy API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the ExecutePolicyRequest method.
req, resp := client.ExecutePolicyRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExecutePolicy

func (*AutoScaling) ExecutePolicyWithContext Uses

func (c *AutoScaling) ExecutePolicyWithContext(ctx aws.Context, input *ExecutePolicyInput, opts ...request.Option) (*ExecutePolicyOutput, error)

ExecutePolicyWithContext is the same as ExecutePolicy with the addition of the ability to pass a context and additional request options.

See ExecutePolicy for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) ExitStandby Uses

func (c *AutoScaling) ExitStandby(input *ExitStandbyInput) (*ExitStandbyOutput, error)

ExitStandby API operation for Auto Scaling.

Moves the specified instances out of the standby state.

For more information, see Temporarily Removing Instances from Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-enter-exit-standby.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation ExitStandby for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExitStandby

To move instances out of standby mode

This example moves the specified instance out of standby mode.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.ExitStandbyInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    InstanceIds: []*string{
        aws.String("i-93633f9b"),
    },
}

result, err := svc.ExitStandby(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) ExitStandbyRequest Uses

func (c *AutoScaling) ExitStandbyRequest(input *ExitStandbyInput) (req *request.Request, output *ExitStandbyOutput)

ExitStandbyRequest generates a "aws/request.Request" representing the client's request for the ExitStandby operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See ExitStandby for more information on using the ExitStandby API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the ExitStandbyRequest method.
req, resp := client.ExitStandbyRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExitStandby

func (*AutoScaling) ExitStandbyWithContext Uses

func (c *AutoScaling) ExitStandbyWithContext(ctx aws.Context, input *ExitStandbyInput, opts ...request.Option) (*ExitStandbyOutput, error)

ExitStandbyWithContext is the same as ExitStandby with the addition of the ability to pass a context and additional request options.

See ExitStandby for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) PutLifecycleHook Uses

func (c *AutoScaling) PutLifecycleHook(input *PutLifecycleHookInput) (*PutLifecycleHookOutput, error)

PutLifecycleHook API operation for Auto Scaling.

Creates or updates a lifecycle hook for the specified Auto Scaling group.

A lifecycle hook tells Amazon EC2 Auto Scaling to perform an action on an instance when the instance launches (before it is put into service) or as the instance terminates (before it is fully terminated).

This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

(Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Amazon EC2 Auto Scaling launches or terminates instances.

(Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Amazon EC2 Auto Scaling to publish lifecycle notifications to the target.

Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state using RecordLifecycleActionHeartbeat.

If you finish before the timeout period ends, complete the lifecycle action using CompleteLifecycleAction.

For more information, see Amazon EC2 Auto Scaling Lifecycle Hooks (https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) in the Amazon EC2 Auto Scaling User Guide.

If you exceed your maximum limit of lifecycle hooks, which by default is 50 per Auto Scaling group, the call fails.

You can view the lifecycle hooks for an Auto Scaling group using DescribeLifecycleHooks. If you are no longer using a lifecycle hook, you can delete it using DeleteLifecycleHook.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation PutLifecycleHook for usage and error information.

Returned Error Codes:

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutLifecycleHook

To create a lifecycle hook

This example creates a lifecycle hook.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.PutLifecycleHookInput{
    AutoScalingGroupName:  aws.String("my-auto-scaling-group"),
    LifecycleHookName:     aws.String("my-lifecycle-hook"),
    LifecycleTransition:   aws.String("autoscaling:EC2_INSTANCE_LAUNCHING"),
    NotificationTargetARN: aws.String("arn:aws:sns:us-west-2:123456789012:my-sns-topic --role-arn"),
    RoleARN:               aws.String("arn:aws:iam::123456789012:role/my-auto-scaling-role"),
}

result, err := svc.PutLifecycleHook(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) PutLifecycleHookRequest Uses

func (c *AutoScaling) PutLifecycleHookRequest(input *PutLifecycleHookInput) (req *request.Request, output *PutLifecycleHookOutput)

PutLifecycleHookRequest generates a "aws/request.Request" representing the client's request for the PutLifecycleHook operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See PutLifecycleHook for more information on using the PutLifecycleHook API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the PutLifecycleHookRequest method.
req, resp := client.PutLifecycleHookRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutLifecycleHook

func (*AutoScaling) PutLifecycleHookWithContext Uses

func (c *AutoScaling) PutLifecycleHookWithContext(ctx aws.Context, input *PutLifecycleHookInput, opts ...request.Option) (*PutLifecycleHookOutput, error)

PutLifecycleHookWithContext is the same as PutLifecycleHook with the addition of the ability to pass a context and additional request options.

See PutLifecycleHook for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) PutNotificationConfiguration Uses

func (c *AutoScaling) PutNotificationConfiguration(input *PutNotificationConfigurationInput) (*PutNotificationConfigurationOutput, error)

PutNotificationConfiguration API operation for Auto Scaling.

Configures an Auto Scaling group to send notifications when specified events take place. Subscribers to the specified topic can have messages delivered to an endpoint such as a web server or an email address.

This configuration overwrites any existing configuration.

For more information, see Getting Amazon SNS Notifications When Your Auto Scaling Group Scales (https://docs.aws.amazon.com/autoscaling/ec2/userguide/ASGettingNotifications.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation PutNotificationConfiguration for usage and error information.

Returned Error Codes:

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutNotificationConfiguration

To add an Auto Scaling notification

This example adds the specified notification to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.PutNotificationConfigurationInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    NotificationTypes: []*string{
        aws.String("autoscaling:TEST_NOTIFICATION"),
    },
    TopicARN: aws.String("arn:aws:sns:us-west-2:123456789012:my-sns-topic"),
}

result, err := svc.PutNotificationConfiguration(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) PutNotificationConfigurationRequest Uses

func (c *AutoScaling) PutNotificationConfigurationRequest(input *PutNotificationConfigurationInput) (req *request.Request, output *PutNotificationConfigurationOutput)

PutNotificationConfigurationRequest generates a "aws/request.Request" representing the client's request for the PutNotificationConfiguration operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See PutNotificationConfiguration for more information on using the PutNotificationConfiguration API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the PutNotificationConfigurationRequest method.
req, resp := client.PutNotificationConfigurationRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutNotificationConfiguration

func (*AutoScaling) PutNotificationConfigurationWithContext Uses

func (c *AutoScaling) PutNotificationConfigurationWithContext(ctx aws.Context, input *PutNotificationConfigurationInput, opts ...request.Option) (*PutNotificationConfigurationOutput, error)

PutNotificationConfigurationWithContext is the same as PutNotificationConfiguration with the addition of the ability to pass a context and additional request options.

See PutNotificationConfiguration for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) PutScalingPolicy Uses

func (c *AutoScaling) PutScalingPolicy(input *PutScalingPolicyInput) (*PutScalingPolicyOutput, error)

PutScalingPolicy API operation for Auto Scaling.

Creates or updates a scaling policy for an Auto Scaling group. To update an existing scaling policy, use the existing policy name and set the parameters to change. Any existing parameter not changed in an update to an existing policy is not changed in this update request.

For more information about using scaling policies to scale your Auto Scaling group automatically, see Dynamic Scaling (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scale-based-on-demand.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation PutScalingPolicy for usage and error information.

Returned Error Codes:

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutScalingPolicy

To add a scaling policy to an Auto Scaling group

This example adds the specified policy to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.PutScalingPolicyInput{
    AdjustmentType:       aws.String("ChangeInCapacity"),
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    PolicyName:           aws.String("ScaleIn"),
    ScalingAdjustment:    aws.Int64(-1),
}

result, err := svc.PutScalingPolicy(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) PutScalingPolicyRequest Uses

func (c *AutoScaling) PutScalingPolicyRequest(input *PutScalingPolicyInput) (req *request.Request, output *PutScalingPolicyOutput)

PutScalingPolicyRequest generates a "aws/request.Request" representing the client's request for the PutScalingPolicy operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See PutScalingPolicy for more information on using the PutScalingPolicy API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the PutScalingPolicyRequest method.
req, resp := client.PutScalingPolicyRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutScalingPolicy

func (*AutoScaling) PutScalingPolicyWithContext Uses

func (c *AutoScaling) PutScalingPolicyWithContext(ctx aws.Context, input *PutScalingPolicyInput, opts ...request.Option) (*PutScalingPolicyOutput, error)

PutScalingPolicyWithContext is the same as PutScalingPolicy with the addition of the ability to pass a context and additional request options.

See PutScalingPolicy for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) PutScheduledUpdateGroupAction Uses

func (c *AutoScaling) PutScheduledUpdateGroupAction(input *PutScheduledUpdateGroupActionInput) (*PutScheduledUpdateGroupActionOutput, error)

PutScheduledUpdateGroupAction API operation for Auto Scaling.

Creates or updates a scheduled scaling action for an Auto Scaling group. If you leave a parameter unspecified when updating a scheduled scaling action, the corresponding value remains unchanged.

For more information, see Scheduled Scaling (https://docs.aws.amazon.com/autoscaling/ec2/userguide/schedule_time.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation PutScheduledUpdateGroupAction for usage and error information.

Returned Error Codes:

* ErrCodeAlreadyExistsFault "AlreadyExists"
You already have an Auto Scaling group or launch configuration with this
name.

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutScheduledUpdateGroupAction

To add a scheduled action to an Auto Scaling group

This example adds the specified scheduled action to the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.PutScheduledUpdateGroupActionInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    DesiredCapacity:      aws.Int64(4),
    EndTime:              parseTime("2006-01-02T15:04:05.999999999Z", "2014-05-12T08:00:00Z"),
    MaxSize:              aws.Int64(6),
    MinSize:              aws.Int64(2),
    ScheduledActionName:  aws.String("my-scheduled-action"),
    StartTime:            parseTime("2006-01-02T15:04:05.999999999Z", "2014-05-12T08:00:00Z"),
}

result, err := svc.PutScheduledUpdateGroupAction(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeAlreadyExistsFault:
            fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error())
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) PutScheduledUpdateGroupActionRequest Uses

func (c *AutoScaling) PutScheduledUpdateGroupActionRequest(input *PutScheduledUpdateGroupActionInput) (req *request.Request, output *PutScheduledUpdateGroupActionOutput)

PutScheduledUpdateGroupActionRequest generates a "aws/request.Request" representing the client's request for the PutScheduledUpdateGroupAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See PutScheduledUpdateGroupAction for more information on using the PutScheduledUpdateGroupAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the PutScheduledUpdateGroupActionRequest method.
req, resp := client.PutScheduledUpdateGroupActionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutScheduledUpdateGroupAction

func (*AutoScaling) PutScheduledUpdateGroupActionWithContext Uses

func (c *AutoScaling) PutScheduledUpdateGroupActionWithContext(ctx aws.Context, input *PutScheduledUpdateGroupActionInput, opts ...request.Option) (*PutScheduledUpdateGroupActionOutput, error)

PutScheduledUpdateGroupActionWithContext is the same as PutScheduledUpdateGroupAction with the addition of the ability to pass a context and additional request options.

See PutScheduledUpdateGroupAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) RecordLifecycleActionHeartbeat Uses

func (c *AutoScaling) RecordLifecycleActionHeartbeat(input *RecordLifecycleActionHeartbeatInput) (*RecordLifecycleActionHeartbeatOutput, error)

RecordLifecycleActionHeartbeat API operation for Auto Scaling.

Records a heartbeat for the lifecycle action associated with the specified token or instance. This extends the timeout by the length of time defined using PutLifecycleHook.

This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

(Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Amazon EC2 Auto Scaling launches or terminates instances.

(Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Amazon EC2 Auto Scaling to publish lifecycle notifications to the target.

Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

If you finish before the timeout period ends, complete the lifecycle action.

For more information, see Auto Scaling Lifecycle (https://docs.aws.amazon.com/autoscaling/ec2/userguide/AutoScalingGroupLifecycle.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation RecordLifecycleActionHeartbeat for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/RecordLifecycleActionHeartbeat

To record a lifecycle action heartbeat

This example records a lifecycle action heartbeat to keep the instance in a pending state.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.RecordLifecycleActionHeartbeatInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    LifecycleActionToken: aws.String("bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635"),
    LifecycleHookName:    aws.String("my-lifecycle-hook"),
}

result, err := svc.RecordLifecycleActionHeartbeat(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) RecordLifecycleActionHeartbeatRequest Uses

func (c *AutoScaling) RecordLifecycleActionHeartbeatRequest(input *RecordLifecycleActionHeartbeatInput) (req *request.Request, output *RecordLifecycleActionHeartbeatOutput)

RecordLifecycleActionHeartbeatRequest generates a "aws/request.Request" representing the client's request for the RecordLifecycleActionHeartbeat operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See RecordLifecycleActionHeartbeat for more information on using the RecordLifecycleActionHeartbeat API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the RecordLifecycleActionHeartbeatRequest method.
req, resp := client.RecordLifecycleActionHeartbeatRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/RecordLifecycleActionHeartbeat

func (*AutoScaling) RecordLifecycleActionHeartbeatWithContext Uses

func (c *AutoScaling) RecordLifecycleActionHeartbeatWithContext(ctx aws.Context, input *RecordLifecycleActionHeartbeatInput, opts ...request.Option) (*RecordLifecycleActionHeartbeatOutput, error)

RecordLifecycleActionHeartbeatWithContext is the same as RecordLifecycleActionHeartbeat with the addition of the ability to pass a context and additional request options.

See RecordLifecycleActionHeartbeat for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) ResumeProcesses Uses

func (c *AutoScaling) ResumeProcesses(input *ScalingProcessQuery) (*ResumeProcessesOutput, error)

ResumeProcesses API operation for Auto Scaling.

Resumes the specified suspended automatic scaling processes, or all suspended process, for the specified Auto Scaling group.

For more information, see Suspending and Resuming Scaling Processes (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-suspend-resume-processes.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation ResumeProcesses for usage and error information.

Returned Error Codes:

* ErrCodeResourceInUseFault "ResourceInUse"
The operation can't be performed because the resource is in use.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ResumeProcesses

To resume Auto Scaling processes

This example resumes the specified suspended scaling process for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.ScalingProcessQuery{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    ScalingProcesses: []*string{
        aws.String("AlarmNotification"),
    },
}

result, err := svc.ResumeProcesses(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceInUseFault:
            fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) ResumeProcessesRequest Uses

func (c *AutoScaling) ResumeProcessesRequest(input *ScalingProcessQuery) (req *request.Request, output *ResumeProcessesOutput)

ResumeProcessesRequest generates a "aws/request.Request" representing the client's request for the ResumeProcesses operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See ResumeProcesses for more information on using the ResumeProcesses API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the ResumeProcessesRequest method.
req, resp := client.ResumeProcessesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ResumeProcesses

func (*AutoScaling) ResumeProcessesWithContext Uses

func (c *AutoScaling) ResumeProcessesWithContext(ctx aws.Context, input *ScalingProcessQuery, opts ...request.Option) (*ResumeProcessesOutput, error)

ResumeProcessesWithContext is the same as ResumeProcesses with the addition of the ability to pass a context and additional request options.

See ResumeProcesses for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) SetDesiredCapacity Uses

func (c *AutoScaling) SetDesiredCapacity(input *SetDesiredCapacityInput) (*SetDesiredCapacityOutput, error)

SetDesiredCapacity API operation for Auto Scaling.

Sets the size of the specified Auto Scaling group.

For more information about desired capacity, see What Is Amazon EC2 Auto Scaling? (https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation SetDesiredCapacity for usage and error information.

Returned Error Codes:

* ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress"
The operation can't be performed because there are scaling activities in
progress.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetDesiredCapacity

To set the desired capacity for an Auto Scaling group

This example sets the desired capacity for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.SetDesiredCapacityInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    DesiredCapacity:      aws.Int64(2),
    HonorCooldown:        aws.Bool(true),
}

result, err := svc.SetDesiredCapacity(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeScalingActivityInProgressFault:
            fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) SetDesiredCapacityRequest Uses

func (c *AutoScaling) SetDesiredCapacityRequest(input *SetDesiredCapacityInput) (req *request.Request, output *SetDesiredCapacityOutput)

SetDesiredCapacityRequest generates a "aws/request.Request" representing the client's request for the SetDesiredCapacity operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See SetDesiredCapacity for more information on using the SetDesiredCapacity API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the SetDesiredCapacityRequest method.
req, resp := client.SetDesiredCapacityRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetDesiredCapacity

func (*AutoScaling) SetDesiredCapacityWithContext Uses

func (c *AutoScaling) SetDesiredCapacityWithContext(ctx aws.Context, input *SetDesiredCapacityInput, opts ...request.Option) (*SetDesiredCapacityOutput, error)

SetDesiredCapacityWithContext is the same as SetDesiredCapacity with the addition of the ability to pass a context and additional request options.

See SetDesiredCapacity for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) SetInstanceHealth Uses

func (c *AutoScaling) SetInstanceHealth(input *SetInstanceHealthInput) (*SetInstanceHealthOutput, error)

SetInstanceHealth API operation for Auto Scaling.

Sets the health status of the specified instance.

For more information, see Health Checks for Auto Scaling Instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation SetInstanceHealth for usage and error information.

Returned Error Codes:

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetInstanceHealth

To set the health status of an instance

This example sets the health status of the specified instance to Unhealthy.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.SetInstanceHealthInput{
    HealthStatus: aws.String("Unhealthy"),
    InstanceId:   aws.String("i-93633f9b"),
}

result, err := svc.SetInstanceHealth(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) SetInstanceHealthRequest Uses

func (c *AutoScaling) SetInstanceHealthRequest(input *SetInstanceHealthInput) (req *request.Request, output *SetInstanceHealthOutput)

SetInstanceHealthRequest generates a "aws/request.Request" representing the client's request for the SetInstanceHealth operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See SetInstanceHealth for more information on using the SetInstanceHealth API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the SetInstanceHealthRequest method.
req, resp := client.SetInstanceHealthRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetInstanceHealth

func (*AutoScaling) SetInstanceHealthWithContext Uses

func (c *AutoScaling) SetInstanceHealthWithContext(ctx aws.Context, input *SetInstanceHealthInput, opts ...request.Option) (*SetInstanceHealthOutput, error)

SetInstanceHealthWithContext is the same as SetInstanceHealth with the addition of the ability to pass a context and additional request options.

See SetInstanceHealth for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) SetInstanceProtection Uses

func (c *AutoScaling) SetInstanceProtection(input *SetInstanceProtectionInput) (*SetInstanceProtectionOutput, error)

SetInstanceProtection API operation for Auto Scaling.

Updates the instance protection settings of the specified instances.

For more information about preventing instances that are part of an Auto Scaling group from terminating on scale in, see Instance Protection (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation SetInstanceProtection for usage and error information.

Returned Error Codes:

* ErrCodeLimitExceededFault "LimitExceeded"
You have already reached a limit for your Amazon EC2 Auto Scaling resources
(for example, Auto Scaling groups, launch configurations, or lifecycle hooks).
For more information, see DescribeAccountLimits.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetInstanceProtection

To enable instance protection for an instance

This example enables instance protection for the specified instance.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.SetInstanceProtectionInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    InstanceIds: []*string{
        aws.String("i-93633f9b"),
    },
    ProtectedFromScaleIn: aws.Bool(true),
}

result, err := svc.SetInstanceProtection(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

To disable instance protection for an instance

This example disables instance protection for the specified instance.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.SetInstanceProtectionInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    InstanceIds: []*string{
        aws.String("i-93633f9b"),
    },
    ProtectedFromScaleIn: aws.Bool(false),
}

result, err := svc.SetInstanceProtection(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeLimitExceededFault:
            fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) SetInstanceProtectionRequest Uses

func (c *AutoScaling) SetInstanceProtectionRequest(input *SetInstanceProtectionInput) (req *request.Request, output *SetInstanceProtectionOutput)

SetInstanceProtectionRequest generates a "aws/request.Request" representing the client's request for the SetInstanceProtection operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See SetInstanceProtection for more information on using the SetInstanceProtection API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the SetInstanceProtectionRequest method.
req, resp := client.SetInstanceProtectionRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetInstanceProtection

func (*AutoScaling) SetInstanceProtectionWithContext Uses

func (c *AutoScaling) SetInstanceProtectionWithContext(ctx aws.Context, input *SetInstanceProtectionInput, opts ...request.Option) (*SetInstanceProtectionOutput, error)

SetInstanceProtectionWithContext is the same as SetInstanceProtection with the addition of the ability to pass a context and additional request options.

See SetInstanceProtection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) SuspendProcesses Uses

func (c *AutoScaling) SuspendProcesses(input *ScalingProcessQuery) (*SuspendProcessesOutput, error)

SuspendProcesses API operation for Auto Scaling.

Suspends the specified automatic scaling processes, or all processes, for the specified Auto Scaling group.

If you suspend either the Launch or Terminate process types, it can prevent other process types from functioning properly.

To resume processes that have been suspended, use ResumeProcesses.

For more information, see Suspending and Resuming Scaling Processes (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-suspend-resume-processes.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation SuspendProcesses for usage and error information.

Returned Error Codes:

* ErrCodeResourceInUseFault "ResourceInUse"
The operation can't be performed because the resource is in use.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SuspendProcesses

To suspend Auto Scaling processes

This example suspends the specified scaling process for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.ScalingProcessQuery{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    ScalingProcesses: []*string{
        aws.String("AlarmNotification"),
    },
}

result, err := svc.SuspendProcesses(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeResourceInUseFault:
            fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) SuspendProcessesRequest Uses

func (c *AutoScaling) SuspendProcessesRequest(input *ScalingProcessQuery) (req *request.Request, output *SuspendProcessesOutput)

SuspendProcessesRequest generates a "aws/request.Request" representing the client's request for the SuspendProcesses operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See SuspendProcesses for more information on using the SuspendProcesses API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the SuspendProcessesRequest method.
req, resp := client.SuspendProcessesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SuspendProcesses

func (*AutoScaling) SuspendProcessesWithContext Uses

func (c *AutoScaling) SuspendProcessesWithContext(ctx aws.Context, input *ScalingProcessQuery, opts ...request.Option) (*SuspendProcessesOutput, error)

SuspendProcessesWithContext is the same as SuspendProcesses with the addition of the ability to pass a context and additional request options.

See SuspendProcesses for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) TerminateInstanceInAutoScalingGroup Uses

func (c *AutoScaling) TerminateInstanceInAutoScalingGroup(input *TerminateInstanceInAutoScalingGroupInput) (*TerminateInstanceInAutoScalingGroupOutput, error)

TerminateInstanceInAutoScalingGroup API operation for Auto Scaling.

Terminates the specified instance and optionally adjusts the desired group size.

This call simply makes a termination request. The instance is not terminated immediately.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation TerminateInstanceInAutoScalingGroup for usage and error information.

Returned Error Codes:

* ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress"
The operation can't be performed because there are scaling activities in
progress.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/TerminateInstanceInAutoScalingGroup

To terminate an instance in an Auto Scaling group

This example terminates the specified instance from the specified Auto Scaling group without updating the size of the group. Auto Scaling launches a replacement instance after the specified instance terminates.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.TerminateInstanceInAutoScalingGroupInput{
    InstanceId:                     aws.String("i-93633f9b"),
    ShouldDecrementDesiredCapacity: aws.Bool(false),
}

result, err := svc.TerminateInstanceInAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeScalingActivityInProgressFault:
            fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) TerminateInstanceInAutoScalingGroupRequest Uses

func (c *AutoScaling) TerminateInstanceInAutoScalingGroupRequest(input *TerminateInstanceInAutoScalingGroupInput) (req *request.Request, output *TerminateInstanceInAutoScalingGroupOutput)

TerminateInstanceInAutoScalingGroupRequest generates a "aws/request.Request" representing the client's request for the TerminateInstanceInAutoScalingGroup operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See TerminateInstanceInAutoScalingGroup for more information on using the TerminateInstanceInAutoScalingGroup API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the TerminateInstanceInAutoScalingGroupRequest method.
req, resp := client.TerminateInstanceInAutoScalingGroupRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/TerminateInstanceInAutoScalingGroup

func (*AutoScaling) TerminateInstanceInAutoScalingGroupWithContext Uses

func (c *AutoScaling) TerminateInstanceInAutoScalingGroupWithContext(ctx aws.Context, input *TerminateInstanceInAutoScalingGroupInput, opts ...request.Option) (*TerminateInstanceInAutoScalingGroupOutput, error)

TerminateInstanceInAutoScalingGroupWithContext is the same as TerminateInstanceInAutoScalingGroup with the addition of the ability to pass a context and additional request options.

See TerminateInstanceInAutoScalingGroup for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) UpdateAutoScalingGroup Uses

func (c *AutoScaling) UpdateAutoScalingGroup(input *UpdateAutoScalingGroupInput) (*UpdateAutoScalingGroupOutput, error)

UpdateAutoScalingGroup API operation for Auto Scaling.

Updates the configuration for the specified Auto Scaling group.

To update an Auto Scaling group, specify the name of the group and the parameter that you want to change. Any parameters that you don't specify are not changed by this update request. The new settings take effect on any scaling activities after this call returns. Scaling activities that are currently in progress aren't affected.

If you associate a new launch configuration or template with an Auto Scaling group, all new instances will get the updated configuration. Existing instances continue to run with the configuration that they were originally launched with. When you update a group to specify a mixed instances policy instead of a launch configuration or template, existing instances may be replaced to match the new purchasing options that you specified in the policy. For example, if the group currently has 100% On-Demand capacity and the policy specifies 50% Spot capacity, this means that half of your instances will be gradually terminated and relaunched as Spot Instances. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the old ones, so that updating your group does not compromise the performance or availability of your application.

Note the following about changing DesiredCapacity, MaxSize, or MinSize:

* If a scale-in event occurs as a result of a new DesiredCapacity value
that is lower than the current size of the group, the Auto Scaling group
uses its termination policy to determine which instances to terminate.

* If you specify a new value for MinSize without specifying a value for
DesiredCapacity, and the new MinSize is larger than the current size of
the group, this sets the group's DesiredCapacity to the new MinSize value.

* If you specify a new value for MaxSize without specifying a value for
DesiredCapacity, and the new MaxSize is smaller than the current size
of the group, this sets the group's DesiredCapacity to the new MaxSize
value.

To see which parameters have been set, use DescribeAutoScalingGroups. You can also view the scaling policies for an Auto Scaling group using DescribePolicies. If the group has scaling policies, you can update them using PutScalingPolicy.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation UpdateAutoScalingGroup for usage and error information.

Returned Error Codes:

* ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress"
The operation can't be performed because there are scaling activities in
progress.

* ErrCodeResourceContentionFault "ResourceContention"
You already have a pending update to an Amazon EC2 Auto Scaling resource
(for example, an Auto Scaling group, instance, or load balancer).

* ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure"
The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroup

To update the launch configuration

This example updates the launch configuration of the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.UpdateAutoScalingGroupInput{
    AutoScalingGroupName:    aws.String("my-auto-scaling-group"),
    LaunchConfigurationName: aws.String("new-launch-config"),
}

result, err := svc.UpdateAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeScalingActivityInProgressFault:
            fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

To update the minimum and maximum size

This example updates the minimum size and maximum size of the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.UpdateAutoScalingGroupInput{
    AutoScalingGroupName: aws.String("my-auto-scaling-group"),
    MaxSize:              aws.Int64(3),
    MinSize:              aws.Int64(1),
}

result, err := svc.UpdateAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeScalingActivityInProgressFault:
            fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

To enable instance protection

This example enables instance protection for the specified Auto Scaling group.

Code:

svc := autoscaling.New(session.New())
input := &autoscaling.UpdateAutoScalingGroupInput{
    AutoScalingGroupName:             aws.String("my-auto-scaling-group"),
    NewInstancesProtectedFromScaleIn: aws.Bool(true),
}

result, err := svc.UpdateAutoScalingGroup(input)
if err != nil {
    if aerr, ok := err.(awserr.Error); ok {
        switch aerr.Code() {
        case autoscaling.ErrCodeScalingActivityInProgressFault:
            fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error())
        case autoscaling.ErrCodeResourceContentionFault:
            fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error())
        case autoscaling.ErrCodeServiceLinkedRoleFailure:
            fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error())
        default:
            fmt.Println(aerr.Error())
        }
    } else {
        // Print the error, cast err to awserr.Error to get the Code and
        // Message from an error.
        fmt.Println(err.Error())
    }
    return
}

fmt.Println(result)

func (*AutoScaling) UpdateAutoScalingGroupRequest Uses

func (c *AutoScaling) UpdateAutoScalingGroupRequest(input *UpdateAutoScalingGroupInput) (req *request.Request, output *UpdateAutoScalingGroupOutput)

UpdateAutoScalingGroupRequest generates a "aws/request.Request" representing the client's request for the UpdateAutoScalingGroup operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See UpdateAutoScalingGroup for more information on using the UpdateAutoScalingGroup API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the UpdateAutoScalingGroupRequest method.
req, resp := client.UpdateAutoScalingGroupRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroup

func (*AutoScaling) UpdateAutoScalingGroupWithContext Uses

func (c *AutoScaling) UpdateAutoScalingGroupWithContext(ctx aws.Context, input *UpdateAutoScalingGroupInput, opts ...request.Option) (*UpdateAutoScalingGroupOutput, error)

UpdateAutoScalingGroupWithContext is the same as UpdateAutoScalingGroup with the addition of the ability to pass a context and additional request options.

See UpdateAutoScalingGroup for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) WaitUntilGroupExists Uses

func (c *AutoScaling) WaitUntilGroupExists(input *DescribeAutoScalingGroupsInput) error

WaitUntilGroupExists uses the Auto Scaling API operation DescribeAutoScalingGroups to wait for a condition to be met before returning. If the condition is not met within the max attempt window, an error will be returned.

func (*AutoScaling) WaitUntilGroupExistsWithContext Uses

func (c *AutoScaling) WaitUntilGroupExistsWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, opts ...request.WaiterOption) error

WaitUntilGroupExistsWithContext is an extended version of WaitUntilGroupExists. With the support for passing in a context and options to configure the Waiter and the underlying request options.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) WaitUntilGroupInService Uses

func (c *AutoScaling) WaitUntilGroupInService(input *DescribeAutoScalingGroupsInput) error

WaitUntilGroupInService uses the Auto Scaling API operation DescribeAutoScalingGroups to wait for a condition to be met before returning. If the condition is not met within the max attempt window, an error will be returned.

func (*AutoScaling) WaitUntilGroupInServiceWithContext Uses

func (c *AutoScaling) WaitUntilGroupInServiceWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, opts ...request.WaiterOption) error

WaitUntilGroupInServiceWithContext is an extended version of WaitUntilGroupInService. With the support for passing in a context and options to configure the Waiter and the underlying request options.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*AutoScaling) WaitUntilGroupNotExists Uses

func (c *AutoScaling) WaitUntilGroupNotExists(input *DescribeAutoScalingGroupsInput) error

WaitUntilGroupNotExists uses the Auto Scaling API operation DescribeAutoScalingGroups to wait for a condition to be met before returning. If the condition is not met within the max attempt window, an error will be returned.

func (*AutoScaling) WaitUntilGroupNotExistsWithContext Uses

func (c *AutoScaling) WaitUntilGroupNotExistsWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, opts ...request.WaiterOption) error

WaitUntilGroupNotExistsWithContext is an extended version of WaitUntilGroupNotExists. With the support for passing in a context and options to configure the Waiter and the underlying request options.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

type BatchDeleteScheduledActionInput Uses

type BatchDeleteScheduledActionInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The names of the scheduled actions to delete. The maximum number allowed
    // is 50.
    //
    // ScheduledActionNames is a required field
    ScheduledActionNames []*string `type:"list" required:"true"`
    // contains filtered or unexported fields
}

func (BatchDeleteScheduledActionInput) GoString Uses

func (s BatchDeleteScheduledActionInput) GoString() string

GoString returns the string representation

func (*BatchDeleteScheduledActionInput) SetAutoScalingGroupName Uses

func (s *BatchDeleteScheduledActionInput) SetAutoScalingGroupName(v string) *BatchDeleteScheduledActionInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*BatchDeleteScheduledActionInput) SetScheduledActionNames Uses

func (s *BatchDeleteScheduledActionInput) SetScheduledActionNames(v []*string) *BatchDeleteScheduledActionInput

SetScheduledActionNames sets the ScheduledActionNames field's value.

func (BatchDeleteScheduledActionInput) String Uses

func (s BatchDeleteScheduledActionInput) String() string

String returns the string representation

func (*BatchDeleteScheduledActionInput) Validate Uses

func (s *BatchDeleteScheduledActionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type BatchDeleteScheduledActionOutput Uses

type BatchDeleteScheduledActionOutput struct {

    // The names of the scheduled actions that could not be deleted, including an
    // error message.
    FailedScheduledActions []*FailedScheduledUpdateGroupActionRequest `type:"list"`
    // contains filtered or unexported fields
}

func (BatchDeleteScheduledActionOutput) GoString Uses

func (s BatchDeleteScheduledActionOutput) GoString() string

GoString returns the string representation

func (*BatchDeleteScheduledActionOutput) SetFailedScheduledActions Uses

func (s *BatchDeleteScheduledActionOutput) SetFailedScheduledActions(v []*FailedScheduledUpdateGroupActionRequest) *BatchDeleteScheduledActionOutput

SetFailedScheduledActions sets the FailedScheduledActions field's value.

func (BatchDeleteScheduledActionOutput) String Uses

func (s BatchDeleteScheduledActionOutput) String() string

String returns the string representation

type BatchPutScheduledUpdateGroupActionInput Uses

type BatchPutScheduledUpdateGroupActionInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // One or more scheduled actions. The maximum number allowed is 50.
    //
    // ScheduledUpdateGroupActions is a required field
    ScheduledUpdateGroupActions []*ScheduledUpdateGroupActionRequest `type:"list" required:"true"`
    // contains filtered or unexported fields
}

func (BatchPutScheduledUpdateGroupActionInput) GoString Uses

func (s BatchPutScheduledUpdateGroupActionInput) GoString() string

GoString returns the string representation

func (*BatchPutScheduledUpdateGroupActionInput) SetAutoScalingGroupName Uses

func (s *BatchPutScheduledUpdateGroupActionInput) SetAutoScalingGroupName(v string) *BatchPutScheduledUpdateGroupActionInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*BatchPutScheduledUpdateGroupActionInput) SetScheduledUpdateGroupActions Uses

func (s *BatchPutScheduledUpdateGroupActionInput) SetScheduledUpdateGroupActions(v []*ScheduledUpdateGroupActionRequest) *BatchPutScheduledUpdateGroupActionInput

SetScheduledUpdateGroupActions sets the ScheduledUpdateGroupActions field's value.

func (BatchPutScheduledUpdateGroupActionInput) String Uses

func (s BatchPutScheduledUpdateGroupActionInput) String() string

String returns the string representation

func (*BatchPutScheduledUpdateGroupActionInput) Validate Uses

func (s *BatchPutScheduledUpdateGroupActionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type BatchPutScheduledUpdateGroupActionOutput Uses

type BatchPutScheduledUpdateGroupActionOutput struct {

    // The names of the scheduled actions that could not be created or updated,
    // including an error message.
    FailedScheduledUpdateGroupActions []*FailedScheduledUpdateGroupActionRequest `type:"list"`
    // contains filtered or unexported fields
}

func (BatchPutScheduledUpdateGroupActionOutput) GoString Uses

func (s BatchPutScheduledUpdateGroupActionOutput) GoString() string

GoString returns the string representation

func (*BatchPutScheduledUpdateGroupActionOutput) SetFailedScheduledUpdateGroupActions Uses

func (s *BatchPutScheduledUpdateGroupActionOutput) SetFailedScheduledUpdateGroupActions(v []*FailedScheduledUpdateGroupActionRequest) *BatchPutScheduledUpdateGroupActionOutput

SetFailedScheduledUpdateGroupActions sets the FailedScheduledUpdateGroupActions field's value.

func (BatchPutScheduledUpdateGroupActionOutput) String Uses

func (s BatchPutScheduledUpdateGroupActionOutput) String() string

String returns the string representation

type BlockDeviceMapping Uses

type BlockDeviceMapping struct {

    // The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
    // For more information, see Device Naming on Linux Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html)
    // in the Amazon EC2 User Guide for Linux Instances.
    //
    // DeviceName is a required field
    DeviceName *string `min:"1" type:"string" required:"true"`

    // The information about the Amazon EBS volume.
    Ebs *Ebs `type:"structure"`

    // Suppresses a device mapping.
    //
    // If this parameter is true for the root device, the instance might fail the
    // EC2 health check. In that case, Amazon EC2 Auto Scaling launches a replacement
    // instance.
    NoDevice *bool `type:"boolean"`

    // The name of the virtual device (for example, ephemeral0).
    VirtualName *string `min:"1" type:"string"`
    // contains filtered or unexported fields
}

Describes a block device mapping.

func (BlockDeviceMapping) GoString Uses

func (s BlockDeviceMapping) GoString() string

GoString returns the string representation

func (*BlockDeviceMapping) SetDeviceName Uses

func (s *BlockDeviceMapping) SetDeviceName(v string) *BlockDeviceMapping

SetDeviceName sets the DeviceName field's value.

func (*BlockDeviceMapping) SetEbs Uses

func (s *BlockDeviceMapping) SetEbs(v *Ebs) *BlockDeviceMapping

SetEbs sets the Ebs field's value.

func (*BlockDeviceMapping) SetNoDevice Uses

func (s *BlockDeviceMapping) SetNoDevice(v bool) *BlockDeviceMapping

SetNoDevice sets the NoDevice field's value.

func (*BlockDeviceMapping) SetVirtualName Uses

func (s *BlockDeviceMapping) SetVirtualName(v string) *BlockDeviceMapping

SetVirtualName sets the VirtualName field's value.

func (BlockDeviceMapping) String Uses

func (s BlockDeviceMapping) String() string

String returns the string representation

func (*BlockDeviceMapping) Validate Uses

func (s *BlockDeviceMapping) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CompleteLifecycleActionInput Uses

type CompleteLifecycleActionInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The ID of the instance.
    InstanceId *string `min:"1" type:"string"`

    // The action for the group to take. This parameter can be either CONTINUE or
    // ABANDON.
    //
    // LifecycleActionResult is a required field
    LifecycleActionResult *string `type:"string" required:"true"`

    // A universally unique identifier (UUID) that identifies a specific lifecycle
    // action associated with an instance. Amazon EC2 Auto Scaling sends this token
    // to the notification target you specified when you created the lifecycle hook.
    LifecycleActionToken *string `min:"36" type:"string"`

    // The name of the lifecycle hook.
    //
    // LifecycleHookName is a required field
    LifecycleHookName *string `min:"1" type:"string" required:"true"`
    // contains filtered or unexported fields
}

func (CompleteLifecycleActionInput) GoString Uses

func (s CompleteLifecycleActionInput) GoString() string

GoString returns the string representation

func (*CompleteLifecycleActionInput) SetAutoScalingGroupName Uses

func (s *CompleteLifecycleActionInput) SetAutoScalingGroupName(v string) *CompleteLifecycleActionInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*CompleteLifecycleActionInput) SetInstanceId Uses

func (s *CompleteLifecycleActionInput) SetInstanceId(v string) *CompleteLifecycleActionInput

SetInstanceId sets the InstanceId field's value.

func (*CompleteLifecycleActionInput) SetLifecycleActionResult Uses

func (s *CompleteLifecycleActionInput) SetLifecycleActionResult(v string) *CompleteLifecycleActionInput

SetLifecycleActionResult sets the LifecycleActionResult field's value.

func (*CompleteLifecycleActionInput) SetLifecycleActionToken Uses

func (s *CompleteLifecycleActionInput) SetLifecycleActionToken(v string) *CompleteLifecycleActionInput

SetLifecycleActionToken sets the LifecycleActionToken field's value.

func (*CompleteLifecycleActionInput) SetLifecycleHookName Uses

func (s *CompleteLifecycleActionInput) SetLifecycleHookName(v string) *CompleteLifecycleActionInput

SetLifecycleHookName sets the LifecycleHookName field's value.

func (CompleteLifecycleActionInput) String Uses

func (s CompleteLifecycleActionInput) String() string

String returns the string representation

func (*CompleteLifecycleActionInput) Validate Uses

func (s *CompleteLifecycleActionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CompleteLifecycleActionOutput Uses

type CompleteLifecycleActionOutput struct {
    // contains filtered or unexported fields
}

func (CompleteLifecycleActionOutput) GoString Uses

func (s CompleteLifecycleActionOutput) GoString() string

GoString returns the string representation

func (CompleteLifecycleActionOutput) String Uses

func (s CompleteLifecycleActionOutput) String() string

String returns the string representation

type CreateAutoScalingGroupInput Uses

type CreateAutoScalingGroupInput struct {

    // The name of the Auto Scaling group. This name must be unique per Region per
    // account.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // One or more Availability Zones for the group. This parameter is optional
    // if you specify one or more subnets for VPCZoneIdentifier.
    //
    // Conditional: If your account supports EC2-Classic and VPC, this parameter
    // is required to launch instances into EC2-Classic.
    AvailabilityZones []*string `min:"1" type:"list"`

    // 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 (https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    DefaultCooldown *int64 `type:"integer"`

    // The number of Amazon EC2 instances that the Auto Scaling group attempts to
    // maintain. 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. If you
    // do not specify a desired capacity, the default is the minimum size of the
    // group.
    DesiredCapacity *int64 `type:"integer"`

    // 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.
    // During this time, any health check failures for the instance are ignored.
    // The default value is 0.
    //
    // For more information, see Health Check Grace Period (https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html#health-check-grace-period)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // Conditional: This parameter is required if you are adding an ELB health check.
    HealthCheckGracePeriod *int64 `type:"integer"`

    // The service to use for the health checks. The valid values are EC2 and ELB.
    // The default value is EC2. 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.
    //
    // For more information, see Health Checks for Auto Scaling Instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    HealthCheckType *string `min:"1" type:"string"`

    // The ID of the instance used to create a launch configuration for the group.
    //
    // When you specify an ID of an instance, Amazon EC2 Auto Scaling creates a
    // new launch configuration and associates it with the group. This launch configuration
    // derives its attributes from the specified instance, except for the block
    // device mapping.
    //
    // For more information, see Create an Auto Scaling Group Using an EC2 Instance
    // (https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-from-instance.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // You must specify one of the following parameters in your request: LaunchConfigurationName,
    // LaunchTemplate, InstanceId, or MixedInstancesPolicy.
    InstanceId *string `min:"1" type:"string"`

    // The name of the launch configuration.
    //
    // If you do not specify LaunchConfigurationName, you must specify one of the
    // following parameters: InstanceId, LaunchTemplate, or MixedInstancesPolicy.
    LaunchConfigurationName *string `min:"1" type:"string"`

    // The launch template to use to launch instances.
    //
    // For more information, see LaunchTemplateSpecification (https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_LaunchTemplateSpecification.html)
    // in the Amazon EC2 Auto Scaling API Reference.
    //
    // If you do not specify LaunchTemplate, you must specify one of the following
    // parameters: InstanceId, LaunchConfigurationName, or MixedInstancesPolicy.
    LaunchTemplate *LaunchTemplateSpecification `type:"structure"`

    // One or more lifecycle hooks.
    LifecycleHookSpecificationList []*LifecycleHookSpecification `type:"list"`

    // A list of Classic Load Balancers associated with this Auto Scaling group.
    // For Application Load Balancers and Network Load Balancers, specify a list
    // of target groups using the TargetGroupARNs property instead.
    //
    // For more information, see Using a Load Balancer with an Auto Scaling Group
    // (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    LoadBalancerNames []*string `type:"list"`

    // The maximum size of the group.
    //
    // MaxSize is a required field
    MaxSize *int64 `type:"integer" required:"true"`

    // The minimum size of the group.
    //
    // MinSize is a required field
    MinSize *int64 `type:"integer" required:"true"`

    // An embedded object that specifies a mixed instances policy. The required
    // parameters must be specified. If optional parameters are unspecified, their
    // default values are used.
    //
    // The policy includes parameters that not only define the distribution of On-Demand
    // Instances and Spot Instances, the maximum price to pay for Spot Instances,
    // and how the Auto Scaling group allocates instance types to fulfill On-Demand
    // and Spot capacity, but also the parameters that specify the instance configuration
    // information—the launch template and instance types.
    //
    // For more information, see MixedInstancesPolicy (https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_MixedInstancesPolicy.html)
    // in the Amazon EC2 Auto Scaling API Reference and Auto Scaling Groups with
    // Multiple Instance Types and Purchase Options (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // You must specify one of the following parameters in your request: LaunchConfigurationName,
    // LaunchTemplate, InstanceId, or MixedInstancesPolicy.
    MixedInstancesPolicy *MixedInstancesPolicy `type:"structure"`

    // 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 (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection)
    // in the Amazon EC2 Auto Scaling User Guide.
    NewInstancesProtectedFromScaleIn *bool `type:"boolean"`

    // 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 (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html)
    // in the Amazon EC2 User Guide for Linux Instances.
    PlacementGroup *string `min:"1" type:"string"`

    // The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling
    // group uses to call other AWS services on your behalf. By default, Amazon
    // EC2 Auto Scaling uses a service-linked role named AWSServiceRoleForAutoScaling,
    // which it creates if it does not exist. For more information, see Service-Linked
    // Roles (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    ServiceLinkedRoleARN *string `min:"1" type:"string"`

    // One or more tags.
    //
    // For more information, see Tagging Auto Scaling Groups and Instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-tagging.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    Tags []*Tag `type:"list"`

    // The Amazon Resource Names (ARN) of the target groups to associate with the
    // Auto Scaling group. Instances are registered as targets in a target group,
    // and traffic is routed to the target group.
    //
    // For more information, see Using a Load Balancer with an Auto Scaling Group
    // (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    TargetGroupARNs []*string `type:"list"`

    // One or more termination policies used to select the instance to terminate.
    // These policies are executed in the order that they are listed.
    //
    // For more information, see Controlling Which Instances Auto Scaling Terminates
    // During Scale In (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    TerminationPolicies []*string `type:"list"`

    // A comma-separated list of subnet IDs for your virtual private cloud (VPC).
    //
    // If you specify VPCZoneIdentifier with AvailabilityZones, the subnets that
    // you specify for this parameter must reside in those Availability Zones.
    //
    // Conditional: If your account supports EC2-Classic and VPC, this parameter
    // is required to launch instances into a VPC.
    VPCZoneIdentifier *string `min:"1" type:"string"`
    // contains filtered or unexported fields
}

func (CreateAutoScalingGroupInput) GoString Uses

func (s CreateAutoScalingGroupInput) GoString() string

GoString returns the string representation

func (*CreateAutoScalingGroupInput) SetAutoScalingGroupName Uses

func (s *CreateAutoScalingGroupInput) SetAutoScalingGroupName(v string) *CreateAutoScalingGroupInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*CreateAutoScalingGroupInput) SetAvailabilityZones Uses

func (s *CreateAutoScalingGroupInput) SetAvailabilityZones(v []*string) *CreateAutoScalingGroupInput

SetAvailabilityZones sets the AvailabilityZones field's value.

func (*CreateAutoScalingGroupInput) SetDefaultCooldown Uses

func (s *CreateAutoScalingGroupInput) SetDefaultCooldown(v int64) *CreateAutoScalingGroupInput

SetDefaultCooldown sets the DefaultCooldown field's value.

func (*CreateAutoScalingGroupInput) SetDesiredCapacity Uses

func (s *CreateAutoScalingGroupInput) SetDesiredCapacity(v int64) *CreateAutoScalingGroupInput

SetDesiredCapacity sets the DesiredCapacity field's value.

func (*CreateAutoScalingGroupInput) SetHealthCheckGracePeriod Uses

func (s *CreateAutoScalingGroupInput) SetHealthCheckGracePeriod(v int64) *CreateAutoScalingGroupInput

SetHealthCheckGracePeriod sets the HealthCheckGracePeriod field's value.

func (*CreateAutoScalingGroupInput) SetHealthCheckType Uses

func (s *CreateAutoScalingGroupInput) SetHealthCheckType(v string) *CreateAutoScalingGroupInput

SetHealthCheckType sets the HealthCheckType field's value.

func (*CreateAutoScalingGroupInput) SetInstanceId Uses

func (s *CreateAutoScalingGroupInput) SetInstanceId(v string) *CreateAutoScalingGroupInput

SetInstanceId sets the InstanceId field's value.

func (*CreateAutoScalingGroupInput) SetLaunchConfigurationName Uses

func (s *CreateAutoScalingGroupInput) SetLaunchConfigurationName(v string) *CreateAutoScalingGroupInput

SetLaunchConfigurationName sets the LaunchConfigurationName field's value.

func (*CreateAutoScalingGroupInput) SetLaunchTemplate Uses

func (s *CreateAutoScalingGroupInput) SetLaunchTemplate(v *LaunchTemplateSpecification) *CreateAutoScalingGroupInput

SetLaunchTemplate sets the LaunchTemplate field's value.

func (*CreateAutoScalingGroupInput) SetLifecycleHookSpecificationList Uses

func (s *CreateAutoScalingGroupInput) SetLifecycleHookSpecificationList(v []*LifecycleHookSpecification) *CreateAutoScalingGroupInput

SetLifecycleHookSpecificationList sets the LifecycleHookSpecificationList field's value.

func (*CreateAutoScalingGroupInput) SetLoadBalancerNames Uses

func (s *CreateAutoScalingGroupInput) SetLoadBalancerNames(v []*string) *CreateAutoScalingGroupInput

SetLoadBalancerNames sets the LoadBalancerNames field's value.

func (*CreateAutoScalingGroupInput) SetMaxSize Uses

func (s *CreateAutoScalingGroupInput) SetMaxSize(v int64) *CreateAutoScalingGroupInput

SetMaxSize sets the MaxSize field's value.

func (*CreateAutoScalingGroupInput) SetMinSize Uses

func (s *CreateAutoScalingGroupInput) SetMinSize(v int64) *CreateAutoScalingGroupInput

SetMinSize sets the MinSize field's value.

func (*CreateAutoScalingGroupInput) SetMixedInstancesPolicy Uses

func (s *CreateAutoScalingGroupInput) SetMixedInstancesPolicy(v *MixedInstancesPolicy) *CreateAutoScalingGroupInput

SetMixedInstancesPolicy sets the MixedInstancesPolicy field's value.

func (*CreateAutoScalingGroupInput) SetNewInstancesProtectedFromScaleIn Uses

func (s *CreateAutoScalingGroupInput) SetNewInstancesProtectedFromScaleIn(v bool) *CreateAutoScalingGroupInput

SetNewInstancesProtectedFromScaleIn sets the NewInstancesProtectedFromScaleIn field's value.

func (*CreateAutoScalingGroupInput) SetPlacementGroup Uses

func (s *CreateAutoScalingGroupInput) SetPlacementGroup(v string) *CreateAutoScalingGroupInput

SetPlacementGroup sets the PlacementGroup field's value.

func (*CreateAutoScalingGroupInput) SetServiceLinkedRoleARN Uses

func (s *CreateAutoScalingGroupInput) SetServiceLinkedRoleARN(v string) *CreateAutoScalingGroupInput

SetServiceLinkedRoleARN sets the ServiceLinkedRoleARN field's value.

func (*CreateAutoScalingGroupInput) SetTags Uses

func (s *CreateAutoScalingGroupInput) SetTags(v []*Tag) *CreateAutoScalingGroupInput

SetTags sets the Tags field's value.

func (*CreateAutoScalingGroupInput) SetTargetGroupARNs Uses

func (s *CreateAutoScalingGroupInput) SetTargetGroupARNs(v []*string) *CreateAutoScalingGroupInput

SetTargetGroupARNs sets the TargetGroupARNs field's value.

func (*CreateAutoScalingGroupInput) SetTerminationPolicies Uses

func (s *CreateAutoScalingGroupInput) SetTerminationPolicies(v []*string) *CreateAutoScalingGroupInput

SetTerminationPolicies sets the TerminationPolicies field's value.

func (*CreateAutoScalingGroupInput) SetVPCZoneIdentifier Uses

func (s *CreateAutoScalingGroupInput) SetVPCZoneIdentifier(v string) *CreateAutoScalingGroupInput

SetVPCZoneIdentifier sets the VPCZoneIdentifier field's value.

func (CreateAutoScalingGroupInput) String Uses

func (s CreateAutoScalingGroupInput) String() string

String returns the string representation

func (*CreateAutoScalingGroupInput) Validate Uses

func (s *CreateAutoScalingGroupInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateAutoScalingGroupOutput Uses

type CreateAutoScalingGroupOutput struct {
    // contains filtered or unexported fields
}

func (CreateAutoScalingGroupOutput) GoString Uses

func (s CreateAutoScalingGroupOutput) GoString() string

GoString returns the string representation

func (CreateAutoScalingGroupOutput) String Uses

func (s CreateAutoScalingGroupOutput) String() string

String returns the string representation

type CreateLaunchConfigurationInput Uses

type CreateLaunchConfigurationInput struct {

    // For Auto Scaling groups that are running in a virtual private cloud (VPC),
    // specifies whether to assign a public IP address to the group's instances.
    // If you specify true, each instance in the Auto Scaling group receives a unique
    // public IP address. For more information, see Launching Auto Scaling Instances
    // in a VPC (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // If you specify this parameter, you must specify at least one subnet for VPCZoneIdentifier
    // when you create your group.
    //
    // If the instance is launched into a default subnet, the default is to assign
    // a public IP address, unless you disabled the option to assign a public IP
    // address on the subnet. If the instance is launched into a nondefault subnet,
    // the default is not to assign a public IP address, unless you enabled the
    // option to assign a public IP address on the subnet.
    AssociatePublicIpAddress *bool `type:"boolean"`

    // A block device mapping, which specifies the block devices for the instance.
    // You can specify virtual devices and EBS volumes. For more information, see
    // Block Device Mapping (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html)
    // in the Amazon EC2 User Guide for Linux Instances.
    BlockDeviceMappings []*BlockDeviceMapping `type:"list"`

    // The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
    // For more information, see ClassicLink (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html)
    // in the Amazon EC2 User Guide for Linux Instances and Linking EC2-Classic
    // Instances to a VPC (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-ClassicLink)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // This parameter can only be used if you are launching EC2-Classic instances.
    ClassicLinkVPCId *string `min:"1" type:"string"`

    // The IDs of one or more security groups for the specified ClassicLink-enabled
    // VPC. For more information, see ClassicLink (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html)
    // in the Amazon EC2 User Guide for Linux Instances and Linking EC2-Classic
    // Instances to a VPC (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-ClassicLink)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // If you specify the ClassicLinkVPCId parameter, you must specify this parameter.
    ClassicLinkVPCSecurityGroups []*string `type:"list"`

    // Specifies whether the launch configuration is optimized for EBS I/O (true)
    // or not (false). The optimization provides dedicated throughput to Amazon
    // EBS and an optimized configuration stack to provide optimal I/O performance.
    // This optimization is not available with all instance types. Additional fees
    // are incurred when you enable EBS optimization for an instance type that is
    // not EBS-optimized by default. For more information, see Amazon EBS-Optimized
    // Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html)
    // in the Amazon EC2 User Guide for Linux Instances.
    //
    // The default value is false.
    EbsOptimized *bool `type:"boolean"`

    // The name or the Amazon Resource Name (ARN) of the instance profile associated
    // with the IAM role for the instance. The instance profile contains the IAM
    // role.
    //
    // For more information, see IAM Role for Applications That Run on Amazon EC2
    // Instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/us-iam-role.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    IamInstanceProfile *string `min:"1" type:"string"`

    // The ID of the Amazon Machine Image (AMI) that was assigned during registration.
    // For more information, see Finding an AMI (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html)
    // in the Amazon EC2 User Guide for Linux Instances.
    //
    // If you do not specify InstanceId, you must specify ImageId.
    ImageId *string `min:"1" type:"string"`

    // The ID of the instance to use to create the launch configuration. The new
    // launch configuration derives attributes from the instance, except for the
    // block device mapping.
    //
    // To create a launch configuration with a block device mapping or override
    // any other instance attributes, specify them as part of the same request.
    //
    // For more information, see Create a Launch Configuration Using an EC2 Instance
    // (https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-lc-with-instanceID.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // If you do not specify InstanceId, you must specify both ImageId and InstanceType.
    InstanceId *string `min:"1" type:"string"`

    // Controls whether instances in this group are launched with detailed (true)
    // or basic (false) monitoring.
    //
    // The default value is true (enabled).
    //
    // When detailed monitoring is enabled, Amazon CloudWatch generates metrics
    // every minute and your account is charged a fee. When you disable detailed
    // monitoring, CloudWatch generates metrics every 5 minutes. For more information,
    // see Configure Monitoring for Auto Scaling Instances (https://docs.aws.amazon.com/autoscaling/latest/userguide/as-instance-monitoring.html#enable-as-instance-metrics)
    // in the Amazon EC2 Auto Scaling User Guide.
    InstanceMonitoring *InstanceMonitoring `type:"structure"`

    // Specifies the instance type of the EC2 instance.
    //
    // For information about available instance types, see Available Instance Types
    // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#AvailableInstanceTypes)
    // in the Amazon EC2 User Guide for Linux Instances.
    //
    // If you do not specify InstanceId, you must specify InstanceType.
    InstanceType *string `min:"1" type:"string"`

    // The ID of the kernel associated with the AMI.
    KernelId *string `min:"1" type:"string"`

    // The name of the key pair. For more information, see Amazon EC2 Key Pairs
    // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html)
    // in the Amazon EC2 User Guide for Linux Instances.
    KeyName *string `min:"1" type:"string"`

    // The name of the launch configuration. This name must be unique per Region
    // per account.
    //
    // LaunchConfigurationName is a required field
    LaunchConfigurationName *string `min:"1" type:"string" required:"true"`

    // The tenancy of the instance. An instance with dedicated tenancy runs on isolated,
    // single-tenant hardware and can only be launched into a VPC.
    //
    // To launch dedicated instances into a shared tenancy VPC (a VPC with the instance
    // placement tenancy attribute set to default), you must set the value of this
    // parameter to dedicated.
    //
    // If you specify PlacementTenancy, you must specify at least one subnet for
    // VPCZoneIdentifier when you create your group.
    //
    // For more information, see Instance Placement Tenancy (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-vpc-tenancy)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // Valid values: default | dedicated
    PlacementTenancy *string `min:"1" type:"string"`

    // The ID of the RAM disk to select.
    RamdiskId *string `min:"1" type:"string"`

    // A list that contains the security groups to assign to the instances in the
    // Auto Scaling group.
    //
    // [EC2-VPC] Specify the security group IDs. For more information, see Security
    // Groups for Your VPC (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html)
    // in the Amazon Virtual Private Cloud User Guide.
    //
    // [EC2-Classic] Specify either the security group names or the security group
    // IDs. For more information, see Amazon EC2 Security Groups (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html)
    // in the Amazon EC2 User Guide for Linux Instances.
    SecurityGroups []*string `type:"list"`

    // The maximum hourly price to be paid for any Spot Instance launched to fulfill
    // the request. Spot Instances are launched when the price you specify exceeds
    // the current Spot market price. For more information, see Launching Spot Instances
    // in Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-launch-spot-instances.html)
    // in the Amazon EC2 Auto Scaling User Guide.
    //
    // If a Spot price is set, then the Auto Scaling group will only launch instances
    // when the Spot price has been met, regardless of the setting in the Auto Scaling
    // group's DesiredCapacity.
    //
    // When you change your Spot price by creating a new launch configuration, running
    // instances will continue to run as long as the Spot price for those running
    // instances is higher than the current Spot market price.
    SpotPrice *string `min:"1" type:"string"`

    // The Base64-encoded user data to make available to the launched EC2 instances.
    // For more information, see Instance Metadata and User Data (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)
    // in the Amazon EC2 User Guide for Linux Instances.
    UserData *string `type:"string"`
    // contains filtered or unexported fields
}

func (CreateLaunchConfigurationInput) GoString Uses

func (s CreateLaunchConfigurationInput) GoString() string

GoString returns the string representation

func (*CreateLaunchConfigurationInput) SetAssociatePublicIpAddress Uses

func (s *CreateLaunchConfigurationInput) SetAssociatePublicIpAddress(v bool) *CreateLaunchConfigurationInput

SetAssociatePublicIpAddress sets the AssociatePublicIpAddress field's value.

func (*CreateLaunchConfigurationInput) SetBlockDeviceMappings Uses

func (s *CreateLaunchConfigurationInput) SetBlockDeviceMappings(v []*BlockDeviceMapping) *CreateLaunchConfigurationInput

SetBlockDeviceMappings sets the BlockDeviceMappings field's value.

func (*CreateLaunchConfigurationInput) SetClassicLinkVPCId Uses

func (s *CreateLaunchConfigurationInput) SetClassicLinkVPCId(v string) *CreateLaunchConfigurationInput

SetClassicLinkVPCId sets the ClassicLinkVPCId field's value.

func (*CreateLaunchConfigurationInput) SetClassicLinkVPCSecurityGroups Uses

func (s *CreateLaunchConfigurationInput) SetClassicLinkVPCSecurityGroups(v []*string) *CreateLaunchConfigurationInput

SetClassicLinkVPCSecurityGroups sets the ClassicLinkVPCSecurityGroups field's value.

func (*CreateLaunchConfigurationInput) SetEbsOptimized Uses

func (s *CreateLaunchConfigurationInput) SetEbsOptimized(v bool) *CreateLaunchConfigurationInput

SetEbsOptimized sets the EbsOptimized field's value.

func (*CreateLaunchConfigurationInput) SetIamInstanceProfile Uses

func (s *CreateLaunchConfigurationInput) SetIamInstanceProfile(v string) *CreateLaunchConfigurationInput

SetIamInstanceProfile sets the IamInstanceProfile field's value.

func (*CreateLaunchConfigurationInput) SetImageId Uses

func (s *CreateLaunchConfigurationInput) SetImageId(v string) *CreateLaunchConfigurationInput

SetImageId sets the ImageId field's value.

func (*CreateLaunchConfigurationInput) SetInstanceId Uses

func (s *CreateLaunchConfigurationInput) SetInstanceId(v string) *CreateLaunchConfigurationInput

SetInstanceId sets the InstanceId field's value.

func (*CreateLaunchConfigurationInput) SetInstanceMonitoring Uses

func (s *CreateLaunchConfigurationInput) SetInstanceMonitoring(v *InstanceMonitoring) *CreateLaunchConfigurationInput

SetInstanceMonitoring sets the InstanceMonitoring field's value.

func (*CreateLaunchConfigurationInput) SetInstanceType Uses

func (s *CreateLaunchConfigurationInput) SetInstanceType(v string) *CreateLaunchConfigurationInput

SetInstanceType sets the InstanceType field's value.

func (*CreateLaunchConfigurationInput) SetKernelId Uses

func (s *CreateLaunchConfigurationInput) SetKernelId(v string) *CreateLaunchConfigurationInput

SetKernelId sets the KernelId field's value.

func (*CreateLaunchConfigurationInput) SetKeyName Uses

func (s *CreateLaunchConfigurationInput) SetKeyName(v string) *CreateLaunchConfigurationInput

SetKeyName sets the KeyName field's value.

func (*CreateLaunchConfigurationInput) SetLaunchConfigurationName Uses

func (s *CreateLaunchConfigurationInput) SetLaunchConfigurationName(v string) *CreateLaunchConfigurationInput

SetLaunchConfigurationName sets the LaunchConfigurationName field's value.

func (*CreateLaunchConfigurationInput) SetPlacementTenancy Uses

func (s *CreateLaunchConfigurationInput) SetPlacementTenancy(v string) *CreateLaunchConfigurationInput

SetPlacementTenancy sets the PlacementTenancy field's value.

func (*CreateLaunchConfigurationInput) SetRamdiskId Uses

func (s *CreateLaunchConfigurationInput) SetRamdiskId(v string) *CreateLaunchConfigurationInput

SetRamdiskId sets the RamdiskId field's value.

func (*CreateLaunchConfigurationInput) SetSecurityGroups Uses

func (s *CreateLaunchConfigurationInput) SetSecurityGroups(v []*string) *CreateLaunchConfigurationInput

SetSecurityGroups sets the SecurityGroups field's value.

func (*CreateLaunchConfigurationInput) SetSpotPrice Uses

func (s *CreateLaunchConfigurationInput) SetSpotPrice(v string) *CreateLaunchConfigurationInput

SetSpotPrice sets the SpotPrice field's value.

func (*CreateLaunchConfigurationInput) SetUserData Uses

func (s *CreateLaunchConfigurationInput) SetUserData(v string) *CreateLaunchConfigurationInput

SetUserData sets the UserData field's value.

func (CreateLaunchConfigurationInput) String Uses

func (s CreateLaunchConfigurationInput) String() string

String returns the string representation

func (*CreateLaunchConfigurationInput) Validate Uses

func (s *CreateLaunchConfigurationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateLaunchConfigurationOutput Uses

type CreateLaunchConfigurationOutput struct {
    // contains filtered or unexported fields
}

func (CreateLaunchConfigurationOutput) GoString Uses

func (s CreateLaunchConfigurationOutput) GoString() string

GoString returns the string representation

func (CreateLaunchConfigurationOutput) String Uses

func (s CreateLaunchConfigurationOutput) String() string

String returns the string representation

type CreateOrUpdateTagsInput Uses

type CreateOrUpdateTagsInput struct {

    // One or more tags.
    //
    // Tags is a required field
    Tags []*Tag `type:"list" required:"true"`
    // contains filtered or unexported fields
}

func (CreateOrUpdateTagsInput) GoString Uses

func (s CreateOrUpdateTagsInput) GoString() string

GoString returns the string representation

func (*CreateOrUpdateTagsInput) SetTags Uses

func (s *CreateOrUpdateTagsInput) SetTags(v []*Tag) *CreateOrUpdateTagsInput

SetTags sets the Tags field's value.

func (CreateOrUpdateTagsInput) String Uses

func (s CreateOrUpdateTagsInput) String() string

String returns the string representation

func (*CreateOrUpdateTagsInput) Validate Uses

func (s *CreateOrUpdateTagsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateOrUpdateTagsOutput Uses

type CreateOrUpdateTagsOutput struct {
    // contains filtered or unexported fields
}

func (CreateOrUpdateTagsOutput) GoString Uses

func (s CreateOrUpdateTagsOutput) GoString() string

GoString returns the string representation

func (CreateOrUpdateTagsOutput) String Uses

func (s CreateOrUpdateTagsOutput) String() string

String returns the string representation

type CustomizedMetricSpecification Uses

type CustomizedMetricSpecification struct {

    // The dimensions of the metric.
    //
    // Conditional: If you published your metric with dimensions, you must specify
    // the same dimensions in your scaling policy.
    Dimensions []*MetricDimension `type:"list"`

    // The name of the metric.
    //
    // MetricName is a required field
    MetricName *string `type:"string" required:"true"`

    // The namespace of the metric.
    //
    // Namespace is a required field
    Namespace *string `type:"string" required:"true"`

    // The statistic of the metric.
    //
    // Statistic is a required field
    Statistic *string `type:"string" required:"true" enum:"MetricStatistic"`

    // The unit of the metric.
    Unit *string `type:"string"`
    // contains filtered or unexported fields
}

Represents a CloudWatch metric of your choosing for a target tracking scaling policy to use with Amazon EC2 Auto Scaling.

To create your customized metric specification:

* Add values for each required parameter from CloudWatch. You can use
an existing metric, or a new metric that you create. To use your own metric,
you must first publish the metric to CloudWatch. For more information,
see Publish Custom Metrics (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html)
in the Amazon CloudWatch User Guide.

* Choose a metric that changes proportionally with capacity. The value
of the metric should increase or decrease in inverse proportion to the
number of capacity units. That is, the value of the metric should decrease
when capacity increases.

For more information about CloudWatch, see Amazon CloudWatch Concepts (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html).

func (CustomizedMetricSpecification) GoString Uses

func (s CustomizedMetricSpecification) GoString() string

GoString returns the string representation

func (*CustomizedMetricSpecification) SetDimensions Uses

func (s *CustomizedMetricSpecification) SetDimensions(v []*MetricDimension) *CustomizedMetricSpecification

SetDimensions sets the Dimensions field's value.

func (*CustomizedMetricSpecification) SetMetricName Uses

func (s *CustomizedMetricSpecification) SetMetricName(v string) *CustomizedMetricSpecification

SetMetricName sets the MetricName field's value.

func (*CustomizedMetricSpecification) SetNamespace Uses

func (s *CustomizedMetricSpecification) SetNamespace(v string) *CustomizedMetricSpecification

SetNamespace sets the Namespace field's value.

func (*CustomizedMetricSpecification) SetStatistic Uses

func (s *CustomizedMetricSpecification) SetStatistic(v string) *CustomizedMetricSpecification

SetStatistic sets the Statistic field's value.

func (*CustomizedMetricSpecification) SetUnit Uses

func (s *CustomizedMetricSpecification) SetUnit(v string) *CustomizedMetricSpecification

SetUnit sets the Unit field's value.

func (CustomizedMetricSpecification) String Uses

func (s CustomizedMetricSpecification) String() string

String returns the string representation

func (*CustomizedMetricSpecification) Validate Uses

func (s *CustomizedMetricSpecification) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteAutoScalingGroupInput Uses

type DeleteAutoScalingGroupInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // Specifies that the group is to be deleted along with all instances associated
    // with the group, without waiting for all instances to be terminated. This
    // parameter also deletes any lifecycle actions associated with the group.
    ForceDelete *bool `type:"boolean"`
    // contains filtered or unexported fields
}

func (DeleteAutoScalingGroupInput) GoString Uses

func (s DeleteAutoScalingGroupInput) GoString() string

GoString returns the string representation

func (*DeleteAutoScalingGroupInput) SetAutoScalingGroupName Uses

func (s *DeleteAutoScalingGroupInput) SetAutoScalingGroupName(v string) *DeleteAutoScalingGroupInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*DeleteAutoScalingGroupInput) SetForceDelete Uses

func (s *DeleteAutoScalingGroupInput) SetForceDelete(v bool) *DeleteAutoScalingGroupInput

SetForceDelete sets the ForceDelete field's value.

func (DeleteAutoScalingGroupInput) String Uses

func (s DeleteAutoScalingGroupInput) String() string

String returns the string representation

func (*DeleteAutoScalingGroupInput) Validate Uses

func (s *DeleteAutoScalingGroupInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteAutoScalingGroupOutput Uses

type DeleteAutoScalingGroupOutput struct {
    // contains filtered or unexported fields
}

func (DeleteAutoScalingGroupOutput) GoString Uses

func (s DeleteAutoScalingGroupOutput) GoString() string

GoString returns the string representation

func (DeleteAutoScalingGroupOutput) String Uses

func (s DeleteAutoScalingGroupOutput) String() string

String returns the string representation

type DeleteLaunchConfigurationInput Uses

type DeleteLaunchConfigurationInput struct {

    // The name of the launch configuration.
    //
    // LaunchConfigurationName is a required field
    LaunchConfigurationName *string `min:"1" type:"string" required:"true"`
    // contains filtered or unexported fields
}

func (DeleteLaunchConfigurationInput) GoString Uses

func (s DeleteLaunchConfigurationInput) GoString() string

GoString returns the string representation

func (*DeleteLaunchConfigurationInput) SetLaunchConfigurationName Uses

func (s *DeleteLaunchConfigurationInput) SetLaunchConfigurationName(v string) *DeleteLaunchConfigurationInput

SetLaunchConfigurationName sets the LaunchConfigurationName field's value.

func (DeleteLaunchConfigurationInput) String Uses

func (s DeleteLaunchConfigurationInput) String() string

String returns the string representation

func (*DeleteLaunchConfigurationInput) Validate Uses

func (s *DeleteLaunchConfigurationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteLaunchConfigurationOutput Uses

type DeleteLaunchConfigurationOutput struct {
    // contains filtered or unexported fields
}

func (DeleteLaunchConfigurationOutput) GoString Uses

func (s DeleteLaunchConfigurationOutput) GoString() string

GoString returns the string representation

func (DeleteLaunchConfigurationOutput) String Uses

func (s DeleteLaunchConfigurationOutput) String() string

String returns the string representation

type DeleteLifecycleHookInput Uses

type DeleteLifecycleHookInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The name of the lifecycle hook.
    //
    // LifecycleHookName is a required field
    LifecycleHookName *string `min:"1" type:"string" required:"true"`
    // contains filtered or unexported fields
}

func (DeleteLifecycleHookInput) GoString Uses

func (s DeleteLifecycleHookInput) GoString() string

GoString returns the string representation

func (*DeleteLifecycleHookInput) SetAutoScalingGroupName Uses

func (s *DeleteLifecycleHookInput) SetAutoScalingGroupName(v string) *DeleteLifecycleHookInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*DeleteLifecycleHookInput) SetLifecycleHookName Uses

func (s *DeleteLifecycleHookInput) SetLifecycleHookName(v string) *DeleteLifecycleHookInput

SetLifecycleHookName sets the LifecycleHookName field's value.

func (DeleteLifecycleHookInput) String Uses

func (s DeleteLifecycleHookInput) String() string

String returns the string representation

func (*DeleteLifecycleHookInput) Validate Uses

func (s *DeleteLifecycleHookInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteLifecycleHookOutput Uses

type DeleteLifecycleHookOutput struct {
    // contains filtered or unexported fields
}

func (DeleteLifecycleHookOutput) GoString Uses

func (s DeleteLifecycleHookOutput) GoString() string

GoString returns the string representation

func (DeleteLifecycleHookOutput) String Uses

func (s DeleteLifecycleHookOutput) String() string

String returns the string representation

type DeleteNotificationConfigurationInput Uses

type DeleteNotificationConfigurationInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The Amazon Resource Name (ARN) of the Amazon Simple Notification Service
    // (Amazon SNS) topic.
    //
    // TopicARN is a required field
    TopicARN *string `min:"1" type:"string" required:"true"`
    // contains filtered or unexported fields
}

func (DeleteNotificationConfigurationInput) GoString Uses

func (s DeleteNotificationConfigurationInput) GoString() string

GoString returns the string representation

func (*DeleteNotificationConfigurationInput) SetAutoScalingGroupName Uses

func (s *DeleteNotificationConfigurationInput) SetAutoScalingGroupName(v string) *DeleteNotificationConfigurationInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*DeleteNotificationConfigurationInput) SetTopicARN Uses

func (s *DeleteNotificationConfigurationInput) SetTopicARN(v string) *DeleteNotificationConfigurationInput

SetTopicARN sets the TopicARN field's value.

func (DeleteNotificationConfigurationInput) String Uses

func (s DeleteNotificationConfigurationInput) String() string

String returns the string representation

func (*DeleteNotificationConfigurationInput) Validate Uses

func (s *DeleteNotificationConfigurationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteNotificationConfigurationOutput Uses

type DeleteNotificationConfigurationOutput struct {
    // contains filtered or unexported fields
}

func (DeleteNotificationConfigurationOutput) GoString Uses

func (s DeleteNotificationConfigurationOutput) GoString() string

GoString returns the string representation

func (DeleteNotificationConfigurationOutput) String Uses

func (s DeleteNotificationConfigurationOutput) String() string

String returns the string representation

type DeletePolicyInput Uses

type DeletePolicyInput struct {

    // The name of the Auto Scaling group.
    AutoScalingGroupName *string `min:"1" type:"string"`

    // The name or Amazon Resource Name (ARN) of the policy.
    //
    // PolicyName is a required field
    PolicyName *string `min:"1" type:"string" required:"true"`
    // contains filtered or unexported fields
}

func (DeletePolicyInput) GoString Uses

func (s DeletePolicyInput) GoString() string

GoString returns the string representation

func (*DeletePolicyInput) SetAutoScalingGroupName Uses

func (s *DeletePolicyInput) SetAutoScalingGroupName(v string) *DeletePolicyInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*DeletePolicyInput) SetPolicyName Uses

func (s *DeletePolicyInput) SetPolicyName(v string) *DeletePolicyInput

SetPolicyName sets the PolicyName field's value.

func (DeletePolicyInput) String Uses

func (s DeletePolicyInput) String() string

String returns the string representation

func (*DeletePolicyInput) Validate Uses

func (s *DeletePolicyInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeletePolicyOutput Uses

type DeletePolicyOutput struct {
    // contains filtered or unexported fields
}

func (DeletePolicyOutput) GoString Uses

func (s DeletePolicyOutput) GoString() string

GoString returns the string representation

func (DeletePolicyOutput) String Uses

func (s DeletePolicyOutput) String() string

String returns the string representation

type DeleteScheduledActionInput Uses

type DeleteScheduledActionInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The name of the action to delete.
    //
    // ScheduledActionName is a required field
    ScheduledActionName *string `min:"1" type:"string" required:"true"`
    // contains filtered or unexported fields
}

func (DeleteScheduledActionInput) GoString Uses

func (s DeleteScheduledActionInput) GoString() string

GoString returns the string representation

func (*DeleteScheduledActionInput) SetAutoScalingGroupName Uses

func (s *DeleteScheduledActionInput) SetAutoScalingGroupName(v string) *DeleteScheduledActionInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*DeleteScheduledActionInput) SetScheduledActionName Uses

func (s *DeleteScheduledActionInput) SetScheduledActionName(v string) *DeleteScheduledActionInput

SetScheduledActionName sets the ScheduledActionName field's value.

func (DeleteScheduledActionInput) String Uses

func (s DeleteScheduledActionInput) String() string

String returns the string representation

func (*DeleteScheduledActionInput) Validate Uses

func (s *DeleteScheduledActionInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteScheduledActionOutput Uses

type DeleteScheduledActionOutput struct {
    // contains filtered or unexported fields
}

func (DeleteScheduledActionOutput) GoString Uses

func (s DeleteScheduledActionOutput) GoString() string

GoString returns the string representation

func (DeleteScheduledActionOutput) String Uses

func (s DeleteScheduledActionOutput) String() string

String returns the string representation

type DeleteTagsInput Uses

type DeleteTagsInput struct {

    // One or more tags.
    //
    // Tags is a required field
    Tags []*Tag `type:"list" required:"true"`
    // contains filtered or unexported fields
}

func (DeleteTagsInput) GoString Uses

func (s DeleteTagsInput) GoString() string

GoString returns the string representation

func (*DeleteTagsInput) SetTags Uses

func (s *DeleteTagsInput) SetTags(v []*Tag) *DeleteTagsInput

SetTags sets the Tags field's value.

func (DeleteTagsInput) String Uses

func (s DeleteTagsInput) String() string

String returns the string representation

func (*DeleteTagsInput) Validate Uses

func (s *DeleteTagsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteTagsOutput Uses

type DeleteTagsOutput struct {
    // contains filtered or unexported fields
}

func (DeleteTagsOutput) GoString Uses

func (s DeleteTagsOutput) GoString() string

GoString returns the string representation

func (DeleteTagsOutput) String Uses

func (s DeleteTagsOutput) String() string

String returns the string representation

type DescribeAccountLimitsInput Uses

type DescribeAccountLimitsInput struct {
    // contains filtered or unexported fields
}

func (DescribeAccountLimitsInput) GoString Uses

func (s DescribeAccountLimitsInput) GoString() string

GoString returns the string representation

func (DescribeAccountLimitsInput) String Uses

func (s DescribeAccountLimitsInput) String() string

String returns the string representation

type DescribeAccountLimitsOutput Uses

type DescribeAccountLimitsOutput struct {

    // The maximum number of groups allowed for your AWS account. The default limit
    // is 200 per AWS Region.
    MaxNumberOfAutoScalingGroups *int64 `type:"integer"`

    // The maximum number of launch configurations allowed for your AWS account.
    // The default limit is 200 per AWS Region.
    MaxNumberOfLaunchConfigurations *int64 `type:"integer"`

    // The current number of groups for your AWS account.
    NumberOfAutoScalingGroups *int64 `type:"integer"`

    // The current number of launch configurations for your AWS account.
    NumberOfLaunchConfigurations *int64 `type:"integer"`
    // contains filtered or unexported fields
}

func (DescribeAccountLimitsOutput) GoString Uses

func (s DescribeAccountLimitsOutput) GoString() string

GoString returns the string representation

func (*DescribeAccountLimitsOutput) SetMaxNumberOfAutoScalingGroups Uses

func (s *DescribeAccountLimitsOutput) SetMaxNumberOfAutoScalingGroups(v int64) *DescribeAccountLimitsOutput

SetMaxNumberOfAutoScalingGroups sets the MaxNumberOfAutoScalingGroups field's value.

func (*DescribeAccountLimitsOutput) SetMaxNumberOfLaunchConfigurations Uses

func (s *DescribeAccountLimitsOutput) SetMaxNumberOfLaunchConfigurations(v int64) *DescribeAccountLimitsOutput

SetMaxNumberOfLaunchConfigurations sets the MaxNumberOfLaunchConfigurations field's value.

func (*DescribeAccountLimitsOutput) SetNumberOfAutoScalingGroups Uses

func (s *DescribeAccountLimitsOutput) SetNumberOfAutoScalingGroups(v int64) *DescribeAccountLimitsOutput

SetNumberOfAutoScalingGroups sets the NumberOfAutoScalingGroups field's value.

func (*DescribeAccountLimitsOutput) SetNumberOfLaunchConfigurations Uses

func (s *DescribeAccountLimitsOutput) SetNumberOfLaunchConfigurations(v int64) *DescribeAccountLimitsOutput

SetNumberOfLaunchConfigurations sets the NumberOfLaunchConfigurations field's value.

func (DescribeAccountLimitsOutput) String Uses

func (s DescribeAccountLimitsOutput) String() string

String returns the string representation

type DescribeAdjustmentTypesInput Uses

type DescribeAdjustmentTypesInput struct {
    // contains filtered or unexported fields
}

func (DescribeAdjustmentTypesInput) GoString Uses

func (s DescribeAdjustmentTypesInput) GoString() string

GoString returns the string representation

func (DescribeAdjustmentTypesInput) String Uses

func (s DescribeAdjustmentTypesInput) String() string

String returns the string representation

type DescribeAdjustmentTypesOutput Uses

type DescribeAdjustmentTypesOutput struct {

    // The policy adjustment types.
    AdjustmentTypes []*AdjustmentType `type:"list"`
    // contains filtered or unexported fields
}

func (DescribeAdjustmentTypesOutput) GoString Uses

func (s DescribeAdjustmentTypesOutput) GoString() string

GoString returns the string representation

func (*DescribeAdjustmentTypesOutput) SetAdjustmentTypes Uses

func (s *DescribeAdjustmentTypesOutput) SetAdjustmentTypes(v []*AdjustmentType) *DescribeAdjustmentTypesOutput

SetAdjustmentTypes sets the AdjustmentTypes field's value.

func (DescribeAdjustmentTypesOutput) String Uses

func (s DescribeAdjustmentTypesOutput) String() string

String returns the string representation

type DescribeAutoScalingGroupsInput Uses

type DescribeAutoScalingGroupsInput struct {

    // The names of the Auto Scaling groups. Each name can be a maximum of 1600
    // characters. By default, you can only specify up to 50 names. You can optionally
    // increase this limit using the MaxRecords parameter.
    //
    // If you omit this parameter, all Auto Scaling groups are described.
    AutoScalingGroupNames []*string `type:"list"`

    // The maximum number of items to return with this call. The default value is
    // 50 and the maximum value is 100.
    MaxRecords *int64 `type:"integer"`

    // The token for the next set of items to return. (You received this token from
    // a previous call.)
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeAutoScalingGroupsInput) GoString Uses

func (s DescribeAutoScalingGroupsInput) GoString() string

GoString returns the string representation

func (*DescribeAutoScalingGroupsInput) SetAutoScalingGroupNames Uses

func (s *DescribeAutoScalingGroupsInput) SetAutoScalingGroupNames(v []*string) *DescribeAutoScalingGroupsInput

SetAutoScalingGroupNames sets the AutoScalingGroupNames field's value.

func (*DescribeAutoScalingGroupsInput) SetMaxRecords Uses

func (s *DescribeAutoScalingGroupsInput) SetMaxRecords(v int64) *DescribeAutoScalingGroupsInput

SetMaxRecords sets the MaxRecords field's value.

func (*DescribeAutoScalingGroupsInput) SetNextToken Uses

func (s *DescribeAutoScalingGroupsInput) SetNextToken(v string) *DescribeAutoScalingGroupsInput

SetNextToken sets the NextToken field's value.

func (DescribeAutoScalingGroupsInput) String Uses

func (s DescribeAutoScalingGroupsInput) String() string

String returns the string representation

type DescribeAutoScalingGroupsOutput Uses

type DescribeAutoScalingGroupsOutput struct {

    // The groups.
    //
    // AutoScalingGroups is a required field
    AutoScalingGroups []*Group `type:"list" required:"true"`

    // 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.
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeAutoScalingGroupsOutput) GoString Uses

func (s DescribeAutoScalingGroupsOutput) GoString() string

GoString returns the string representation

func (*DescribeAutoScalingGroupsOutput) SetAutoScalingGroups Uses

func (s *DescribeAutoScalingGroupsOutput) SetAutoScalingGroups(v []*Group) *DescribeAutoScalingGroupsOutput

SetAutoScalingGroups sets the AutoScalingGroups field's value.

func (*DescribeAutoScalingGroupsOutput) SetNextToken Uses

func (s *DescribeAutoScalingGroupsOutput) SetNextToken(v string) *DescribeAutoScalingGroupsOutput

SetNextToken sets the NextToken field's value.

func (DescribeAutoScalingGroupsOutput) String Uses

func (s DescribeAutoScalingGroupsOutput) String() string

String returns the string representation

type DescribeAutoScalingInstancesInput Uses

type DescribeAutoScalingInstancesInput struct {

    // The IDs of the instances. You can specify up to MaxRecords IDs. If you omit
    // this parameter, all Auto Scaling instances are described. If you specify
    // an ID that does not exist, it is ignored with no error.
    InstanceIds []*string `type:"list"`

    // The maximum number of items to return with this call. The default value is
    // 50 and the maximum value is 50.
    MaxRecords *int64 `type:"integer"`

    // The token for the next set of items to return. (You received this token from
    // a previous call.)
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeAutoScalingInstancesInput) GoString Uses

func (s DescribeAutoScalingInstancesInput) GoString() string

GoString returns the string representation

func (*DescribeAutoScalingInstancesInput) SetInstanceIds Uses

func (s *DescribeAutoScalingInstancesInput) SetInstanceIds(v []*string) *DescribeAutoScalingInstancesInput

SetInstanceIds sets the InstanceIds field's value.

func (*DescribeAutoScalingInstancesInput) SetMaxRecords Uses

func (s *DescribeAutoScalingInstancesInput) SetMaxRecords(v int64) *DescribeAutoScalingInstancesInput

SetMaxRecords sets the MaxRecords field's value.

func (*DescribeAutoScalingInstancesInput) SetNextToken Uses

func (s *DescribeAutoScalingInstancesInput) SetNextToken(v string) *DescribeAutoScalingInstancesInput

SetNextToken sets the NextToken field's value.

func (DescribeAutoScalingInstancesInput) String Uses

func (s DescribeAutoScalingInstancesInput) String() string

String returns the string representation

type DescribeAutoScalingInstancesOutput Uses

type DescribeAutoScalingInstancesOutput struct {

    // The instances.
    AutoScalingInstances []*InstanceDetails `type:"list"`

    // 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.
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeAutoScalingInstancesOutput) GoString Uses

func (s DescribeAutoScalingInstancesOutput) GoString() string

GoString returns the string representation

func (*DescribeAutoScalingInstancesOutput) SetAutoScalingInstances Uses

func (s *DescribeAutoScalingInstancesOutput) SetAutoScalingInstances(v []*InstanceDetails) *DescribeAutoScalingInstancesOutput

SetAutoScalingInstances sets the AutoScalingInstances field's value.

func (*DescribeAutoScalingInstancesOutput) SetNextToken Uses

func (s *DescribeAutoScalingInstancesOutput) SetNextToken(v string) *DescribeAutoScalingInstancesOutput

SetNextToken sets the NextToken field's value.

func (DescribeAutoScalingInstancesOutput) String Uses

func (s DescribeAutoScalingInstancesOutput) String() string

String returns the string representation

type DescribeAutoScalingNotificationTypesInput Uses

type DescribeAutoScalingNotificationTypesInput struct {
    // contains filtered or unexported fields
}

func (DescribeAutoScalingNotificationTypesInput) GoString Uses

func (s DescribeAutoScalingNotificationTypesInput) GoString() string

GoString returns the string representation

func (DescribeAutoScalingNotificationTypesInput) String Uses

func (s DescribeAutoScalingNotificationTypesInput) String() string

String returns the string representation

type DescribeAutoScalingNotificationTypesOutput Uses

type DescribeAutoScalingNotificationTypesOutput struct {

    // The notification types.
    AutoScalingNotificationTypes []*string `type:"list"`
    // contains filtered or unexported fields
}

func (DescribeAutoScalingNotificationTypesOutput) GoString Uses

func (s DescribeAutoScalingNotificationTypesOutput) GoString() string

GoString returns the string representation

func (*DescribeAutoScalingNotificationTypesOutput) SetAutoScalingNotificationTypes Uses

func (s *DescribeAutoScalingNotificationTypesOutput) SetAutoScalingNotificationTypes(v []*string) *DescribeAutoScalingNotificationTypesOutput

SetAutoScalingNotificationTypes sets the AutoScalingNotificationTypes field's value.

func (DescribeAutoScalingNotificationTypesOutput) String Uses

func (s DescribeAutoScalingNotificationTypesOutput) String() string

String returns the string representation

type DescribeLaunchConfigurationsInput Uses

type DescribeLaunchConfigurationsInput struct {

    // The launch configuration names. If you omit this parameter, all launch configurations
    // are described.
    LaunchConfigurationNames []*string `type:"list"`

    // The maximum number of items to return with this call. The default value is
    // 50 and the maximum value is 100.
    MaxRecords *int64 `type:"integer"`

    // The token for the next set of items to return. (You received this token from
    // a previous call.)
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeLaunchConfigurationsInput) GoString Uses

func (s DescribeLaunchConfigurationsInput) GoString() string

GoString returns the string representation

func (*DescribeLaunchConfigurationsInput) SetLaunchConfigurationNames Uses

func (s *DescribeLaunchConfigurationsInput) SetLaunchConfigurationNames(v []*string) *DescribeLaunchConfigurationsInput

SetLaunchConfigurationNames sets the LaunchConfigurationNames field's value.

func (*DescribeLaunchConfigurationsInput) SetMaxRecords Uses

func (s *DescribeLaunchConfigurationsInput) SetMaxRecords(v int64) *DescribeLaunchConfigurationsInput

SetMaxRecords sets the MaxRecords field's value.

func (*DescribeLaunchConfigurationsInput) SetNextToken Uses

func (s *DescribeLaunchConfigurationsInput) SetNextToken(v string) *DescribeLaunchConfigurationsInput

SetNextToken sets the NextToken field's value.

func (DescribeLaunchConfigurationsInput) String Uses

func (s DescribeLaunchConfigurationsInput) String() string

String returns the string representation

type DescribeLaunchConfigurationsOutput Uses

type DescribeLaunchConfigurationsOutput struct {

    // The launch configurations.
    //
    // LaunchConfigurations is a required field
    LaunchConfigurations []*LaunchConfiguration `type:"list" required:"true"`

    // 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.
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeLaunchConfigurationsOutput) GoString Uses

func (s DescribeLaunchConfigurationsOutput) GoString() string

GoString returns the string representation

func (*DescribeLaunchConfigurationsOutput) SetLaunchConfigurations Uses

func (s *DescribeLaunchConfigurationsOutput) SetLaunchConfigurations(v []*LaunchConfiguration) *DescribeLaunchConfigurationsOutput

SetLaunchConfigurations sets the LaunchConfigurations field's value.

func (*DescribeLaunchConfigurationsOutput) SetNextToken Uses

func (s *DescribeLaunchConfigurationsOutput) SetNextToken(v string) *DescribeLaunchConfigurationsOutput

SetNextToken sets the NextToken field's value.

func (DescribeLaunchConfigurationsOutput) String Uses

func (s DescribeLaunchConfigurationsOutput) String() string

String returns the string representation

type DescribeLifecycleHookTypesInput Uses

type DescribeLifecycleHookTypesInput struct {
    // contains filtered or unexported fields
}

func (DescribeLifecycleHookTypesInput) GoString Uses

func (s DescribeLifecycleHookTypesInput) GoString() string

GoString returns the string representation

func (DescribeLifecycleHookTypesInput) String Uses

func (s DescribeLifecycleHookTypesInput) String() string

String returns the string representation

type DescribeLifecycleHookTypesOutput Uses

type DescribeLifecycleHookTypesOutput struct {

    // The lifecycle hook types.
    LifecycleHookTypes []*string `type:"list"`
    // contains filtered or unexported fields
}

func (DescribeLifecycleHookTypesOutput) GoString Uses

func (s DescribeLifecycleHookTypesOutput) GoString() string

GoString returns the string representation

func (*DescribeLifecycleHookTypesOutput) SetLifecycleHookTypes Uses

func (s *DescribeLifecycleHookTypesOutput) SetLifecycleHookTypes(v []*string) *DescribeLifecycleHookTypesOutput

SetLifecycleHookTypes sets the LifecycleHookTypes field's value.

func (DescribeLifecycleHookTypesOutput) String Uses

func (s DescribeLifecycleHookTypesOutput) String() string

String returns the string representation

type DescribeLifecycleHooksInput Uses

type DescribeLifecycleHooksInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The names of one or more lifecycle hooks. If you omit this parameter, all
    // lifecycle hooks are described.
    LifecycleHookNames []*string `type:"list"`
    // contains filtered or unexported fields
}

func (DescribeLifecycleHooksInput) GoString Uses

func (s DescribeLifecycleHooksInput) GoString() string

GoString returns the string representation

func (*DescribeLifecycleHooksInput) SetAutoScalingGroupName Uses

func (s *DescribeLifecycleHooksInput) SetAutoScalingGroupName(v string) *DescribeLifecycleHooksInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*DescribeLifecycleHooksInput) SetLifecycleHookNames Uses

func (s *DescribeLifecycleHooksInput) SetLifecycleHookNames(v []*string) *DescribeLifecycleHooksInput

SetLifecycleHookNames sets the LifecycleHookNames field's value.

func (DescribeLifecycleHooksInput) String Uses

func (s DescribeLifecycleHooksInput) String() string

String returns the string representation

func (*DescribeLifecycleHooksInput) Validate Uses

func (s *DescribeLifecycleHooksInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeLifecycleHooksOutput Uses

type DescribeLifecycleHooksOutput struct {

    // The lifecycle hooks for the specified group.
    LifecycleHooks []*LifecycleHook `type:"list"`
    // contains filtered or unexported fields
}

func (DescribeLifecycleHooksOutput) GoString Uses

func (s DescribeLifecycleHooksOutput) GoString() string

GoString returns the string representation

func (*DescribeLifecycleHooksOutput) SetLifecycleHooks Uses

func (s *DescribeLifecycleHooksOutput) SetLifecycleHooks(v []*LifecycleHook) *DescribeLifecycleHooksOutput

SetLifecycleHooks sets the LifecycleHooks field's value.

func (DescribeLifecycleHooksOutput) String Uses

func (s DescribeLifecycleHooksOutput) String() string

String returns the string representation

type DescribeLoadBalancerTargetGroupsInput Uses

type DescribeLoadBalancerTargetGroupsInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The maximum number of items to return with this call. The default value is
    // 100 and the maximum value is 100.
    MaxRecords *int64 `type:"integer"`

    // The token for the next set of items to return. (You received this token from
    // a previous call.)
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeLoadBalancerTargetGroupsInput) GoString Uses

func (s DescribeLoadBalancerTargetGroupsInput) GoString() string

GoString returns the string representation

func (*DescribeLoadBalancerTargetGroupsInput) SetAutoScalingGroupName Uses

func (s *DescribeLoadBalancerTargetGroupsInput) SetAutoScalingGroupName(v string) *DescribeLoadBalancerTargetGroupsInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*DescribeLoadBalancerTargetGroupsInput) SetMaxRecords Uses

func (s *DescribeLoadBalancerTargetGroupsInput) SetMaxRecords(v int64) *DescribeLoadBalancerTargetGroupsInput

SetMaxRecords sets the MaxRecords field's value.

func (*DescribeLoadBalancerTargetGroupsInput) SetNextToken Uses

func (s *DescribeLoadBalancerTargetGroupsInput) SetNextToken(v string) *DescribeLoadBalancerTargetGroupsInput

SetNextToken sets the NextToken field's value.

func (DescribeLoadBalancerTargetGroupsInput) String Uses

func (s DescribeLoadBalancerTargetGroupsInput) String() string

String returns the string representation

func (*DescribeLoadBalancerTargetGroupsInput) Validate Uses

func (s *DescribeLoadBalancerTargetGroupsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeLoadBalancerTargetGroupsOutput Uses

type DescribeLoadBalancerTargetGroupsOutput struct {

    // Information about the target groups.
    LoadBalancerTargetGroups []*LoadBalancerTargetGroupState `type:"list"`

    // 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.
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeLoadBalancerTargetGroupsOutput) GoString Uses

func (s DescribeLoadBalancerTargetGroupsOutput) GoString() string

GoString returns the string representation

func (*DescribeLoadBalancerTargetGroupsOutput) SetLoadBalancerTargetGroups Uses

func (s *DescribeLoadBalancerTargetGroupsOutput) SetLoadBalancerTargetGroups(v []*LoadBalancerTargetGroupState) *DescribeLoadBalancerTargetGroupsOutput

SetLoadBalancerTargetGroups sets the LoadBalancerTargetGroups field's value.

func (*DescribeLoadBalancerTargetGroupsOutput) SetNextToken Uses

func (s *DescribeLoadBalancerTargetGroupsOutput) SetNextToken(v string) *DescribeLoadBalancerTargetGroupsOutput

SetNextToken sets the NextToken field's value.

func (DescribeLoadBalancerTargetGroupsOutput) String Uses

func (s DescribeLoadBalancerTargetGroupsOutput) String() string

String returns the string representation

type DescribeLoadBalancersInput Uses

type DescribeLoadBalancersInput struct {

    // The name of the Auto Scaling group.
    //
    // AutoScalingGroupName is a required field
    AutoScalingGroupName *string `min:"1" type:"string" required:"true"`

    // The maximum number of items to return with this call. The default value is
    // 100 and the maximum value is 100.
    MaxRecords *int64 `type:"integer"`

    // The token for the next set of items to return. (You received this token from
    // a previous call.)
    NextToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (DescribeLoadBalancersInput) GoString Uses

func (s DescribeLoadBalancersInput) GoString() string

GoString returns the string representation

func (*DescribeLoadBalancersInput) SetAutoScalingGroupName Uses

func (s *DescribeLoadBalancersInput) SetAutoScalingGroupName(v string) *DescribeLoadBalancersInput

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*DescribeLoadBalancersInput) SetMaxRecords Uses

func (s *DescribeLoadBalancersInput) SetMaxRecords(v int64) *DescribeLoadBalancersInput

SetMaxRecords sets the MaxRecords field's value.

func (*DescribeLoadBalancersInput) SetNextToken Uses

func (s *DescribeLoadBalancersInput) SetNextToken(v string) *DescribeLoadBalancersInput

SetNextToken sets the NextToken field's value.

func (DescribeLoadBalancersInput) String Uses

func (s DescribeLoadBalancersInput) String() string

String returns the string representation

func (*DescribeLoadBalancersInput) Validate