{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.CodeBuild.Types.ProjectEnvironment where
import Amazonka.CodeBuild.Types.ComputeType
import Amazonka.CodeBuild.Types.EnvironmentType
import Amazonka.CodeBuild.Types.EnvironmentVariable
import Amazonka.CodeBuild.Types.ImagePullCredentialsType
import Amazonka.CodeBuild.Types.RegistryCredential
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data ProjectEnvironment = ProjectEnvironment'
{
ProjectEnvironment -> Maybe ImagePullCredentialsType
imagePullCredentialsType :: Prelude.Maybe ImagePullCredentialsType,
ProjectEnvironment -> Maybe Bool
privilegedMode :: Prelude.Maybe Prelude.Bool,
ProjectEnvironment -> Maybe RegistryCredential
registryCredential :: Prelude.Maybe RegistryCredential,
ProjectEnvironment -> Maybe Text
certificate :: Prelude.Maybe Prelude.Text,
ProjectEnvironment -> Maybe [EnvironmentVariable]
environmentVariables :: Prelude.Maybe [EnvironmentVariable],
ProjectEnvironment -> EnvironmentType
type' :: EnvironmentType,
ProjectEnvironment -> Text
image :: Prelude.Text,
ProjectEnvironment -> ComputeType
computeType :: ComputeType
}
deriving (ProjectEnvironment -> ProjectEnvironment -> Bool
(ProjectEnvironment -> ProjectEnvironment -> Bool)
-> (ProjectEnvironment -> ProjectEnvironment -> Bool)
-> Eq ProjectEnvironment
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProjectEnvironment -> ProjectEnvironment -> Bool
$c/= :: ProjectEnvironment -> ProjectEnvironment -> Bool
== :: ProjectEnvironment -> ProjectEnvironment -> Bool
$c== :: ProjectEnvironment -> ProjectEnvironment -> Bool
Prelude.Eq, ReadPrec [ProjectEnvironment]
ReadPrec ProjectEnvironment
Int -> ReadS ProjectEnvironment
ReadS [ProjectEnvironment]
(Int -> ReadS ProjectEnvironment)
-> ReadS [ProjectEnvironment]
-> ReadPrec ProjectEnvironment
-> ReadPrec [ProjectEnvironment]
-> Read ProjectEnvironment
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ProjectEnvironment]
$creadListPrec :: ReadPrec [ProjectEnvironment]
readPrec :: ReadPrec ProjectEnvironment
$creadPrec :: ReadPrec ProjectEnvironment
readList :: ReadS [ProjectEnvironment]
$creadList :: ReadS [ProjectEnvironment]
readsPrec :: Int -> ReadS ProjectEnvironment
$creadsPrec :: Int -> ReadS ProjectEnvironment
Prelude.Read, Int -> ProjectEnvironment -> ShowS
[ProjectEnvironment] -> ShowS
ProjectEnvironment -> String
(Int -> ProjectEnvironment -> ShowS)
-> (ProjectEnvironment -> String)
-> ([ProjectEnvironment] -> ShowS)
-> Show ProjectEnvironment
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProjectEnvironment] -> ShowS
$cshowList :: [ProjectEnvironment] -> ShowS
show :: ProjectEnvironment -> String
$cshow :: ProjectEnvironment -> String
showsPrec :: Int -> ProjectEnvironment -> ShowS
$cshowsPrec :: Int -> ProjectEnvironment -> ShowS
Prelude.Show, (forall x. ProjectEnvironment -> Rep ProjectEnvironment x)
-> (forall x. Rep ProjectEnvironment x -> ProjectEnvironment)
-> Generic ProjectEnvironment
forall x. Rep ProjectEnvironment x -> ProjectEnvironment
forall x. ProjectEnvironment -> Rep ProjectEnvironment x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ProjectEnvironment x -> ProjectEnvironment
$cfrom :: forall x. ProjectEnvironment -> Rep ProjectEnvironment x
Prelude.Generic)
newProjectEnvironment ::
EnvironmentType ->
Prelude.Text ->
ComputeType ->
ProjectEnvironment
newProjectEnvironment :: EnvironmentType -> Text -> ComputeType -> ProjectEnvironment
newProjectEnvironment EnvironmentType
pType_ Text
pImage_ ComputeType
pComputeType_ =
ProjectEnvironment' :: Maybe ImagePullCredentialsType
-> Maybe Bool
-> Maybe RegistryCredential
-> Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment
ProjectEnvironment'
{ $sel:imagePullCredentialsType:ProjectEnvironment' :: Maybe ImagePullCredentialsType
imagePullCredentialsType =
Maybe ImagePullCredentialsType
forall a. Maybe a
Prelude.Nothing,
$sel:privilegedMode:ProjectEnvironment' :: Maybe Bool
privilegedMode = Maybe Bool
forall a. Maybe a
Prelude.Nothing,
$sel:registryCredential:ProjectEnvironment' :: Maybe RegistryCredential
registryCredential = Maybe RegistryCredential
forall a. Maybe a
Prelude.Nothing,
$sel:certificate:ProjectEnvironment' :: Maybe Text
certificate = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:environmentVariables:ProjectEnvironment' :: Maybe [EnvironmentVariable]
environmentVariables = Maybe [EnvironmentVariable]
forall a. Maybe a
Prelude.Nothing,
$sel:type':ProjectEnvironment' :: EnvironmentType
type' = EnvironmentType
pType_,
$sel:image:ProjectEnvironment' :: Text
image = Text
pImage_,
$sel:computeType:ProjectEnvironment' :: ComputeType
computeType = ComputeType
pComputeType_
}
projectEnvironment_imagePullCredentialsType :: Lens.Lens' ProjectEnvironment (Prelude.Maybe ImagePullCredentialsType)
projectEnvironment_imagePullCredentialsType :: (Maybe ImagePullCredentialsType
-> f (Maybe ImagePullCredentialsType))
-> ProjectEnvironment -> f ProjectEnvironment
projectEnvironment_imagePullCredentialsType = (ProjectEnvironment -> Maybe ImagePullCredentialsType)
-> (ProjectEnvironment
-> Maybe ImagePullCredentialsType -> ProjectEnvironment)
-> Lens
ProjectEnvironment
ProjectEnvironment
(Maybe ImagePullCredentialsType)
(Maybe ImagePullCredentialsType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProjectEnvironment' {Maybe ImagePullCredentialsType
imagePullCredentialsType :: Maybe ImagePullCredentialsType
$sel:imagePullCredentialsType:ProjectEnvironment' :: ProjectEnvironment -> Maybe ImagePullCredentialsType
imagePullCredentialsType} -> Maybe ImagePullCredentialsType
imagePullCredentialsType) (\s :: ProjectEnvironment
s@ProjectEnvironment' {} Maybe ImagePullCredentialsType
a -> ProjectEnvironment
s {$sel:imagePullCredentialsType:ProjectEnvironment' :: Maybe ImagePullCredentialsType
imagePullCredentialsType = Maybe ImagePullCredentialsType
a} :: ProjectEnvironment)
projectEnvironment_privilegedMode :: Lens.Lens' ProjectEnvironment (Prelude.Maybe Prelude.Bool)
projectEnvironment_privilegedMode :: (Maybe Bool -> f (Maybe Bool))
-> ProjectEnvironment -> f ProjectEnvironment
projectEnvironment_privilegedMode = (ProjectEnvironment -> Maybe Bool)
-> (ProjectEnvironment -> Maybe Bool -> ProjectEnvironment)
-> Lens
ProjectEnvironment ProjectEnvironment (Maybe Bool) (Maybe Bool)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProjectEnvironment' {Maybe Bool
privilegedMode :: Maybe Bool
$sel:privilegedMode:ProjectEnvironment' :: ProjectEnvironment -> Maybe Bool
privilegedMode} -> Maybe Bool
privilegedMode) (\s :: ProjectEnvironment
s@ProjectEnvironment' {} Maybe Bool
a -> ProjectEnvironment
s {$sel:privilegedMode:ProjectEnvironment' :: Maybe Bool
privilegedMode = Maybe Bool
a} :: ProjectEnvironment)
projectEnvironment_registryCredential :: Lens.Lens' ProjectEnvironment (Prelude.Maybe RegistryCredential)
projectEnvironment_registryCredential :: (Maybe RegistryCredential -> f (Maybe RegistryCredential))
-> ProjectEnvironment -> f ProjectEnvironment
projectEnvironment_registryCredential = (ProjectEnvironment -> Maybe RegistryCredential)
-> (ProjectEnvironment
-> Maybe RegistryCredential -> ProjectEnvironment)
-> Lens
ProjectEnvironment
ProjectEnvironment
(Maybe RegistryCredential)
(Maybe RegistryCredential)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProjectEnvironment' {Maybe RegistryCredential
registryCredential :: Maybe RegistryCredential
$sel:registryCredential:ProjectEnvironment' :: ProjectEnvironment -> Maybe RegistryCredential
registryCredential} -> Maybe RegistryCredential
registryCredential) (\s :: ProjectEnvironment
s@ProjectEnvironment' {} Maybe RegistryCredential
a -> ProjectEnvironment
s {$sel:registryCredential:ProjectEnvironment' :: Maybe RegistryCredential
registryCredential = Maybe RegistryCredential
a} :: ProjectEnvironment)
projectEnvironment_certificate :: Lens.Lens' ProjectEnvironment (Prelude.Maybe Prelude.Text)
projectEnvironment_certificate :: (Maybe Text -> f (Maybe Text))
-> ProjectEnvironment -> f ProjectEnvironment
projectEnvironment_certificate = (ProjectEnvironment -> Maybe Text)
-> (ProjectEnvironment -> Maybe Text -> ProjectEnvironment)
-> Lens
ProjectEnvironment ProjectEnvironment (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProjectEnvironment' {Maybe Text
certificate :: Maybe Text
$sel:certificate:ProjectEnvironment' :: ProjectEnvironment -> Maybe Text
certificate} -> Maybe Text
certificate) (\s :: ProjectEnvironment
s@ProjectEnvironment' {} Maybe Text
a -> ProjectEnvironment
s {$sel:certificate:ProjectEnvironment' :: Maybe Text
certificate = Maybe Text
a} :: ProjectEnvironment)
projectEnvironment_environmentVariables :: Lens.Lens' ProjectEnvironment (Prelude.Maybe [EnvironmentVariable])
projectEnvironment_environmentVariables :: (Maybe [EnvironmentVariable] -> f (Maybe [EnvironmentVariable]))
-> ProjectEnvironment -> f ProjectEnvironment
projectEnvironment_environmentVariables = (ProjectEnvironment -> Maybe [EnvironmentVariable])
-> (ProjectEnvironment
-> Maybe [EnvironmentVariable] -> ProjectEnvironment)
-> Lens
ProjectEnvironment
ProjectEnvironment
(Maybe [EnvironmentVariable])
(Maybe [EnvironmentVariable])
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProjectEnvironment' {Maybe [EnvironmentVariable]
environmentVariables :: Maybe [EnvironmentVariable]
$sel:environmentVariables:ProjectEnvironment' :: ProjectEnvironment -> Maybe [EnvironmentVariable]
environmentVariables} -> Maybe [EnvironmentVariable]
environmentVariables) (\s :: ProjectEnvironment
s@ProjectEnvironment' {} Maybe [EnvironmentVariable]
a -> ProjectEnvironment
s {$sel:environmentVariables:ProjectEnvironment' :: Maybe [EnvironmentVariable]
environmentVariables = Maybe [EnvironmentVariable]
a} :: ProjectEnvironment) ((Maybe [EnvironmentVariable] -> f (Maybe [EnvironmentVariable]))
-> ProjectEnvironment -> f ProjectEnvironment)
-> ((Maybe [EnvironmentVariable]
-> f (Maybe [EnvironmentVariable]))
-> Maybe [EnvironmentVariable] -> f (Maybe [EnvironmentVariable]))
-> (Maybe [EnvironmentVariable] -> f (Maybe [EnvironmentVariable]))
-> ProjectEnvironment
-> f ProjectEnvironment
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
[EnvironmentVariable]
[EnvironmentVariable]
[EnvironmentVariable]
[EnvironmentVariable]
-> Iso
(Maybe [EnvironmentVariable])
(Maybe [EnvironmentVariable])
(Maybe [EnvironmentVariable])
(Maybe [EnvironmentVariable])
forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping AnIso
[EnvironmentVariable]
[EnvironmentVariable]
[EnvironmentVariable]
[EnvironmentVariable]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
projectEnvironment_type :: Lens.Lens' ProjectEnvironment EnvironmentType
projectEnvironment_type :: (EnvironmentType -> f EnvironmentType)
-> ProjectEnvironment -> f ProjectEnvironment
projectEnvironment_type = (ProjectEnvironment -> EnvironmentType)
-> (ProjectEnvironment -> EnvironmentType -> ProjectEnvironment)
-> Lens
ProjectEnvironment
ProjectEnvironment
EnvironmentType
EnvironmentType
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProjectEnvironment' {EnvironmentType
type' :: EnvironmentType
$sel:type':ProjectEnvironment' :: ProjectEnvironment -> EnvironmentType
type'} -> EnvironmentType
type') (\s :: ProjectEnvironment
s@ProjectEnvironment' {} EnvironmentType
a -> ProjectEnvironment
s {$sel:type':ProjectEnvironment' :: EnvironmentType
type' = EnvironmentType
a} :: ProjectEnvironment)
projectEnvironment_image :: Lens.Lens' ProjectEnvironment Prelude.Text
projectEnvironment_image :: (Text -> f Text) -> ProjectEnvironment -> f ProjectEnvironment
projectEnvironment_image = (ProjectEnvironment -> Text)
-> (ProjectEnvironment -> Text -> ProjectEnvironment)
-> Lens ProjectEnvironment ProjectEnvironment Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProjectEnvironment' {Text
image :: Text
$sel:image:ProjectEnvironment' :: ProjectEnvironment -> Text
image} -> Text
image) (\s :: ProjectEnvironment
s@ProjectEnvironment' {} Text
a -> ProjectEnvironment
s {$sel:image:ProjectEnvironment' :: Text
image = Text
a} :: ProjectEnvironment)
projectEnvironment_computeType :: Lens.Lens' ProjectEnvironment ComputeType
projectEnvironment_computeType :: (ComputeType -> f ComputeType)
-> ProjectEnvironment -> f ProjectEnvironment
projectEnvironment_computeType = (ProjectEnvironment -> ComputeType)
-> (ProjectEnvironment -> ComputeType -> ProjectEnvironment)
-> Lens
ProjectEnvironment ProjectEnvironment ComputeType ComputeType
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProjectEnvironment' {ComputeType
computeType :: ComputeType
$sel:computeType:ProjectEnvironment' :: ProjectEnvironment -> ComputeType
computeType} -> ComputeType
computeType) (\s :: ProjectEnvironment
s@ProjectEnvironment' {} ComputeType
a -> ProjectEnvironment
s {$sel:computeType:ProjectEnvironment' :: ComputeType
computeType = ComputeType
a} :: ProjectEnvironment)
instance Core.FromJSON ProjectEnvironment where
parseJSON :: Value -> Parser ProjectEnvironment
parseJSON =
String
-> (Object -> Parser ProjectEnvironment)
-> Value
-> Parser ProjectEnvironment
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"ProjectEnvironment"
( \Object
x ->
Maybe ImagePullCredentialsType
-> Maybe Bool
-> Maybe RegistryCredential
-> Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment
ProjectEnvironment'
(Maybe ImagePullCredentialsType
-> Maybe Bool
-> Maybe RegistryCredential
-> Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment)
-> Parser (Maybe ImagePullCredentialsType)
-> Parser
(Maybe Bool
-> Maybe RegistryCredential
-> Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe ImagePullCredentialsType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"imagePullCredentialsType")
Parser
(Maybe Bool
-> Maybe RegistryCredential
-> Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment)
-> Parser (Maybe Bool)
-> Parser
(Maybe RegistryCredential
-> Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"privilegedMode")
Parser
(Maybe RegistryCredential
-> Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment)
-> Parser (Maybe RegistryCredential)
-> Parser
(Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe RegistryCredential)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"registryCredential")
Parser
(Maybe Text
-> Maybe [EnvironmentVariable]
-> EnvironmentType
-> Text
-> ComputeType
-> ProjectEnvironment)
-> Parser (Maybe Text)
-> Parser
(Maybe [EnvironmentVariable]
-> EnvironmentType -> Text -> ComputeType -> ProjectEnvironment)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"certificate")
Parser
(Maybe [EnvironmentVariable]
-> EnvironmentType -> Text -> ComputeType -> ProjectEnvironment)
-> Parser (Maybe [EnvironmentVariable])
-> Parser
(EnvironmentType -> Text -> ComputeType -> ProjectEnvironment)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x Object -> Text -> Parser (Maybe (Maybe [EnvironmentVariable]))
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"environmentVariables"
Parser (Maybe (Maybe [EnvironmentVariable]))
-> Maybe [EnvironmentVariable]
-> Parser (Maybe [EnvironmentVariable])
forall a. Parser (Maybe a) -> a -> Parser a
Core..!= Maybe [EnvironmentVariable]
forall a. Monoid a => a
Prelude.mempty
)
Parser
(EnvironmentType -> Text -> ComputeType -> ProjectEnvironment)
-> Parser EnvironmentType
-> Parser (Text -> ComputeType -> ProjectEnvironment)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser EnvironmentType
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"type")
Parser (Text -> ComputeType -> ProjectEnvironment)
-> Parser Text -> Parser (ComputeType -> ProjectEnvironment)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"image")
Parser (ComputeType -> ProjectEnvironment)
-> Parser ComputeType -> Parser ProjectEnvironment
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser ComputeType
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"computeType")
)
instance Prelude.Hashable ProjectEnvironment
instance Prelude.NFData ProjectEnvironment
instance Core.ToJSON ProjectEnvironment where
toJSON :: ProjectEnvironment -> Value
toJSON ProjectEnvironment' {Maybe Bool
Maybe [EnvironmentVariable]
Maybe Text
Maybe ImagePullCredentialsType
Maybe RegistryCredential
Text
ComputeType
EnvironmentType
computeType :: ComputeType
image :: Text
type' :: EnvironmentType
environmentVariables :: Maybe [EnvironmentVariable]
certificate :: Maybe Text
registryCredential :: Maybe RegistryCredential
privilegedMode :: Maybe Bool
imagePullCredentialsType :: Maybe ImagePullCredentialsType
$sel:computeType:ProjectEnvironment' :: ProjectEnvironment -> ComputeType
$sel:image:ProjectEnvironment' :: ProjectEnvironment -> Text
$sel:type':ProjectEnvironment' :: ProjectEnvironment -> EnvironmentType
$sel:environmentVariables:ProjectEnvironment' :: ProjectEnvironment -> Maybe [EnvironmentVariable]
$sel:certificate:ProjectEnvironment' :: ProjectEnvironment -> Maybe Text
$sel:registryCredential:ProjectEnvironment' :: ProjectEnvironment -> Maybe RegistryCredential
$sel:privilegedMode:ProjectEnvironment' :: ProjectEnvironment -> Maybe Bool
$sel:imagePullCredentialsType:ProjectEnvironment' :: ProjectEnvironment -> Maybe ImagePullCredentialsType
..} =
[Pair] -> Value
Core.object
( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Text
"imagePullCredentialsType" Text -> ImagePullCredentialsType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(ImagePullCredentialsType -> Pair)
-> Maybe ImagePullCredentialsType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ImagePullCredentialsType
imagePullCredentialsType,
(Text
"privilegedMode" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Bool
privilegedMode,
(Text
"registryCredential" Text -> RegistryCredential -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
(RegistryCredential -> Pair)
-> Maybe RegistryCredential -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe RegistryCredential
registryCredential,
(Text
"certificate" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
certificate,
(Text
"environmentVariables" Text -> [EnvironmentVariable] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
([EnvironmentVariable] -> Pair)
-> Maybe [EnvironmentVariable] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [EnvironmentVariable]
environmentVariables,
Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"type" Text -> EnvironmentType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= EnvironmentType
type'),
Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"image" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
image),
Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"computeType" Text -> ComputeType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= ComputeType
computeType)
]
)