module Stratosphere.ARCRegionSwitch.Plan.EcsCapacityIncreaseConfigurationProperty (
module Exports, EcsCapacityIncreaseConfigurationProperty(..),
mkEcsCapacityIncreaseConfigurationProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.ARCRegionSwitch.Plan.EcsUngracefulProperty as Exports
import {-# SOURCE #-} Stratosphere.ARCRegionSwitch.Plan.ServiceProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data EcsCapacityIncreaseConfigurationProperty
=
EcsCapacityIncreaseConfigurationProperty {EcsCapacityIncreaseConfigurationProperty -> ()
haddock_workaround_ :: (),
EcsCapacityIncreaseConfigurationProperty -> Maybe Object
capacityMonitoringApproach :: (Prelude.Maybe JSON.Object),
EcsCapacityIncreaseConfigurationProperty -> [ServiceProperty]
services :: [ServiceProperty],
EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
targetPercent :: (Prelude.Maybe (Value Prelude.Double)),
EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
timeoutMinutes :: (Prelude.Maybe (Value Prelude.Double)),
EcsCapacityIncreaseConfigurationProperty
-> Maybe EcsUngracefulProperty
ungraceful :: (Prelude.Maybe EcsUngracefulProperty)}
deriving stock (EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty -> Bool
(EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty -> Bool)
-> (EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty -> Bool)
-> Eq EcsCapacityIncreaseConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty -> Bool
== :: EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty -> Bool
$c/= :: EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty -> Bool
/= :: EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty -> Bool
Prelude.Eq, Int -> EcsCapacityIncreaseConfigurationProperty -> ShowS
[EcsCapacityIncreaseConfigurationProperty] -> ShowS
EcsCapacityIncreaseConfigurationProperty -> String
(Int -> EcsCapacityIncreaseConfigurationProperty -> ShowS)
-> (EcsCapacityIncreaseConfigurationProperty -> String)
-> ([EcsCapacityIncreaseConfigurationProperty] -> ShowS)
-> Show EcsCapacityIncreaseConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> EcsCapacityIncreaseConfigurationProperty -> ShowS
showsPrec :: Int -> EcsCapacityIncreaseConfigurationProperty -> ShowS
$cshow :: EcsCapacityIncreaseConfigurationProperty -> String
show :: EcsCapacityIncreaseConfigurationProperty -> String
$cshowList :: [EcsCapacityIncreaseConfigurationProperty] -> ShowS
showList :: [EcsCapacityIncreaseConfigurationProperty] -> ShowS
Prelude.Show)
mkEcsCapacityIncreaseConfigurationProperty ::
[ServiceProperty] -> EcsCapacityIncreaseConfigurationProperty
mkEcsCapacityIncreaseConfigurationProperty :: [ServiceProperty] -> EcsCapacityIncreaseConfigurationProperty
mkEcsCapacityIncreaseConfigurationProperty [ServiceProperty]
services
= EcsCapacityIncreaseConfigurationProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), services :: [ServiceProperty]
services = [ServiceProperty]
services,
capacityMonitoringApproach :: Maybe Object
capacityMonitoringApproach = Maybe Object
forall a. Maybe a
Prelude.Nothing,
targetPercent :: Maybe (Value Double)
targetPercent = Maybe (Value Double)
forall a. Maybe a
Prelude.Nothing, timeoutMinutes :: Maybe (Value Double)
timeoutMinutes = Maybe (Value Double)
forall a. Maybe a
Prelude.Nothing,
ungraceful :: Maybe EcsUngracefulProperty
ungraceful = Maybe EcsUngracefulProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties EcsCapacityIncreaseConfigurationProperty where
toResourceProperties :: EcsCapacityIncreaseConfigurationProperty -> ResourceProperties
toResourceProperties EcsCapacityIncreaseConfigurationProperty {[ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: EcsCapacityIncreaseConfigurationProperty -> ()
capacityMonitoringApproach :: EcsCapacityIncreaseConfigurationProperty -> Maybe Object
services :: EcsCapacityIncreaseConfigurationProperty -> [ServiceProperty]
targetPercent :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
timeoutMinutes :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
ungraceful :: EcsCapacityIncreaseConfigurationProperty
-> Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::ARCRegionSwitch::Plan.EcsCapacityIncreaseConfiguration",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
[Key
"Services" Key -> [ServiceProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= [ServiceProperty]
services]
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Object -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CapacityMonitoringApproach"
(Object -> (Key, Value)) -> Maybe Object -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Object
capacityMonitoringApproach,
Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"TargetPercent" (Value Double -> (Key, Value))
-> Maybe (Value Double) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Double)
targetPercent,
Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"TimeoutMinutes" (Value Double -> (Key, Value))
-> Maybe (Value Double) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Double)
timeoutMinutes,
Key -> EcsUngracefulProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Ungraceful" (EcsUngracefulProperty -> (Key, Value))
-> Maybe EcsUngracefulProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe EcsUngracefulProperty
ungraceful]))}
instance JSON.ToJSON EcsCapacityIncreaseConfigurationProperty where
toJSON :: EcsCapacityIncreaseConfigurationProperty -> Value
toJSON EcsCapacityIncreaseConfigurationProperty {[ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: EcsCapacityIncreaseConfigurationProperty -> ()
capacityMonitoringApproach :: EcsCapacityIncreaseConfigurationProperty -> Maybe Object
services :: EcsCapacityIncreaseConfigurationProperty -> [ServiceProperty]
targetPercent :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
timeoutMinutes :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
ungraceful :: EcsCapacityIncreaseConfigurationProperty
-> Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
[Key
"Services" Key -> [ServiceProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= [ServiceProperty]
services]
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Object -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CapacityMonitoringApproach"
(Object -> (Key, Value)) -> Maybe Object -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Object
capacityMonitoringApproach,
Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"TargetPercent" (Value Double -> (Key, Value))
-> Maybe (Value Double) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Double)
targetPercent,
Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"TimeoutMinutes" (Value Double -> (Key, Value))
-> Maybe (Value Double) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Double)
timeoutMinutes,
Key -> EcsUngracefulProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Ungraceful" (EcsUngracefulProperty -> (Key, Value))
-> Maybe EcsUngracefulProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe EcsUngracefulProperty
ungraceful])))
instance Property "CapacityMonitoringApproach" EcsCapacityIncreaseConfigurationProperty where
type PropertyType "CapacityMonitoringApproach" EcsCapacityIncreaseConfigurationProperty = JSON.Object
set :: PropertyType
"CapacityMonitoringApproach"
EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
set PropertyType
"CapacityMonitoringApproach"
EcsCapacityIncreaseConfigurationProperty
newValue EcsCapacityIncreaseConfigurationProperty {[ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: EcsCapacityIncreaseConfigurationProperty -> ()
capacityMonitoringApproach :: EcsCapacityIncreaseConfigurationProperty -> Maybe Object
services :: EcsCapacityIncreaseConfigurationProperty -> [ServiceProperty]
targetPercent :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
timeoutMinutes :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
ungraceful :: EcsCapacityIncreaseConfigurationProperty
-> Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
= EcsCapacityIncreaseConfigurationProperty
{capacityMonitoringApproach :: Maybe Object
capacityMonitoringApproach = Object -> Maybe Object
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure Object
PropertyType
"CapacityMonitoringApproach"
EcsCapacityIncreaseConfigurationProperty
newValue, [ServiceProperty]
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: ()
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
instance Property "Services" EcsCapacityIncreaseConfigurationProperty where
type PropertyType "Services" EcsCapacityIncreaseConfigurationProperty = [ServiceProperty]
set :: PropertyType "Services" EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
set PropertyType "Services" EcsCapacityIncreaseConfigurationProperty
newValue EcsCapacityIncreaseConfigurationProperty {[ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: EcsCapacityIncreaseConfigurationProperty -> ()
capacityMonitoringApproach :: EcsCapacityIncreaseConfigurationProperty -> Maybe Object
services :: EcsCapacityIncreaseConfigurationProperty -> [ServiceProperty]
targetPercent :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
timeoutMinutes :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
ungraceful :: EcsCapacityIncreaseConfigurationProperty
-> Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
= EcsCapacityIncreaseConfigurationProperty
{services :: [ServiceProperty]
services = [ServiceProperty]
PropertyType "Services" EcsCapacityIncreaseConfigurationProperty
newValue, Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
instance Property "TargetPercent" EcsCapacityIncreaseConfigurationProperty where
type PropertyType "TargetPercent" EcsCapacityIncreaseConfigurationProperty = Value Prelude.Double
set :: PropertyType
"TargetPercent" EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
set PropertyType
"TargetPercent" EcsCapacityIncreaseConfigurationProperty
newValue EcsCapacityIncreaseConfigurationProperty {[ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: EcsCapacityIncreaseConfigurationProperty -> ()
capacityMonitoringApproach :: EcsCapacityIncreaseConfigurationProperty -> Maybe Object
services :: EcsCapacityIncreaseConfigurationProperty -> [ServiceProperty]
targetPercent :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
timeoutMinutes :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
ungraceful :: EcsCapacityIncreaseConfigurationProperty
-> Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
= EcsCapacityIncreaseConfigurationProperty
{targetPercent :: Maybe (Value Double)
targetPercent = Value Double -> Maybe (Value Double)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType
"TargetPercent" EcsCapacityIncreaseConfigurationProperty
Value Double
newValue, [ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
instance Property "TimeoutMinutes" EcsCapacityIncreaseConfigurationProperty where
type PropertyType "TimeoutMinutes" EcsCapacityIncreaseConfigurationProperty = Value Prelude.Double
set :: PropertyType
"TimeoutMinutes" EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
set PropertyType
"TimeoutMinutes" EcsCapacityIncreaseConfigurationProperty
newValue EcsCapacityIncreaseConfigurationProperty {[ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: EcsCapacityIncreaseConfigurationProperty -> ()
capacityMonitoringApproach :: EcsCapacityIncreaseConfigurationProperty -> Maybe Object
services :: EcsCapacityIncreaseConfigurationProperty -> [ServiceProperty]
targetPercent :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
timeoutMinutes :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
ungraceful :: EcsCapacityIncreaseConfigurationProperty
-> Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
= EcsCapacityIncreaseConfigurationProperty
{timeoutMinutes :: Maybe (Value Double)
timeoutMinutes = Value Double -> Maybe (Value Double)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType
"TimeoutMinutes" EcsCapacityIncreaseConfigurationProperty
Value Double
newValue, [ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
instance Property "Ungraceful" EcsCapacityIncreaseConfigurationProperty where
type PropertyType "Ungraceful" EcsCapacityIncreaseConfigurationProperty = EcsUngracefulProperty
set :: PropertyType "Ungraceful" EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
-> EcsCapacityIncreaseConfigurationProperty
set PropertyType "Ungraceful" EcsCapacityIncreaseConfigurationProperty
newValue EcsCapacityIncreaseConfigurationProperty {[ServiceProperty]
Maybe Object
Maybe (Value Double)
Maybe EcsUngracefulProperty
()
haddock_workaround_ :: EcsCapacityIncreaseConfigurationProperty -> ()
capacityMonitoringApproach :: EcsCapacityIncreaseConfigurationProperty -> Maybe Object
services :: EcsCapacityIncreaseConfigurationProperty -> [ServiceProperty]
targetPercent :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
timeoutMinutes :: EcsCapacityIncreaseConfigurationProperty -> Maybe (Value Double)
ungraceful :: EcsCapacityIncreaseConfigurationProperty
-> Maybe EcsUngracefulProperty
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
ungraceful :: Maybe EcsUngracefulProperty
..}
= EcsCapacityIncreaseConfigurationProperty
{ungraceful :: Maybe EcsUngracefulProperty
ungraceful = EcsUngracefulProperty -> Maybe EcsUngracefulProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "Ungraceful" EcsCapacityIncreaseConfigurationProperty
EcsUngracefulProperty
newValue, [ServiceProperty]
Maybe Object
Maybe (Value Double)
()
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
haddock_workaround_ :: ()
capacityMonitoringApproach :: Maybe Object
services :: [ServiceProperty]
targetPercent :: Maybe (Value Double)
timeoutMinutes :: Maybe (Value Double)
..}