158 lines
3.7 KiB
Go
158 lines
3.7 KiB
Go
// THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
|
|
|
|
package redshift
|
|
|
|
import (
|
|
"github.com/aws/aws-sdk-go/private/waiter"
|
|
)
|
|
|
|
// WaitUntilClusterAvailable uses the Amazon Redshift API operation
|
|
// DescribeClusters 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.
|
|
func (c *Redshift) WaitUntilClusterAvailable(input *DescribeClustersInput) error {
|
|
waiterCfg := waiter.Config{
|
|
Operation: "DescribeClusters",
|
|
Delay: 60,
|
|
MaxAttempts: 30,
|
|
Acceptors: []waiter.WaitAcceptor{
|
|
{
|
|
State: "success",
|
|
Matcher: "pathAll",
|
|
Argument: "Clusters[].ClusterStatus",
|
|
Expected: "available",
|
|
},
|
|
{
|
|
State: "failure",
|
|
Matcher: "pathAny",
|
|
Argument: "Clusters[].ClusterStatus",
|
|
Expected: "deleting",
|
|
},
|
|
{
|
|
State: "retry",
|
|
Matcher: "error",
|
|
Argument: "",
|
|
Expected: "ClusterNotFound",
|
|
},
|
|
},
|
|
}
|
|
|
|
w := waiter.Waiter{
|
|
Client: c,
|
|
Input: input,
|
|
Config: waiterCfg,
|
|
}
|
|
return w.Wait()
|
|
}
|
|
|
|
// WaitUntilClusterDeleted uses the Amazon Redshift API operation
|
|
// DescribeClusters 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.
|
|
func (c *Redshift) WaitUntilClusterDeleted(input *DescribeClustersInput) error {
|
|
waiterCfg := waiter.Config{
|
|
Operation: "DescribeClusters",
|
|
Delay: 60,
|
|
MaxAttempts: 30,
|
|
Acceptors: []waiter.WaitAcceptor{
|
|
{
|
|
State: "success",
|
|
Matcher: "error",
|
|
Argument: "",
|
|
Expected: "ClusterNotFound",
|
|
},
|
|
{
|
|
State: "failure",
|
|
Matcher: "pathAny",
|
|
Argument: "Clusters[].ClusterStatus",
|
|
Expected: "creating",
|
|
},
|
|
{
|
|
State: "failure",
|
|
Matcher: "pathAny",
|
|
Argument: "Clusters[].ClusterStatus",
|
|
Expected: "modifying",
|
|
},
|
|
},
|
|
}
|
|
|
|
w := waiter.Waiter{
|
|
Client: c,
|
|
Input: input,
|
|
Config: waiterCfg,
|
|
}
|
|
return w.Wait()
|
|
}
|
|
|
|
// WaitUntilClusterRestored uses the Amazon Redshift API operation
|
|
// DescribeClusters 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.
|
|
func (c *Redshift) WaitUntilClusterRestored(input *DescribeClustersInput) error {
|
|
waiterCfg := waiter.Config{
|
|
Operation: "DescribeClusters",
|
|
Delay: 60,
|
|
MaxAttempts: 30,
|
|
Acceptors: []waiter.WaitAcceptor{
|
|
{
|
|
State: "success",
|
|
Matcher: "pathAll",
|
|
Argument: "Clusters[].RestoreStatus.Status",
|
|
Expected: "completed",
|
|
},
|
|
{
|
|
State: "failure",
|
|
Matcher: "pathAny",
|
|
Argument: "Clusters[].ClusterStatus",
|
|
Expected: "deleting",
|
|
},
|
|
},
|
|
}
|
|
|
|
w := waiter.Waiter{
|
|
Client: c,
|
|
Input: input,
|
|
Config: waiterCfg,
|
|
}
|
|
return w.Wait()
|
|
}
|
|
|
|
// WaitUntilSnapshotAvailable uses the Amazon Redshift API operation
|
|
// DescribeClusterSnapshots 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.
|
|
func (c *Redshift) WaitUntilSnapshotAvailable(input *DescribeClusterSnapshotsInput) error {
|
|
waiterCfg := waiter.Config{
|
|
Operation: "DescribeClusterSnapshots",
|
|
Delay: 15,
|
|
MaxAttempts: 20,
|
|
Acceptors: []waiter.WaitAcceptor{
|
|
{
|
|
State: "success",
|
|
Matcher: "pathAll",
|
|
Argument: "Snapshots[].Status",
|
|
Expected: "available",
|
|
},
|
|
{
|
|
State: "failure",
|
|
Matcher: "pathAny",
|
|
Argument: "Snapshots[].Status",
|
|
Expected: "failed",
|
|
},
|
|
{
|
|
State: "failure",
|
|
Matcher: "pathAny",
|
|
Argument: "Snapshots[].Status",
|
|
Expected: "deleted",
|
|
},
|
|
},
|
|
}
|
|
|
|
w := waiter.Waiter{
|
|
Client: c,
|
|
Input: input,
|
|
Config: waiterCfg,
|
|
}
|
|
return w.Wait()
|
|
}
|