module Network.AWS.EC2.Waiters where
import Network.AWS.EC2.DescribeBundleTasks
import Network.AWS.EC2.DescribeConversionTasks
import Network.AWS.EC2.DescribeCustomerGateways
import Network.AWS.EC2.DescribeExportTasks
import Network.AWS.EC2.DescribeInstances
import Network.AWS.EC2.DescribeSnapshots
import Network.AWS.EC2.DescribeSubnets
import Network.AWS.EC2.DescribeVolumes
import Network.AWS.EC2.DescribeVpcs
import Network.AWS.EC2.DescribeVpnConnections
import Network.AWS.EC2.Types
import Network.AWS.Waiters
bundleTaskComplete :: Wait DescribeBundleTasks
bundleTaskComplete = Wait
{ _waitName = "BundleTaskComplete"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll BTSComplete AcceptSuccess
(folding (concatOf dbtrBundleTasks) . btState)
, matchAny BTSFailed AcceptFailure
(folding (concatOf dbtrBundleTasks) . btState)
]
}
conversionTaskCancelled :: Wait DescribeConversionTasks
conversionTaskCancelled = Wait
{ _waitName = "ConversionTaskCancelled"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll CTSCancelled AcceptSuccess
(folding (concatOf dctrConversionTasks) . ctState)
]
}
conversionTaskCompleted :: Wait DescribeConversionTasks
conversionTaskCompleted = Wait
{ _waitName = "ConversionTaskCompleted"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll CTSCompleted AcceptSuccess
(folding (concatOf dctrConversionTasks) . ctState)
, matchAny CTSCancelled AcceptFailure
(folding (concatOf dctrConversionTasks) . ctState)
, matchAny CTSCancelling AcceptFailure
(folding (concatOf dctrConversionTasks) . ctState)
]
}
customerGatewayAvailable :: Wait DescribeCustomerGateways
customerGatewayAvailable = Wait
{ _waitName = "CustomerGatewayAvailable"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll "available" AcceptSuccess
(folding (concatOf dcgrCustomerGateways) . cgState)
, matchAny "deleted" AcceptFailure
(folding (concatOf dcgrCustomerGateways) . cgState)
, matchAny "deleting" AcceptFailure
(folding (concatOf dcgrCustomerGateways) . cgState)
]
}
exportTaskCancelled :: Wait DescribeExportTasks
exportTaskCancelled = Wait
{ _waitName = "ExportTaskCancelled"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll ETSCancelled AcceptSuccess
(folding (concatOf detrExportTasks) . etState)
]
}
exportTaskCompleted :: Wait DescribeExportTasks
exportTaskCompleted = Wait
{ _waitName = "ExportTaskCompleted"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll ETSCompleted AcceptSuccess
(folding (concatOf detrExportTasks) . etState)
]
}
instanceRunning :: Wait DescribeInstances
instanceRunning = Wait
{ _waitName = "InstanceRunning"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll ISNRunning AcceptSuccess
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
, matchAny ISNShuttingDown AcceptFailure
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
, matchAny ISNTerminated AcceptFailure
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
, matchAny ISNStopping AcceptFailure
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
]
}
instanceStopped :: Wait DescribeInstances
instanceStopped = Wait
{ _waitName = "InstanceStopped"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll ISNStopped AcceptSuccess
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
, matchAny ISNPending AcceptFailure
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
, matchAny ISNTerminated AcceptFailure
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
]
}
instanceTerminated :: Wait DescribeInstances
instanceTerminated = Wait
{ _waitName = "InstanceTerminated"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll ISNTerminated AcceptSuccess
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
, matchAny ISNPending AcceptFailure
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
, matchAny ISNStopping AcceptFailure
(folding (concatOf dirReservations) . folding (concatOf rInstances) . i1State . isName)
]
}
snapshotCompleted :: Wait DescribeSnapshots
snapshotCompleted = Wait
{ _waitName = "SnapshotCompleted"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll Completed AcceptSuccess
(folding (concatOf dsrSnapshots) . sState)
]
}
subnetAvailable :: Wait DescribeSubnets
subnetAvailable = Wait
{ _waitName = "SubnetAvailable"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll SSAvailable AcceptSuccess
(folding (concatOf dsrSubnets) . s1State)
]
}
volumeAvailable :: Wait DescribeVolumes
volumeAvailable = Wait
{ _waitName = "VolumeAvailable"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll VSAvailable AcceptSuccess
(folding (concatOf dvrVolumes) . vState)
, matchAny VSDeleted AcceptFailure
(folding (concatOf dvrVolumes) . vState)
]
}
volumeDeleted :: Wait DescribeVolumes
volumeDeleted = Wait
{ _waitName = "VolumeDeleted"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll VSDeleted AcceptSuccess
(folding (concatOf dvrVolumes) . vState)
]
}
volumeInUse :: Wait DescribeVolumes
volumeInUse = Wait
{ _waitName = "VolumeInUse"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll VSInUse AcceptSuccess
(folding (concatOf dvrVolumes) . vState)
, matchAny VSDeleted AcceptFailure
(folding (concatOf dvrVolumes) . vState)
]
}
vpcAvailable :: Wait DescribeVpcs
vpcAvailable = Wait
{ _waitName = "VpcAvailable"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll VpcStateAvailable AcceptSuccess
(folding (concatOf dvrVpcs) . vpcState)
]
}
vpnConnectionAvailable :: Wait DescribeVpnConnections
vpnConnectionAvailable = Wait
{ _waitName = "VpnConnectionAvailable"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll VpnStateAvailable AcceptSuccess
(folding (concatOf dvcrVpnConnections) . vcState)
, matchAny VpnStateDeleting AcceptFailure
(folding (concatOf dvcrVpnConnections) . vcState)
, matchAny VpnStateDeleted AcceptFailure
(folding (concatOf dvcrVpnConnections) . vcState)
]
}
vpnConnectionDeleted :: Wait DescribeVpnConnections
vpnConnectionDeleted = Wait
{ _waitName = "VpnConnectionDeleted"
, _waitAttempts = 40
, _waitDelay = 15
, _waitAcceptors =
[ matchAll VpnStateDeleted AcceptSuccess
(folding (concatOf dvcrVpnConnections) . vcState)
, matchAny VpnStatePending AcceptFailure
(folding (concatOf dvcrVpnConnections) . vcState)
]
}