{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.EKS.Waiters
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.EKS.Waiters where

import qualified Amazonka.Core as Core
import Amazonka.EKS.DescribeAddon
import Amazonka.EKS.DescribeCluster
import Amazonka.EKS.DescribeFargateProfile
import Amazonka.EKS.DescribeNodegroup
import Amazonka.EKS.Lens
import Amazonka.EKS.Types
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude

-- | Polls 'Amazonka.EKS.DescribeAddon' every 10 seconds until a successful state is reached. An error is returned after 60 failed checks.
newAddonActive :: Core.Wait DescribeAddon
newAddonActive :: Wait DescribeAddon
newAddonActive =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"AddonActive",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
60,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
10,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeAddon]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeAddon) (CI Text)
-> Acceptor DescribeAddon
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"CREATE_FAILED"
            Accept
Core.AcceptFailure
            ( (Maybe Addon -> f (Maybe Addon))
-> DescribeAddonResponse -> f DescribeAddonResponse
Lens' DescribeAddonResponse (Maybe Addon)
describeAddonResponse_addon ((Maybe Addon -> f (Maybe Addon))
 -> DescribeAddonResponse -> f DescribeAddonResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Addon -> f (Maybe Addon))
-> (CI Text -> f (CI Text))
-> DescribeAddonResponse
-> f DescribeAddonResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Addon -> f Addon) -> Maybe Addon -> f (Maybe Addon)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Addon -> f Addon) -> Maybe Addon -> f (Maybe Addon))
-> ((CI Text -> f (CI Text)) -> Addon -> f Addon)
-> (CI Text -> f (CI Text))
-> Maybe Addon
-> f (Maybe Addon)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe AddonStatus -> f (Maybe AddonStatus)) -> Addon -> f Addon
Lens' Addon (Maybe AddonStatus)
addon_status
                ((Maybe AddonStatus -> f (Maybe AddonStatus)) -> Addon -> f Addon)
-> ((CI Text -> f (CI Text))
    -> Maybe AddonStatus -> f (Maybe AddonStatus))
-> (CI Text -> f (CI Text))
-> Addon
-> f Addon
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (AddonStatus -> f AddonStatus)
-> Maybe AddonStatus -> f (Maybe AddonStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((AddonStatus -> f AddonStatus)
 -> Maybe AddonStatus -> f (Maybe AddonStatus))
-> ((CI Text -> f (CI Text)) -> AddonStatus -> f AddonStatus)
-> (CI Text -> f (CI Text))
-> Maybe AddonStatus
-> f (Maybe AddonStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (AddonStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> AddonStatus -> f AddonStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to AddonStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeAddon) (CI Text)
-> Acceptor DescribeAddon
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"DEGRADED"
            Accept
Core.AcceptFailure
            ( (Maybe Addon -> f (Maybe Addon))
-> DescribeAddonResponse -> f DescribeAddonResponse
Lens' DescribeAddonResponse (Maybe Addon)
describeAddonResponse_addon ((Maybe Addon -> f (Maybe Addon))
 -> DescribeAddonResponse -> f DescribeAddonResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Addon -> f (Maybe Addon))
-> (CI Text -> f (CI Text))
-> DescribeAddonResponse
-> f DescribeAddonResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Addon -> f Addon) -> Maybe Addon -> f (Maybe Addon)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Addon -> f Addon) -> Maybe Addon -> f (Maybe Addon))
-> ((CI Text -> f (CI Text)) -> Addon -> f Addon)
-> (CI Text -> f (CI Text))
-> Maybe Addon
-> f (Maybe Addon)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe AddonStatus -> f (Maybe AddonStatus)) -> Addon -> f Addon
Lens' Addon (Maybe AddonStatus)
addon_status
                ((Maybe AddonStatus -> f (Maybe AddonStatus)) -> Addon -> f Addon)
-> ((CI Text -> f (CI Text))
    -> Maybe AddonStatus -> f (Maybe AddonStatus))
