2016-01-29 20:53:56 +01:00
|
|
|
// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
|
|
|
|
|
|
|
|
package ecs
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/aws/aws-sdk-go/private/waiter"
|
|
|
|
)
|
|
|
|
|
2016-10-17 23:21:08 +02:00
|
|
|
// WaitUntilServicesInactive uses the Amazon ECS API operation
|
|
|
|
// DescribeServices to wait for a condition to be met before returning.
|
|
|
|
// If the condition is not meet within the max attempt window an error will
|
|
|
|
// be returned.
|
2016-01-29 20:53:56 +01:00
|
|
|
func (c *ECS) WaitUntilServicesInactive(input *DescribeServicesInput) error {
|
|
|
|
waiterCfg := waiter.Config{
|
|
|
|
Operation: "DescribeServices",
|
|
|
|
Delay: 15,
|
|
|
|
MaxAttempts: 40,
|
|
|
|
Acceptors: []waiter.WaitAcceptor{
|
|
|
|
{
|
|
|
|
State: "failure",
|
|
|
|
Matcher: "pathAny",
|
|
|
|
Argument: "failures[].reason",
|
|
|
|
Expected: "MISSING",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
State: "success",
|
|
|
|
Matcher: "pathAny",
|
|
|
|
Argument: "services[].status",
|
|
|
|
Expected: "INACTIVE",
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
w := waiter.Waiter{
|
|
|
|
Client: c,
|
|
|
|
Input: input,
|
|
|
|
Config: waiterCfg,
|
|
|
|
}
|
|
|
|
return w.Wait()
|
|
|
|
}
|
|
|
|
|
2016-10-17 23:21:08 +02:00
|
|
|
// WaitUntilServicesStable uses the Amazon ECS API operation
|
|
|
|
// DescribeServices to wait for a condition to be met before returning.
|
|
|
|
// If the condition is not meet within the max attempt window an error will
|
|
|
|
// be returned.
|
2016-01-29 20:53:56 +01:00
|
|
|
func (c *ECS) WaitUntilServicesStable(input *DescribeServicesInput) error {
|
|
|
|
waiterCfg := waiter.Config{
|
|
|
|
Operation: "DescribeServices",
|
|
|
|
Delay: 15,
|
|
|
|
MaxAttempts: 40,
|
|
|
|
Acceptors: []waiter.WaitAcceptor{
|
|
|
|
{
|
|
|
|
State: "failure",
|
|
|
|
Matcher: "pathAny",
|
|
|
|
Argument: "failures[].reason",
|
|
|
|
Expected: "MISSING",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
State: "failure",
|
|
|
|
Matcher: "pathAny",
|
|
|
|
Argument: "services[].status",
|
|
|
|
Expected: "DRAINING",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
State: "failure",
|
|
|
|
Matcher: "pathAny",
|
|
|
|
Argument: "services[].status",
|
|
|
|
Expected: "INACTIVE",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
State: "success",
|
|
|
|
Matcher: "path",
|
2016-09-08 16:24:31 +02:00
|
|
|
Argument: "length(services[?!(length(deployments) == `1` && runningCount == desiredCount)]) == `0`",
|
2016-01-29 20:53:56 +01:00
|
|
|
Expected: true,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
w := waiter.Waiter{
|
|
|
|
Client: c,
|
|
|
|
Input: input,
|
|
|
|
Config: waiterCfg,
|
|
|
|
}
|
|
|
|
return w.Wait()
|
|
|
|
}
|
|
|
|
|
2016-10-17 23:21:08 +02:00
|
|
|
// WaitUntilTasksRunning uses the Amazon ECS API operation
|
|
|
|
// DescribeTasks to wait for a condition to be met before returning.
|
|
|
|
// If the condition is not meet within the max attempt window an error will
|
|
|
|
// be returned.
|
2016-01-29 20:53:56 +01:00
|
|
|
func (c *ECS) WaitUntilTasksRunning(input *DescribeTasksInput) error {
|
|
|
|
waiterCfg := waiter.Config{
|
|
|
|
Operation: "DescribeTasks",
|
|
|
|
Delay: 6,
|
|
|
|
MaxAttempts: 100,
|
|
|
|
Acceptors: []waiter.WaitAcceptor{
|
|
|
|
{
|
|
|
|
State: "failure",
|
|
|
|
Matcher: "pathAny",
|
|
|
|
Argument: "tasks[].lastStatus",
|
|
|
|
Expected: "STOPPED",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
State: "failure",
|
|
|
|
Matcher: "pathAny",
|
|
|
|
Argument: "failures[].reason",
|
|
|
|
Expected: "MISSING",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
State: "success",
|
|
|
|
Matcher: "pathAll",
|
|
|
|
Argument: "tasks[].lastStatus",
|
|
|
|
Expected: "RUNNING",
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
w := waiter.Waiter{
|
|
|
|
Client: c,
|
|
|
|
Input: input,
|
|
|
|
Config: waiterCfg,
|
|
|
|
}
|
|
|
|
return w.Wait()
|
|
|
|
}
|
|
|
|
|
2016-10-17 23:21:08 +02:00
|
|
|
// WaitUntilTasksStopped uses the Amazon ECS API operation
|
|
|
|
// DescribeTasks to wait for a condition to be met before returning.
|
|
|
|
// If the condition is not meet within the max attempt window an error will
|
|
|
|
// be returned.
|
2016-01-29 20:53:56 +01:00
|
|
|
func (c *ECS) WaitUntilTasksStopped(input *DescribeTasksInput) error {
|
|
|
|
waiterCfg := waiter.Config{
|
|
|
|
Operation: "DescribeTasks",
|
|
|
|
Delay: 6,
|
|
|
|
MaxAttempts: 100,
|
|
|
|
Acceptors: []waiter.WaitAcceptor{
|
|
|
|
{
|
|
|
|
State: "success",
|
|
|
|
Matcher: "pathAll",
|
|
|
|
Argument: "tasks[].lastStatus",
|
|
|
|
Expected: "STOPPED",
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
w := waiter.Waiter{
|
|
|
|
Client: c,
|
|
|
|
Input: input,
|
|
|
|
Config: waiterCfg,
|
|
|
|
}
|
|
|
|
return w.Wait()
|
|
|
|
}
|