本文整理汇总了Golang中github.com/aws/aws-sdk-go/service/autoscaling.AutoScaling.SuspendProcesses方法的典型用法代码示例。如果您正苦于以下问题:Golang AutoScaling.SuspendProcesses方法的具体用法?Golang AutoScaling.SuspendProcesses怎么用?Golang AutoScaling.SuspendProcesses使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/aws/aws-sdk-go/service/autoscaling.AutoScaling
的用法示例。
在下文中一共展示了AutoScaling.SuspendProcesses方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: enableASGSuspendedProcesses
func enableASGSuspendedProcesses(d *schema.ResourceData, conn *autoscaling.AutoScaling) error {
props := &autoscaling.ScalingProcessQuery{
AutoScalingGroupName: aws.String(d.Id()),
ScalingProcesses: expandStringList(d.Get("suspended_processes").(*schema.Set).List()),
}
_, err := conn.SuspendProcesses(props)
if err != nil {
return err
}
return nil
}
示例2: updateASGSuspendedProcesses
func updateASGSuspendedProcesses(d *schema.ResourceData, conn *autoscaling.AutoScaling) error {
o, n := d.GetChange("suspended_processes")
if o == nil {
o = new(schema.Set)
}
if n == nil {
n = new(schema.Set)
}
os := o.(*schema.Set)
ns := n.(*schema.Set)
resumeProcesses := os.Difference(ns)
if resumeProcesses.Len() != 0 {
props := &autoscaling.ScalingProcessQuery{
AutoScalingGroupName: aws.String(d.Id()),
ScalingProcesses: expandStringList(resumeProcesses.List()),
}
_, err := conn.ResumeProcesses(props)
if err != nil {
return fmt.Errorf("Error Resuming Processes for ASG %q: %s", d.Id(), err)
}
}
suspendedProcesses := ns.Difference(os)
if suspendedProcesses.Len() != 0 {
props := &autoscaling.ScalingProcessQuery{
AutoScalingGroupName: aws.String(d.Id()),
ScalingProcesses: expandStringList(suspendedProcesses.List()),
}
_, err := conn.SuspendProcesses(props)
if err != nil {
return fmt.Errorf("Error Suspending Processes for ASG %q: %s", d.Id(), err)
}
}
return nil
}