-> (CI Text -> f (CI Text))
-> Addon
-> f Addon
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (AddonStatus -> f AddonStatus)
-> Maybe AddonStatus -> f (Maybe AddonStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((AddonStatus -> f AddonStatus)
 -> Maybe AddonStatus -> f (Maybe AddonStatus))
-> ((CI Text -> f (CI Text)) -> AddonStatus -> f AddonStatus)
-> (CI Text -> f (CI Text))
-> Maybe AddonStatus
-> f (Maybe AddonStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (AddonStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> AddonStatus -> f AddonStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to AddonStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeAddon) (CI Text)
-> Acceptor DescribeAddon
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"ACTIVE"
            Accept
Core.AcceptSuccess
            ( (Maybe Addon -> f (Maybe Addon))
-> DescribeAddonResponse -> f DescribeAddonResponse
Lens' DescribeAddonResponse (Maybe Addon)
describeAddonResponse_addon ((Maybe Addon -> f (Maybe Addon))
 -> DescribeAddonResponse -> f DescribeAddonResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Addon -> f (Maybe Addon))
-> (CI Text -> f (CI Text))
-> DescribeAddonResponse
-> f DescribeAddonResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Addon -> f Addon) -> Maybe Addon -> f (Maybe Addon)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Addon -> f Addon) -> Maybe Addon -> f (Maybe Addon))
-> ((CI Text -> f (CI Text)) -> Addon -> f Addon)
-> (CI Text -> f (CI Text))
-> Maybe Addon
-> f (Maybe Addon)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe AddonStatus -> f (Maybe AddonStatus)) -> Addon -> f Addon
Lens' Addon (Maybe AddonStatus)
addon_status
                ((Maybe AddonStatus -> f (Maybe AddonStatus)) -> Addon -> f Addon)
-> ((CI Text -> f (CI Text))
    -> Maybe AddonStatus -> f (Maybe AddonStatus))
-> (CI Text -> f (CI Text))
-> Addon
-> f Addon
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (AddonStatus -> f AddonStatus)
-> Maybe AddonStatus -> f (Maybe AddonStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((AddonStatus -> f AddonStatus)
 -> Maybe AddonStatus -> f (Maybe AddonStatus))
-> ((CI Text -> f (CI Text)) -> AddonStatus -> f AddonStatus)
-> (CI Text -> f (CI Text))
-> Maybe AddonStatus
-> f (Maybe AddonStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (AddonStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> AddonStatus -> f AddonStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to AddonStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }

-- | Polls 'Amazonka.EKS.DescribeNodegroup' every 30 seconds until a successful state is reached. An error is returned after 40 failed checks.
newNodegroupDeleted :: Core.Wait DescribeNodegroup
newNodegroupDeleted :: Wait DescribeNodegroup
newNodegroupDeleted =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"NodegroupDeleted",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
30,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeNodegroup]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeNodegroup) (CI Text)
-> Acceptor DescribeNodegroup
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"DELETE_FAILED"
            Accept
Core.AcceptFailure
            ( (Maybe Nodegroup -> f (Maybe Nodegroup))
-> DescribeNodegroupResponse -> f DescribeNodegroupResponse
Lens' DescribeNodegroupResponse (Maybe Nodegroup)
describeNodegroupResponse_nodegroup
                ((Maybe Nodegroup -> f (Maybe Nodegroup))
 -> DescribeNodegroupResponse -> f DescribeNodegroupResponse)
-> ((CI Text -> f (CI Text))
    -> Maybe Nodegroup -> f (Maybe Nodegroup))
-> (CI Text -> f (CI Text))
-> DescribeNodegroupResponse
-> f DescribeNodegroupResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Nodegroup -> f Nodegroup)
-> Maybe Nodegroup -> f (Maybe Nodegroup)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Nodegroup -> f Nodegroup)
 -> Maybe Nodegroup -> f (Maybe Nodegroup))
