7#include <aws/core/utils/Waiter.h>
8#include <aws/core/utils/memory/AWSMemory.h>
9#include <aws/eks/EKSClient.h>
10#include <aws/eks/model/AddonStatus.h>
11#include <aws/eks/model/ClusterStatus.h>
12#include <aws/eks/model/DescribeAddonRequest.h>
13#include <aws/eks/model/DescribeAddonResult.h>
14#include <aws/eks/model/DescribeClusterRequest.h>
15#include <aws/eks/model/DescribeClusterResult.h>
16#include <aws/eks/model/DescribeFargateProfileRequest.h>
17#include <aws/eks/model/DescribeFargateProfileResult.h>
18#include <aws/eks/model/DescribeNodegroupRequest.h>
19#include <aws/eks/model/DescribeNodegroupResult.h>
20#include <aws/eks/model/FargateProfileStatus.h>
21#include <aws/eks/model/NodegroupStatus.h>
28template <
typename DerivedClient = EKSClient>
36 "AddonActiveWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"CREATE_FAILED"),
43 "AddonActiveWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"DEGRADED"),
50 "AddonActiveWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"ACTIVE"),
57 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeAddon(req); };
59 return waiter.
Wait(request);
67 "AddonDeletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"DELETE_FAILED"),
76 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeAddon(req); };
78 return waiter.
Wait(request);
86 "ClusterActiveWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"DELETING"),
93 "ClusterActiveWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"FAILED"),
100 "ClusterActiveWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"ACTIVE"),
103 const auto& result = outcome.
GetResult();
107 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeCluster(req); };
109 return waiter.
Wait(request);
117 "ClusterDeletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"ACTIVE"),
120 const auto& result = outcome.
GetResult();
124 "ClusterDeletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"CREATING"),
127 const auto& result = outcome.
GetResult();
131 "ClusterDeletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"PENDING"),
134 const auto& result = outcome.
GetResult();
140 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeCluster(req); };
142 return waiter.
Wait(request);
151 "FargateProfileActiveWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"CREATE_FAILED"),
154 const auto& result = outcome.
GetResult();
159 "FargateProfileActiveWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"ACTIVE"),
162 const auto& result = outcome.
GetResult();
167 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeFargateProfile(req); };
169 return waiter.
Wait(request);
178 "FargateProfileDeletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"DELETE_FAILED"),
181 const auto& result = outcome.
GetResult();
186 "FargateProfileDeletedWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"ResourceNotFoundException")));
188 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeFargateProfile(req); };
190 return waiter.
Wait(request);
198 "NodegroupActiveWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"CREATE_FAILED"),
201 const auto& result = outcome.
GetResult();
205 "NodegroupActiveWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"ACTIVE"),
208 const auto& result = outcome.
GetResult();
212 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeNodegroup(req); };
214 return waiter.
Wait(request);
222 "NodegroupDeletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"DELETE_FAILED"),
225 const auto& result = outcome.
GetResult();
231 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeNodegroup(req); };
233 return waiter.
Wait(request);
Aws::Utils::WaiterOutcome< Model::DescribeFargateProfileOutcome > WaitUntilFargateProfileDeleted(const Model::DescribeFargateProfileRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeAddonOutcome > WaitUntilAddonActive(const Model::DescribeAddonRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeFargateProfileOutcome > WaitUntilFargateProfileActive(const Model::DescribeFargateProfileRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeClusterOutcome > WaitUntilClusterDeleted(const Model::DescribeClusterRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeNodegroupOutcome > WaitUntilNodegroupDeleted(const Model::DescribeNodegroupRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeClusterOutcome > WaitUntilClusterActive(const Model::DescribeClusterRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeAddonOutcome > WaitUntilAddonDeleted(const Model::DescribeAddonRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeNodegroupOutcome > WaitUntilNodegroupActive(const Model::DescribeNodegroupRequest &request)
const R & GetResult() const
WaiterOutcome< OutcomeT > Wait(const RequestT &request)
AWS_EKS_API Aws::String GetNameForAddonStatus(AddonStatus value)
AWS_EKS_API Aws::String GetNameForClusterStatus(ClusterStatus value)
AWS_EKS_API Aws::String GetNameForFargateProfileStatus(FargateProfileStatus value)
AWS_EKS_API Aws::String GetNameForNodegroupStatus(NodegroupStatus value)
Aws::Utils::Outcome< DescribeNodegroupResult, EKSError > DescribeNodegroupOutcome
Aws::Utils::Outcome< DescribeClusterResult, EKSError > DescribeClusterOutcome
Aws::Utils::Outcome< DescribeAddonResult, EKSError > DescribeAddonOutcome
Aws::Utils::Outcome< DescribeFargateProfileResult, EKSError > DescribeFargateProfileOutcome
Crt::Variant< int, bool, Aws::String > ExpectedValue
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
UniquePtr< T > MakeUnique(const char *allocationTag, ArgTypes &&... args)
std::vector< T, Aws::Allocator< T > > Vector