-> ((CI Text -> f (CI Text)) -> Nodegroup -> f Nodegroup)
-> (CI Text -> f (CI Text))
-> Maybe Nodegroup
-> f (Maybe Nodegroup)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> Nodegroup -> f Nodegroup
Lens' Nodegroup (Maybe NodegroupStatus)
nodegroup_status
                ((Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
 -> Nodegroup -> f Nodegroup)
-> ((CI Text -> f (CI Text))
    -> Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> (CI Text -> f (CI Text))
-> Nodegroup
-> f Nodegroup
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (NodegroupStatus -> f NodegroupStatus)
-> Maybe NodegroupStatus -> f (Maybe NodegroupStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((NodegroupStatus -> f NodegroupStatus)
 -> Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> ((CI Text -> f (CI Text))
    -> NodegroupStatus -> f NodegroupStatus)
-> (CI Text -> f (CI Text))
-> Maybe NodegroupStatus
-> f (Maybe NodegroupStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (NodegroupStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> NodegroupStatus -> f NodegroupStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to NodegroupStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          ErrorCode -> Accept -> Acceptor DescribeNodegroup
forall a. ErrorCode -> Accept -> Acceptor a
Core.matchError
            ErrorCode
"ResourceNotFoundException"
            Accept
Core.AcceptSuccess
        ]
    }

-- | Polls 'Amazonka.EKS.DescribeFargateProfile' every 10 seconds until a successful state is reached. An error is returned after 60 failed checks.
newFargateProfileActive :: Core.Wait DescribeFargateProfile
newFargateProfileActive :: Wait DescribeFargateProfile
newFargateProfileActive =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"FargateProfileActive",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
60,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
10,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeFargateProfile]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeFargateProfile) (CI Text)
-> Acceptor DescribeFargateProfile
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"CREATE_FAILED"
            Accept
Core.AcceptFailure
            ( (Maybe FargateProfile -> f (Maybe FargateProfile))
-> DescribeFargateProfileResponse
-> f DescribeFargateProfileResponse
Lens' DescribeFargateProfileResponse (Maybe FargateProfile)
describeFargateProfileResponse_fargateProfile
                ((Maybe FargateProfile -> f (Maybe FargateProfile))
 -> DescribeFargateProfileResponse
 -> f DescribeFargateProfileResponse)
-> ((CI Text -> f (CI Text))
    -> Maybe FargateProfile -> f (Maybe FargateProfile))
-> (CI Text -> f (CI Text))
-> DescribeFargateProfileResponse
-> f DescribeFargateProfileResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfile -> f FargateProfile)
-> Maybe FargateProfile -> f (Maybe FargateProfile)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((FargateProfile -> f FargateProfile)
 -> Maybe FargateProfile -> f (Maybe FargateProfile))
-> ((CI Text -> f (CI Text)) -> FargateProfile -> f FargateProfile)
-> (CI Text -> f (CI Text))
-> Maybe FargateProfile
-> f (Maybe FargateProfile)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> FargateProfile -> f FargateProfile
Lens' FargateProfile (Maybe FargateProfileStatus)
fargateProfile_status
                ((Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
 -> FargateProfile -> f FargateProfile)
-> ((CI Text -> f (CI Text))
    -> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> (CI Text -> f (CI Text))
-> FargateProfile
-> f FargateProfile
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfileStatus -> f FargateProfileStatus)
-> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((FargateProfileStatus -> f FargateProfileStatus)
 -> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> ((CI Text -> f (CI Text))
    -> FargateProfileStatus -> f FargateProfileStatus)
-> (CI Text -> f (CI Text))
-> Maybe FargateProfileStatus
-> f (Maybe FargateProfileStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfileStatus -> CI Text)
-> (CI Text -> f (CI Text))
-> FargateProfileStatus
-> f FargateProfileStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to FargateProfileStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeFargateProfile) (CI Text)
-> Acceptor DescribeFargateProfile
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"ACTIVE"
            Accept
Core.AcceptSuccess
            ( (Maybe FargateProfile -> f (Maybe FargateProfile))
-> DescribeFargateProfileResponse
-> f DescribeFargateProfileResponse
Lens' DescribeFargateProfileResponse (Maybe FargateProfile)
describeFargateProfileResponse_fargateProfile
                ((Maybe FargateProfile -> f (Maybe FargateProfile))
 -> DescribeFargateProfileResponse
 -> f DescribeFargateProfileResponse)
-> ((CI Text -> f (CI Text))
    -> Maybe FargateProfile -> f (Maybe FargateProfile))
-> (CI Text -> f (CI Text))
-> DescribeFargateProfileResponse
-> f DescribeFargateProfileResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfile -> f FargateProfile)
-> Maybe FargateProfile -> f (Maybe FargateProfile)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((FargateProfile -> f FargateProfile)
 -> Maybe FargateProfile -> f (Maybe FargateProfile))
-> ((CI Text -> f (CI Text)) -> FargateProfile -> f FargateProfile)
-> (CI Text -> f (CI Text))
-> Maybe FargateProfile
-> f (Maybe FargateProfile)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> FargateProfile -> f FargateProfile
Lens' FargateProfile (Maybe FargateProfileStatus)
fargateProfile_status
                ((Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
 -> FargateProfile -> f FargateProfile)
-> ((CI Text -> f (CI Text))
    -> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> (CI Text -> f (CI Text))
-> FargateProfile
-> f FargateProfile
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfileStatus -> f FargateProfileStatus)
-> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((FargateProfileStatus -> f FargateProfileStatus)
 -> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> ((CI Text -> f (CI Text))
    -> FargateProfileStatus -> f FargateProfileStatus)
-> (CI Text -> f (CI Text))
-> Maybe FargateProfileStatus
-> f (Maybe FargateProfileStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfileStatus -> CI Text)
-> (CI Text -> f (CI Text))
-> FargateProfileStatus
-> f FargateProfileStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to FargateProfileStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }

-- | Polls 'Amazonka.EKS.DescribeAddon' every 10 seconds until a successful state is reached. An error is returned after 60 failed checks.
newAddonDeleted :: Core.Wait DescribeAddon
newAddonDeleted :: Wait DescribeAddon
newAddonDeleted =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"AddonDeleted",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
60,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
10,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeAddon]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeAddon) (CI Text)
-> Acceptor DescribeAddon
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"DELETE_FAILED"
            Accept
Core.AcceptFailure
            ( (Maybe Addon -> f (Maybe Addon))
-> DescribeAddonResponse -> f DescribeAddonResponse
Lens' DescribeAddonResponse (Maybe Addon)
describeAddonResponse_addon ((Maybe Addon -> f (Maybe Addon))
 -> DescribeAddonResponse -> f DescribeAddonResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Addon -> f (Maybe Addon))
-> (CI Text -> f (CI Text))
-> DescribeAddonResponse
-> f DescribeAddonResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Addon -> f Addon) -> Maybe Addon -> f (Maybe Addon)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Addon -> f Addon) -> Maybe Addon -> f (Maybe Addon))
-> ((CI Text -> f (CI Text)) -> Addon -> f Addon)
-> (CI Text -> f (CI Text))
-> Maybe Addon
-> f (Maybe Addon)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe AddonStatus -> f (Maybe AddonStatus)) -> Addon -> f Addon
Lens' Addon (Maybe AddonStatus)
addon_status
                ((Maybe AddonStatus -> f (Maybe AddonStatus)) -> Addon -> f Addon)
-> ((CI Text -> f (CI Text))
    -> Maybe AddonStatus -> f (Maybe AddonStatus))
-> (CI Text -> f (CI Text))
-> Addon
-> f Addon
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (AddonStatus -> f AddonStatus)
-> Maybe AddonStatus -> f (Maybe AddonStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((AddonStatus -> f AddonStatus)
 -> Maybe AddonStatus -> f (Maybe AddonStatus))
-> ((CI Text -> f (CI Text)) -> AddonStatus -> f AddonStatus)
-> (CI Text -> f (CI Text))
-> Maybe AddonStatus
-> f (Maybe AddonStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (AddonStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> AddonStatus -> f AddonStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to AddonStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          ErrorCode -> Accept -> Acceptor DescribeAddon
forall a. ErrorCode -> Accept -> Acceptor a
Core.matchError
            ErrorCode
"ResourceNotFoundException"
            Accept
Core.AcceptSuccess
        ]
    }

-- | Polls 'Amazonka.EKS.DescribeCluster' every 30 seconds until a successful state is reached. An error is returned after 40 failed checks.
newClusterActive :: Core.Wait DescribeCluster
newClusterActive :: Wait DescribeCluster
newClusterActive =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"ClusterActive",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
30,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeCluster]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeCluster) (CI Text)
-> Acceptor DescribeCluster
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"DELETING"
            Accept
Core.AcceptFailure
            ( (Maybe Cluster -> f (Maybe Cluster))
-> DescribeClusterResponse -> f DescribeClusterResponse
Lens' DescribeClusterResponse (Maybe Cluster)
describeClusterResponse_cluster ((Maybe Cluster -> f (Maybe Cluster))
 -> DescribeClusterResponse -> f DescribeClusterResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Cluster -> f (Maybe Cluster))
-> (CI Text -> f (CI Text))
-> DescribeClusterResponse
-> f DescribeClusterResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster))
-> ((CI Text -> f (CI Text)) -> Cluster -> f Cluster)
-> (CI Text -> f (CI Text))
-> Maybe Cluster
-> f (Maybe Cluster)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> Cluster -> f Cluster
Lens' Cluster (Maybe ClusterStatus)
cluster_status
                ((Maybe ClusterStatus -> f (Maybe ClusterStatus))
 -> Cluster -> f Cluster)
-> ((CI Text -> f (CI Text))
    -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> (CI Text -> f (CI Text))
-> Cluster
-> f Cluster
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> f ClusterStatus)
-> Maybe ClusterStatus -> f (Maybe ClusterStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((ClusterStatus -> f ClusterStatus)
 -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> ((CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus)
-> (CI Text -> f (CI Text))
-> Maybe ClusterStatus
-> f (Maybe ClusterStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to ClusterStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeCluster) (CI Text)
-> Acceptor DescribeCluster
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"FAILED"
            Accept
Core.AcceptFailure
            ( (Maybe Cluster -> f (Maybe Cluster))
-> DescribeClusterResponse -> f DescribeClusterResponse
Lens' DescribeClusterResponse (Maybe Cluster)
describeClusterResponse_cluster ((Maybe Cluster -> f (Maybe Cluster))
 -> DescribeClusterResponse -> f DescribeClusterResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Cluster -> f (Maybe Cluster))
-> (CI Text -> f (CI Text))
-> DescribeClusterResponse
-> f DescribeClusterResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster))
-> ((CI Text -> f (CI Text)) -> Cluster -> f Cluster)
-> (CI Text -> f (CI Text))
-> Maybe Cluster
-> f (Maybe Cluster)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> Cluster -> f Cluster
Lens' Cluster (Maybe ClusterStatus)
cluster_status
                ((Maybe ClusterStatus -> f (Maybe ClusterStatus))
 -> Cluster -> f Cluster)
-> ((CI Text -> f (CI Text))
    -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> (CI Text -> f (CI Text))
-> Cluster
-> f Cluster
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> f ClusterStatus)
-> Maybe ClusterStatus -> f (Maybe ClusterStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((ClusterStatus -> f ClusterStatus)
 -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> ((CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus)
-> (CI Text -> f (CI Text))
-> Maybe ClusterStatus
-> f (Maybe ClusterStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to ClusterStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeCluster) (CI Text)
-> Acceptor DescribeCluster
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"ACTIVE"
            Accept
Core.AcceptSuccess
            ( (Maybe Cluster -> f (Maybe Cluster))
-> DescribeClusterResponse -> f DescribeClusterResponse
Lens' DescribeClusterResponse (Maybe Cluster)
describeClusterResponse_cluster ((Maybe Cluster -> f (Maybe Cluster))
 -> DescribeClusterResponse -> f DescribeClusterResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Cluster -> f (Maybe Cluster))
-> (CI Text -> f (CI Text))
-> DescribeClusterResponse
-> f DescribeClusterResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster))
-> ((CI Text -> f (CI Text)) -> Cluster -> f Cluster)
-> (CI Text -> f (CI Text))
-> Maybe Cluster
-> f (Maybe Cluster)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> Cluster -> f Cluster
Lens' Cluster (Maybe ClusterStatus)
cluster_status
                ((Maybe ClusterStatus -> f (Maybe ClusterStatus))
 -> Cluster -> f Cluster)
-> ((CI Text -> f (CI Text))
    -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> (CI Text -> f (CI Text))
-> Cluster
-> f Cluster
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> f ClusterStatus)
-> Maybe ClusterStatus -> f (Maybe ClusterStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((ClusterStatus -> f ClusterStatus)
 -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> ((CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus)
-> (CI Text -> f (CI Text))
-> Maybe ClusterStatus
-> f (Maybe ClusterStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to ClusterStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }

-- | Polls 'Amazonka.EKS.DescribeFargateProfile' every 30 seconds until a successful state is reached. An error is returned after 60 failed checks.
newFargateProfileDeleted :: Core.Wait DescribeFargateProfile
newFargateProfileDeleted :: Wait DescribeFargateProfile
newFargateProfileDeleted =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"FargateProfileDeleted",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
60,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
30,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeFargateProfile]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeFargateProfile) (CI Text)
-> Acceptor DescribeFargateProfile
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"DELETE_FAILED"
            Accept
Core.AcceptFailure
            ( (Maybe FargateProfile -> f (Maybe FargateProfile))
-> DescribeFargateProfileResponse
-> f DescribeFargateProfileResponse
Lens' DescribeFargateProfileResponse (Maybe FargateProfile)
describeFargateProfileResponse_fargateProfile
                ((Maybe FargateProfile -> f (Maybe FargateProfile))
 -> DescribeFargateProfileResponse
 -> f DescribeFargateProfileResponse)
-> ((CI Text -> f (CI Text))
    -> Maybe FargateProfile -> f (Maybe FargateProfile))
-> (CI Text -> f (CI Text))
-> DescribeFargateProfileResponse
-> f DescribeFargateProfileResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfile -> f FargateProfile)
-> Maybe FargateProfile -> f (Maybe FargateProfile)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((FargateProfile -> f FargateProfile)
 -> Maybe FargateProfile -> f (Maybe FargateProfile))
-> ((CI Text -> f (CI Text)) -> FargateProfile -> f FargateProfile)
-> (CI Text -> f (CI Text))
-> Maybe FargateProfile
-> f (Maybe FargateProfile)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> FargateProfile -> f FargateProfile
Lens' FargateProfile (Maybe FargateProfileStatus)
fargateProfile_status
                ((Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
 -> FargateProfile -> f FargateProfile)
-> ((CI Text -> f (CI Text))
    -> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> (CI Text -> f (CI Text))
-> FargateProfile
-> f FargateProfile
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfileStatus -> f FargateProfileStatus)
-> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((FargateProfileStatus -> f FargateProfileStatus)
 -> Maybe FargateProfileStatus -> f (Maybe FargateProfileStatus))
-> ((CI Text -> f (CI Text))
    -> FargateProfileStatus -> f FargateProfileStatus)
-> (CI Text -> f (CI Text))
-> Maybe FargateProfileStatus
-> f (Maybe FargateProfileStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (FargateProfileStatus -> CI Text)
-> (CI Text -> f (CI Text))
-> FargateProfileStatus
-> f FargateProfileStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to FargateProfileStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          ErrorCode -> Accept -> Acceptor DescribeFargateProfile
forall a. ErrorCode -> Accept -> Acceptor a
Core.matchError
            ErrorCode
"ResourceNotFoundException"
            Accept
Core.AcceptSuccess
        ]
    }

-- | Polls 'Amazonka.EKS.DescribeCluster' every 30 seconds until a successful state is reached. An error is returned after 40 failed checks.
newClusterDeleted :: Core.Wait DescribeCluster
newClusterDeleted :: Wait DescribeCluster
newClusterDeleted =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"ClusterDeleted",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
30,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeCluster]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeCluster) (CI Text)
-> Acceptor DescribeCluster
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"ACTIVE"
            Accept
Core.AcceptFailure
            ( (Maybe Cluster -> f (Maybe Cluster))
-> DescribeClusterResponse -> f DescribeClusterResponse
Lens' DescribeClusterResponse (Maybe Cluster)
describeClusterResponse_cluster ((Maybe Cluster -> f (Maybe Cluster))
 -> DescribeClusterResponse -> f DescribeClusterResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Cluster -> f (Maybe Cluster))
-> (CI Text -> f (CI Text))
-> DescribeClusterResponse
-> f DescribeClusterResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster))
-> ((CI Text -> f (CI Text)) -> Cluster -> f Cluster)
-> (CI Text -> f (CI Text))
-> Maybe Cluster
-> f (Maybe Cluster)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> Cluster -> f Cluster
Lens' Cluster (Maybe ClusterStatus)
cluster_status
                ((Maybe ClusterStatus -> f (Maybe ClusterStatus))
 -> Cluster -> f Cluster)
-> ((CI Text -> f (CI Text))
    -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> (CI Text -> f (CI Text))
-> Cluster
-> f Cluster
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> f ClusterStatus)
-> Maybe ClusterStatus -> f (Maybe ClusterStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((ClusterStatus -> f ClusterStatus)
 -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> ((CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus)
-> (CI Text -> f (CI Text))
-> Maybe ClusterStatus
-> f (Maybe ClusterStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to ClusterStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeCluster) (CI Text)
-> Acceptor DescribeCluster
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"CREATING"
            Accept
Core.AcceptFailure
            ( (Maybe Cluster -> f (Maybe Cluster))
-> DescribeClusterResponse -> f DescribeClusterResponse
Lens' DescribeClusterResponse (Maybe Cluster)
describeClusterResponse_cluster ((Maybe Cluster -> f (Maybe Cluster))
 -> DescribeClusterResponse -> f DescribeClusterResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Cluster -> f (Maybe Cluster))
-> (CI Text -> f (CI Text))
-> DescribeClusterResponse
-> f DescribeClusterResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster))
-> ((CI Text -> f (CI Text)) -> Cluster -> f Cluster)
-> (CI Text -> f (CI Text))
-> Maybe Cluster
-> f (Maybe Cluster)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> Cluster -> f Cluster
Lens' Cluster (Maybe ClusterStatus)
cluster_status
                ((Maybe ClusterStatus -> f (Maybe ClusterStatus))
 -> Cluster -> f Cluster)
-> ((CI Text -> f (CI Text))
    -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> (CI Text -> f (CI Text))
-> Cluster
-> f Cluster
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> f ClusterStatus)
-> Maybe ClusterStatus -> f (Maybe ClusterStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((ClusterStatus -> f ClusterStatus)
 -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> ((CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus)
-> (CI Text -> f (CI Text))
-> Maybe ClusterStatus
-> f (Maybe ClusterStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to ClusterStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeCluster) (CI Text)
-> Acceptor DescribeCluster
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"PENDING"
            Accept
Core.AcceptFailure
            ( (Maybe Cluster -> f (Maybe Cluster))
-> DescribeClusterResponse -> f DescribeClusterResponse
Lens' DescribeClusterResponse (Maybe Cluster)
describeClusterResponse_cluster ((Maybe Cluster -> f (Maybe Cluster))
 -> DescribeClusterResponse -> f DescribeClusterResponse)
-> ((CI Text -> f (CI Text)) -> Maybe Cluster -> f (Maybe Cluster))
-> (CI Text -> f (CI Text))
-> DescribeClusterResponse
-> f DescribeClusterResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Cluster -> f Cluster) -> Maybe Cluster -> f (Maybe Cluster))
-> ((CI Text -> f (CI Text)) -> Cluster -> f Cluster)
-> (CI Text -> f (CI Text))
-> Maybe Cluster
-> f (Maybe Cluster)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> Cluster -> f Cluster
Lens' Cluster (Maybe ClusterStatus)
cluster_status
                ((Maybe ClusterStatus -> f (Maybe ClusterStatus))
 -> Cluster -> f Cluster)
-> ((CI Text -> f (CI Text))
    -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> (CI Text -> f (CI Text))
-> Cluster
-> f Cluster
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> f ClusterStatus)
-> Maybe ClusterStatus -> f (Maybe ClusterStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((ClusterStatus -> f ClusterStatus)
 -> Maybe ClusterStatus -> f (Maybe ClusterStatus))
-> ((CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus)
-> (CI Text -> f (CI Text))
-> Maybe ClusterStatus
-> f (Maybe ClusterStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (ClusterStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> ClusterStatus -> f ClusterStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to ClusterStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          ErrorCode -> Accept -> Acceptor DescribeCluster
forall a. ErrorCode -> Accept -> Acceptor a
Core.matchError
            ErrorCode
"ResourceNotFoundException"
            Accept
Core.AcceptSuccess
        ]
    }

-- | Polls 'Amazonka.EKS.DescribeNodegroup' every 30 seconds until a successful state is reached. An error is returned after 80 failed checks.
newNodegroupActive :: Core.Wait DescribeNodegroup
newNodegroupActive :: Wait DescribeNodegroup
newNodegroupActive =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"NodegroupActive",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
80,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
30,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeNodegroup]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeNodegroup) (CI Text)
-> Acceptor DescribeNodegroup
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"CREATE_FAILED"
            Accept
Core.AcceptFailure
            ( (Maybe Nodegroup -> f (Maybe Nodegroup))
-> DescribeNodegroupResponse -> f DescribeNodegroupResponse
Lens' DescribeNodegroupResponse (Maybe Nodegroup)
describeNodegroupResponse_nodegroup
                ((Maybe Nodegroup -> f (Maybe Nodegroup))
 -> DescribeNodegroupResponse -> f DescribeNodegroupResponse)
-> ((CI Text -> f (CI Text))
    -> Maybe Nodegroup -> f (Maybe Nodegroup))
-> (CI Text -> f (CI Text))
-> DescribeNodegroupResponse
-> f DescribeNodegroupResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Nodegroup -> f Nodegroup)
-> Maybe Nodegroup -> f (Maybe Nodegroup)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Nodegroup -> f Nodegroup)
 -> Maybe Nodegroup -> f (Maybe Nodegroup))
-> ((CI Text -> f (CI Text)) -> Nodegroup -> f Nodegroup)
-> (CI Text -> f (CI Text))
-> Maybe Nodegroup
-> f (Maybe Nodegroup)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> Nodegroup -> f Nodegroup
Lens' Nodegroup (Maybe NodegroupStatus)
nodegroup_status
                ((Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
 -> Nodegroup -> f Nodegroup)
-> ((CI Text -> f (CI Text))
    -> Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> (CI Text -> f (CI Text))
-> Nodegroup
-> f Nodegroup
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (NodegroupStatus -> f NodegroupStatus)
-> Maybe NodegroupStatus -> f (Maybe NodegroupStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((NodegroupStatus -> f NodegroupStatus)
 -> Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> ((CI Text -> f (CI Text))
    -> NodegroupStatus -> f NodegroupStatus)
-> (CI Text -> f (CI Text))
-> Maybe NodegroupStatus
-> f (Maybe NodegroupStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (NodegroupStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> NodegroupStatus -> f NodegroupStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to NodegroupStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeNodegroup) (CI Text)
-> Acceptor DescribeNodegroup
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"ACTIVE"
            Accept
Core.AcceptSuccess
            ( (Maybe Nodegroup -> f (Maybe Nodegroup))
-> DescribeNodegroupResponse -> f DescribeNodegroupResponse
Lens' DescribeNodegroupResponse (Maybe Nodegroup)
describeNodegroupResponse_nodegroup
                ((Maybe Nodegroup -> f (Maybe Nodegroup))
 -> DescribeNodegroupResponse -> f DescribeNodegroupResponse)
-> ((CI Text -> f (CI Text))
    -> Maybe Nodegroup -> f (Maybe Nodegroup))
-> (CI Text -> f (CI Text))
-> DescribeNodegroupResponse
-> f DescribeNodegroupResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Nodegroup -> f Nodegroup)
-> Maybe Nodegroup -> f (Maybe Nodegroup)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Nodegroup -> f Nodegroup)
 -> Maybe Nodegroup -> f (Maybe Nodegroup))
-> ((CI Text -> f (CI Text)) -> Nodegroup -> f Nodegroup)
-> (CI Text -> f (CI Text))
-> Maybe Nodegroup
-> f (Maybe Nodegroup)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> Nodegroup -> f Nodegroup
Lens' Nodegroup (Maybe NodegroupStatus)
nodegroup_status
                ((Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
 -> Nodegroup -> f Nodegroup)
-> ((CI Text -> f (CI Text))
    -> Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> (CI Text -> f (CI Text))
-> Nodegroup
-> f Nodegroup
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (NodegroupStatus -> f NodegroupStatus)
-> Maybe NodegroupStatus -> f (Maybe NodegroupStatus)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((NodegroupStatus -> f NodegroupStatus)
 -> Maybe NodegroupStatus -> f (Maybe NodegroupStatus))
-> ((CI Text -> f (CI Text))
    -> NodegroupStatus -> f NodegroupStatus)
-> (CI Text -> f (CI Text))
-> Maybe NodegroupStatus
-> f (Maybe NodegroupStatus)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (NodegroupStatus -> CI Text)
-> (CI Text -> f (CI Text)) -> NodegroupStatus -> f NodegroupStatus
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to NodegroupStatus -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }