packages feed

amazonka-codepipeline 1.4.5 → 1.5.0

raw patch · 38 files changed

+3922/−3447 lines, 38 filesdep ~amazonka-codepipelinedep ~amazonka-coredep ~amazonka-testPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: amazonka-codepipeline, amazonka-core, amazonka-test

API changes (from Hackage documentation)

- Network.AWS.CodePipeline.GetJobDetails: instance GHC.Read.Read Network.AWS.CodePipeline.GetJobDetails.GetJobDetailsResponse
- Network.AWS.CodePipeline.GetThirdPartyJobDetails: instance GHC.Read.Read Network.AWS.CodePipeline.GetThirdPartyJobDetails.GetThirdPartyJobDetailsResponse
- Network.AWS.CodePipeline.PollForJobs: instance GHC.Read.Read Network.AWS.CodePipeline.PollForJobs.PollForJobsResponse
+ Network.AWS.CodePipeline: data PipelineExecutionSummary
+ Network.AWS.CodePipeline: data PipelineMetadata
+ Network.AWS.CodePipeline: pesLastUpdateTime :: Lens' PipelineExecutionSummary (Maybe UTCTime)
+ Network.AWS.CodePipeline: pesPipelineExecutionId :: Lens' PipelineExecutionSummary (Maybe Text)
+ Network.AWS.CodePipeline: pesStartTime :: Lens' PipelineExecutionSummary (Maybe UTCTime)
+ Network.AWS.CodePipeline: pesStatus :: Lens' PipelineExecutionSummary (Maybe PipelineExecutionStatus)
+ Network.AWS.CodePipeline: pipelineExecutionSummary :: PipelineExecutionSummary
+ Network.AWS.CodePipeline: pipelineMetadata :: PipelineMetadata
+ Network.AWS.CodePipeline: pmCreated :: Lens' PipelineMetadata (Maybe UTCTime)
+ Network.AWS.CodePipeline: pmPipelineARN :: Lens' PipelineMetadata (Maybe Text)
+ Network.AWS.CodePipeline: pmUpdated :: Lens' PipelineMetadata (Maybe UTCTime)
+ Network.AWS.CodePipeline.GetPipeline: gprsMetadata :: Lens' GetPipelineResponse (Maybe PipelineMetadata)
+ Network.AWS.CodePipeline.ListPipelineExecutions: data ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: data ListPipelineExecutionsResponse
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Control.DeepSeq.NFData Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Control.DeepSeq.NFData Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutionsResponse
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Data.Data.Data Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Data.Data.Data Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutionsResponse
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Data.Hashable.Class.Hashable Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance GHC.Classes.Eq Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance GHC.Classes.Eq Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutionsResponse
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance GHC.Generics.Generic Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance GHC.Generics.Generic Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutionsResponse
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance GHC.Read.Read Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance GHC.Read.Read Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutionsResponse
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance GHC.Show.Show Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance GHC.Show.Show Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutionsResponse
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Network.AWS.Data.Path.ToPath Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Network.AWS.Data.Query.ToQuery Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: instance Network.AWS.Types.AWSRequest Network.AWS.CodePipeline.ListPipelineExecutions.ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: listPipelineExecutions :: Text -> ListPipelineExecutions
+ Network.AWS.CodePipeline.ListPipelineExecutions: listPipelineExecutionsResponse :: Int -> ListPipelineExecutionsResponse
+ Network.AWS.CodePipeline.ListPipelineExecutions: lpeMaxResults :: Lens' ListPipelineExecutions (Maybe Natural)
+ Network.AWS.CodePipeline.ListPipelineExecutions: lpeNextToken :: Lens' ListPipelineExecutions (Maybe Text)
+ Network.AWS.CodePipeline.ListPipelineExecutions: lpePipelineName :: Lens' ListPipelineExecutions Text
+ Network.AWS.CodePipeline.ListPipelineExecutions: lpersNextToken :: Lens' ListPipelineExecutionsResponse (Maybe Text)
+ Network.AWS.CodePipeline.ListPipelineExecutions: lpersPipelineExecutionSummaries :: Lens' ListPipelineExecutionsResponse [PipelineExecutionSummary]
+ Network.AWS.CodePipeline.ListPipelineExecutions: lpersResponseStatus :: Lens' ListPipelineExecutionsResponse Int
+ Network.AWS.CodePipeline.Types: data PipelineExecutionSummary
+ Network.AWS.CodePipeline.Types: data PipelineMetadata
+ Network.AWS.CodePipeline.Types: pesLastUpdateTime :: Lens' PipelineExecutionSummary (Maybe UTCTime)
+ Network.AWS.CodePipeline.Types: pesPipelineExecutionId :: Lens' PipelineExecutionSummary (Maybe Text)
+ Network.AWS.CodePipeline.Types: pesStartTime :: Lens' PipelineExecutionSummary (Maybe UTCTime)
+ Network.AWS.CodePipeline.Types: pesStatus :: Lens' PipelineExecutionSummary (Maybe PipelineExecutionStatus)
+ Network.AWS.CodePipeline.Types: pipelineExecutionSummary :: PipelineExecutionSummary
+ Network.AWS.CodePipeline.Types: pipelineMetadata :: PipelineMetadata
+ Network.AWS.CodePipeline.Types: pmCreated :: Lens' PipelineMetadata (Maybe UTCTime)
+ Network.AWS.CodePipeline.Types: pmPipelineARN :: Lens' PipelineMetadata (Maybe Text)
+ Network.AWS.CodePipeline.Types: pmUpdated :: Lens' PipelineMetadata (Maybe UTCTime)

Files

README.md view
@@ -8,7 +8,7 @@  ## Version -`1.4.5`+`1.5.0`   ## Description
amazonka-codepipeline.cabal view
@@ -1,13 +1,13 @@ name:                  amazonka-codepipeline-version:               1.4.5+version:               1.5.0 synopsis:              Amazon CodePipeline SDK. homepage:              https://github.com/brendanhay/amazonka bug-reports:           https://github.com/brendanhay/amazonka/issues-license:               OtherLicense+license:               MPL-2.0 license-file:          LICENSE author:                Brendan Hay-maintainer:            Brendan Hay <brendan.g.hay@gmail.com>-copyright:             Copyright (c) 2013-2016 Brendan Hay+maintainer:            Brendan Hay <brendan.g.hay+amazonka@gmail.com>+copyright:             Copyright (c) 2013-2017 Brendan Hay category:              Network, AWS, Cloud, Distributed Computing build-type:            Simple cabal-version:         >= 1.10@@ -29,14 +29,19 @@     to get started.  source-repository head-    type:     git-    location: git://github.com/brendanhay/amazonka.git+    type:              git+    location:          git://github.com/brendanhay/amazonka.git+    subdir:            amazonka-codepipeline  library     default-language:  Haskell2010     hs-source-dirs:    src gen -    ghc-options:       -Wall+    ghc-options:+        -Wall+        -fwarn-incomplete-uni-patterns+        -fwarn-incomplete-record-updates+        -funbox-strict-fields      exposed-modules:           Network.AWS.CodePipeline@@ -54,6 +59,7 @@         , Network.AWS.CodePipeline.GetPipelineState         , Network.AWS.CodePipeline.GetThirdPartyJobDetails         , Network.AWS.CodePipeline.ListActionTypes+        , Network.AWS.CodePipeline.ListPipelineExecutions         , Network.AWS.CodePipeline.ListPipelines         , Network.AWS.CodePipeline.PollForJobs         , Network.AWS.CodePipeline.PollForThirdPartyJobs@@ -74,7 +80,7 @@         , Network.AWS.CodePipeline.Types.Sum      build-depends:-          amazonka-core == 1.4.5.*+          amazonka-core == 1.5.0.*         , base          >= 4.7     && < 5  test-suite amazonka-codepipeline-test@@ -94,9 +100,9 @@         , Test.AWS.CodePipeline.Internal      build-depends:-          amazonka-core == 1.4.5.*-        , amazonka-test == 1.4.5.*-        , amazonka-codepipeline == 1.4.5.*+          amazonka-core == 1.5.0.*+        , amazonka-test == 1.5.0.*+        , amazonka-codepipeline         , base         , bytestring         , tasty
+ fixture/ListPipelineExecutions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/codepipeline/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  codepipeline.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListPipelineExecutionsResponse.proto view
gen/Network/AWS/CodePipeline.hs view
@@ -5,9 +5,9 @@  -- | -- Module      : Network.AWS.CodePipeline--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -27,7 +27,7 @@ -- --     * 'DeletePipeline' , which deletes the specified pipeline. -----     * 'GetPipeline' , which returns information about a pipeline structure.+--     * 'GetPipeline' , which returns information about the pipeline structure and pipeline metadata, including the pipeline Amazon Resource Name (ARN). -- --     * 'GetPipelineExecution' , which returns information about a specific execution of a pipeline. --@@ -35,13 +35,15 @@ -- --     * 'ListPipelines' , which gets a summary of all of the pipelines associated with your account. --+--     * 'ListPipelineExecutions' , which gets a summary of the most recent executions for a pipeline.+-- --     * 'StartPipelineExecution' , which runs the the most recent revision of an artifact through the pipeline. -- --     * 'UpdatePipeline' , which updates a pipeline with edits or changes to the structure of the pipeline. -- -- ----- Pipelines include /stages/ , which are which are logical groupings of gates and actions. Each stage contains one or more actions that must complete before the next stage begins. A stage will result in success or failure. If a stage fails, then the pipeline stops at that stage and will remain stopped until either a new version of an artifact appears in the source location, or a user takes action to re-run the most recent artifact through the pipeline. You can call 'GetPipelineState' , which displays the status of a pipeline, including the status of stages in the pipeline, or 'GetPipeline' , which returns the entire structure of the pipeline, including the stages of that pipeline. For more information about the structure of stages and actions, also refer to the <http://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-structure.html AWS CodePipeline Pipeline Structure Reference> .+-- Pipelines include /stages/ , which are logical groupings of gates and actions. Each stage contains one or more actions that must complete before the next stage begins. A stage will result in success or failure. If a stage fails, then the pipeline stops at that stage and will remain stopped until either a new version of an artifact appears in the source location, or a user takes action to re-run the most recent artifact through the pipeline. You can call 'GetPipelineState' , which displays the status of a pipeline, including the status of stages in the pipeline, or 'GetPipeline' , which returns the entire structure of the pipeline, including the stages of that pipeline. For more information about the structure of stages and actions, also refer to the <http://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-structure.html AWS CodePipeline Pipeline Structure Reference> . -- -- Pipeline stages include /actions/ , which are categorized into categories such as source or build actions performed within a stage of a pipeline. For example, you can use a source action to import artifacts into a pipeline from a source such as Amazon S3. Like stages, you do not work with actions directly in most cases, but you do define and interact with actions when working with pipeline operations such as 'CreatePipeline' and 'GetPipelineState' . --@@ -252,6 +254,9 @@     -- ** CreateCustomActionType     , module Network.AWS.CodePipeline.CreateCustomActionType +    -- ** ListPipelineExecutions+    , module Network.AWS.CodePipeline.ListPipelineExecutions+     -- * Types      -- ** ActionCategory@@ -536,6 +541,21 @@     , pePipelineExecutionId     , peArtifactRevisions +    -- ** PipelineExecutionSummary+    , PipelineExecutionSummary+    , pipelineExecutionSummary+    , pesStatus+    , pesStartTime+    , pesPipelineExecutionId+    , pesLastUpdateTime++    -- ** PipelineMetadata+    , PipelineMetadata+    , pipelineMetadata+    , pmCreated+    , pmPipelineARN+    , pmUpdated+     -- ** PipelineSummary     , PipelineSummary     , pipelineSummary@@ -610,34 +630,35 @@     , tsLastChangedBy     ) where -import           Network.AWS.CodePipeline.AcknowledgeJob-import           Network.AWS.CodePipeline.AcknowledgeThirdPartyJob-import           Network.AWS.CodePipeline.CreateCustomActionType-import           Network.AWS.CodePipeline.CreatePipeline-import           Network.AWS.CodePipeline.DeleteCustomActionType-import           Network.AWS.CodePipeline.DeletePipeline-import           Network.AWS.CodePipeline.DisableStageTransition-import           Network.AWS.CodePipeline.EnableStageTransition-import           Network.AWS.CodePipeline.GetJobDetails-import           Network.AWS.CodePipeline.GetPipeline-import           Network.AWS.CodePipeline.GetPipelineExecution-import           Network.AWS.CodePipeline.GetPipelineState-import           Network.AWS.CodePipeline.GetThirdPartyJobDetails-import           Network.AWS.CodePipeline.ListActionTypes-import           Network.AWS.CodePipeline.ListPipelines-import           Network.AWS.CodePipeline.PollForJobs-import           Network.AWS.CodePipeline.PollForThirdPartyJobs-import           Network.AWS.CodePipeline.PutActionRevision-import           Network.AWS.CodePipeline.PutApprovalResult-import           Network.AWS.CodePipeline.PutJobFailureResult-import           Network.AWS.CodePipeline.PutJobSuccessResult-import           Network.AWS.CodePipeline.PutThirdPartyJobFailureResult-import           Network.AWS.CodePipeline.PutThirdPartyJobSuccessResult-import           Network.AWS.CodePipeline.RetryStageExecution-import           Network.AWS.CodePipeline.StartPipelineExecution-import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.UpdatePipeline-import           Network.AWS.CodePipeline.Waiters+import Network.AWS.CodePipeline.AcknowledgeJob+import Network.AWS.CodePipeline.AcknowledgeThirdPartyJob+import Network.AWS.CodePipeline.CreateCustomActionType+import Network.AWS.CodePipeline.CreatePipeline+import Network.AWS.CodePipeline.DeleteCustomActionType+import Network.AWS.CodePipeline.DeletePipeline+import Network.AWS.CodePipeline.DisableStageTransition+import Network.AWS.CodePipeline.EnableStageTransition+import Network.AWS.CodePipeline.GetJobDetails+import Network.AWS.CodePipeline.GetPipeline+import Network.AWS.CodePipeline.GetPipelineExecution+import Network.AWS.CodePipeline.GetPipelineState+import Network.AWS.CodePipeline.GetThirdPartyJobDetails+import Network.AWS.CodePipeline.ListActionTypes+import Network.AWS.CodePipeline.ListPipelineExecutions+import Network.AWS.CodePipeline.ListPipelines+import Network.AWS.CodePipeline.PollForJobs+import Network.AWS.CodePipeline.PollForThirdPartyJobs+import Network.AWS.CodePipeline.PutActionRevision+import Network.AWS.CodePipeline.PutApprovalResult+import Network.AWS.CodePipeline.PutJobFailureResult+import Network.AWS.CodePipeline.PutJobSuccessResult+import Network.AWS.CodePipeline.PutThirdPartyJobFailureResult+import Network.AWS.CodePipeline.PutThirdPartyJobSuccessResult+import Network.AWS.CodePipeline.RetryStageExecution+import Network.AWS.CodePipeline.StartPipelineExecution+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.UpdatePipeline+import Network.AWS.CodePipeline.Waiters  {- $errors Error matchers are designed for use with the functions provided by
gen/Network/AWS/CodePipeline/AcknowledgeJob.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.AcknowledgeJob--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -38,45 +38,44 @@     , ajrsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of an acknowledge job action.+-- | Represents the input of an AcknowledgeJob action. -- -- -- -- /See:/ 'acknowledgeJob' smart constructor. data AcknowledgeJob = AcknowledgeJob'-    { _ajJobId :: !Text-    , _ajNonce :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _ajJobId :: !Text+  , _ajNonce :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'AcknowledgeJob' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'ajJobId' - The unique system-generated ID of the job for which you want to confirm receipt. ----- * 'ajNonce' - A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.+-- * 'ajNonce' - A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. Get this number from the response of the 'PollForJobs' request that returned this job. acknowledgeJob     :: Text -- ^ 'ajJobId'     -> Text -- ^ 'ajNonce'     -> AcknowledgeJob acknowledgeJob pJobId_ pNonce_ =-    AcknowledgeJob'-    { _ajJobId = pJobId_-    , _ajNonce = pNonce_-    }+  AcknowledgeJob' {_ajJobId = pJobId_, _ajNonce = pNonce_} + -- | The unique system-generated ID of the job for which you want to confirm receipt. ajJobId :: Lens' AcknowledgeJob Text ajJobId = lens _ajJobId (\ s a -> s{_ajJobId = a}); --- | A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.+-- | A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. Get this number from the response of the 'PollForJobs' request that returned this job. ajNonce :: Lens' AcknowledgeJob Text ajNonce = lens _ajNonce (\ s a -> s{_ajNonce = a}); @@ -89,9 +88,9 @@                  AcknowledgeJobResponse' <$>                    (x .?> "status") <*> (pure (fromEnum s))) -instance Hashable AcknowledgeJob+instance Hashable AcknowledgeJob where -instance NFData AcknowledgeJob+instance NFData AcknowledgeJob where  instance ToHeaders AcknowledgeJob where         toHeaders@@ -116,16 +115,17 @@ instance ToQuery AcknowledgeJob where         toQuery = const mempty --- | Represents the output of an acknowledge job action.+-- | Represents the output of an AcknowledgeJob action. -- -- -- -- /See:/ 'acknowledgeJobResponse' smart constructor. data AcknowledgeJobResponse = AcknowledgeJobResponse'-    { _ajrsStatus         :: !(Maybe JobStatus)-    , _ajrsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _ajrsStatus         :: !(Maybe JobStatus)+  , _ajrsResponseStatus :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'AcknowledgeJobResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -137,11 +137,10 @@     :: Int -- ^ 'ajrsResponseStatus'     -> AcknowledgeJobResponse acknowledgeJobResponse pResponseStatus_ =-    AcknowledgeJobResponse'-    { _ajrsStatus = Nothing-    , _ajrsResponseStatus = pResponseStatus_-    }+  AcknowledgeJobResponse'+  {_ajrsStatus = Nothing, _ajrsResponseStatus = pResponseStatus_} + -- | Whether the job worker has received the specified job. ajrsStatus :: Lens' AcknowledgeJobResponse (Maybe JobStatus) ajrsStatus = lens _ajrsStatus (\ s a -> s{_ajrsStatus = a});@@ -150,4 +149,4 @@ ajrsResponseStatus :: Lens' AcknowledgeJobResponse Int ajrsResponseStatus = lens _ajrsResponseStatus (\ s a -> s{_ajrsResponseStatus = a}); -instance NFData AcknowledgeJobResponse+instance NFData AcknowledgeJobResponse where
gen/Network/AWS/CodePipeline/AcknowledgeThirdPartyJob.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.AcknowledgeThirdPartyJob--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -39,31 +39,32 @@     , atpjrsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of an acknowledge third party job action.+-- | Represents the input of an AcknowledgeThirdPartyJob action. -- -- -- -- /See:/ 'acknowledgeThirdPartyJob' smart constructor. data AcknowledgeThirdPartyJob = AcknowledgeThirdPartyJob'-    { _atpjJobId       :: !Text-    , _atpjNonce       :: !Text-    , _atpjClientToken :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _atpjJobId       :: !Text+  , _atpjNonce       :: !Text+  , _atpjClientToken :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'AcknowledgeThirdPartyJob' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'atpjJobId' - The unique system-generated ID of the job. ----- * 'atpjNonce' - A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.+-- * 'atpjNonce' - A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. Get this number from the response to a 'GetThirdPartyJobDetails' request. -- -- * 'atpjClientToken' - The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details. acknowledgeThirdPartyJob@@ -72,17 +73,15 @@     -> Text -- ^ 'atpjClientToken'     -> AcknowledgeThirdPartyJob acknowledgeThirdPartyJob pJobId_ pNonce_ pClientToken_ =-    AcknowledgeThirdPartyJob'-    { _atpjJobId = pJobId_-    , _atpjNonce = pNonce_-    , _atpjClientToken = pClientToken_-    }+  AcknowledgeThirdPartyJob'+  {_atpjJobId = pJobId_, _atpjNonce = pNonce_, _atpjClientToken = pClientToken_} + -- | The unique system-generated ID of the job. atpjJobId :: Lens' AcknowledgeThirdPartyJob Text atpjJobId = lens _atpjJobId (\ s a -> s{_atpjJobId = a}); --- | A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.+-- | A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. Get this number from the response to a 'GetThirdPartyJobDetails' request. atpjNonce :: Lens' AcknowledgeThirdPartyJob Text atpjNonce = lens _atpjNonce (\ s a -> s{_atpjNonce = a}); @@ -100,9 +99,9 @@                  AcknowledgeThirdPartyJobResponse' <$>                    (x .?> "status") <*> (pure (fromEnum s))) -instance Hashable AcknowledgeThirdPartyJob+instance Hashable AcknowledgeThirdPartyJob where -instance NFData AcknowledgeThirdPartyJob+instance NFData AcknowledgeThirdPartyJob where  instance ToHeaders AcknowledgeThirdPartyJob where         toHeaders@@ -128,16 +127,17 @@ instance ToQuery AcknowledgeThirdPartyJob where         toQuery = const mempty --- | Represents the output of an acknowledge third party job action.+-- | Represents the output of an AcknowledgeThirdPartyJob action. -- -- -- -- /See:/ 'acknowledgeThirdPartyJobResponse' smart constructor. data AcknowledgeThirdPartyJobResponse = AcknowledgeThirdPartyJobResponse'-    { _atpjrsStatus         :: !(Maybe JobStatus)-    , _atpjrsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _atpjrsStatus         :: !(Maybe JobStatus)+  , _atpjrsResponseStatus :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'AcknowledgeThirdPartyJobResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -149,11 +149,10 @@     :: Int -- ^ 'atpjrsResponseStatus'     -> AcknowledgeThirdPartyJobResponse acknowledgeThirdPartyJobResponse pResponseStatus_ =-    AcknowledgeThirdPartyJobResponse'-    { _atpjrsStatus = Nothing-    , _atpjrsResponseStatus = pResponseStatus_-    }+  AcknowledgeThirdPartyJobResponse'+  {_atpjrsStatus = Nothing, _atpjrsResponseStatus = pResponseStatus_} + -- | The status information for the third party job, if any. atpjrsStatus :: Lens' AcknowledgeThirdPartyJobResponse (Maybe JobStatus) atpjrsStatus = lens _atpjrsStatus (\ s a -> s{_atpjrsStatus = a});@@ -163,3 +162,4 @@ atpjrsResponseStatus = lens _atpjrsResponseStatus (\ s a -> s{_atpjrsResponseStatus = a});  instance NFData AcknowledgeThirdPartyJobResponse+         where
gen/Network/AWS/CodePipeline/CreateCustomActionType.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.CreateCustomActionType--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -43,33 +43,34 @@     , ccatrsActionType     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a create custom action operation.+-- | Represents the input of a CreateCustomActionType operation. -- -- -- -- /See:/ 'createCustomActionType' smart constructor. data CreateCustomActionType = CreateCustomActionType'-    { _ccatSettings                :: !(Maybe ActionTypeSettings)-    , _ccatConfigurationProperties :: !(Maybe [ActionConfigurationProperty])-    , _ccatCategory                :: !ActionCategory-    , _ccatProvider                :: !Text-    , _ccatVersion                 :: !Text-    , _ccatInputArtifactDetails    :: !ArtifactDetails-    , _ccatOutputArtifactDetails   :: !ArtifactDetails-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _ccatSettings                :: !(Maybe ActionTypeSettings)+  , _ccatConfigurationProperties :: !(Maybe [ActionConfigurationProperty])+  , _ccatCategory                :: !ActionCategory+  , _ccatProvider                :: !Text+  , _ccatVersion                 :: !Text+  , _ccatInputArtifactDetails    :: !ArtifactDetails+  , _ccatOutputArtifactDetails   :: !ArtifactDetails+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'CreateCustomActionType' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: ----- * 'ccatSettings' - Undocumented member.+-- * 'ccatSettings' - Returns information about the settings for an action type. -- -- * 'ccatConfigurationProperties' - The configuration properties for the custom action. --@@ -79,9 +80,9 @@ -- -- * 'ccatVersion' - The version identifier of the custom action. ----- * 'ccatInputArtifactDetails' - Undocumented member.+-- * 'ccatInputArtifactDetails' - The details of the input artifact for the action, such as its commit ID. ----- * 'ccatOutputArtifactDetails' - Undocumented member.+-- * 'ccatOutputArtifactDetails' - The details of the output artifact of the action, such as its commit ID. createCustomActionType     :: ActionCategory -- ^ 'ccatCategory'     -> Text -- ^ 'ccatProvider'@@ -90,17 +91,18 @@     -> ArtifactDetails -- ^ 'ccatOutputArtifactDetails'     -> CreateCustomActionType createCustomActionType pCategory_ pProvider_ pVersion_ pInputArtifactDetails_ pOutputArtifactDetails_ =-    CreateCustomActionType'-    { _ccatSettings = Nothing-    , _ccatConfigurationProperties = Nothing-    , _ccatCategory = pCategory_-    , _ccatProvider = pProvider_-    , _ccatVersion = pVersion_-    , _ccatInputArtifactDetails = pInputArtifactDetails_-    , _ccatOutputArtifactDetails = pOutputArtifactDetails_-    }+  CreateCustomActionType'+  { _ccatSettings = Nothing+  , _ccatConfigurationProperties = Nothing+  , _ccatCategory = pCategory_+  , _ccatProvider = pProvider_+  , _ccatVersion = pVersion_+  , _ccatInputArtifactDetails = pInputArtifactDetails_+  , _ccatOutputArtifactDetails = pOutputArtifactDetails_+  } --- | Undocumented member.++-- | Returns information about the settings for an action type. ccatSettings :: Lens' CreateCustomActionType (Maybe ActionTypeSettings) ccatSettings = lens _ccatSettings (\ s a -> s{_ccatSettings = a}); @@ -120,11 +122,11 @@ ccatVersion :: Lens' CreateCustomActionType Text ccatVersion = lens _ccatVersion (\ s a -> s{_ccatVersion = a}); --- | Undocumented member.+-- | The details of the input artifact for the action, such as its commit ID. ccatInputArtifactDetails :: Lens' CreateCustomActionType ArtifactDetails ccatInputArtifactDetails = lens _ccatInputArtifactDetails (\ s a -> s{_ccatInputArtifactDetails = a}); --- | Undocumented member.+-- | The details of the output artifact of the action, such as its commit ID. ccatOutputArtifactDetails :: Lens' CreateCustomActionType ArtifactDetails ccatOutputArtifactDetails = lens _ccatOutputArtifactDetails (\ s a -> s{_ccatOutputArtifactDetails = a}); @@ -138,9 +140,9 @@                  CreateCustomActionTypeResponse' <$>                    (pure (fromEnum s)) <*> (x .:> "actionType")) -instance Hashable CreateCustomActionType+instance Hashable CreateCustomActionType where -instance NFData CreateCustomActionType+instance NFData CreateCustomActionType where  instance ToHeaders CreateCustomActionType where         toHeaders@@ -175,39 +177,39 @@ instance ToQuery CreateCustomActionType where         toQuery = const mempty --- | Represents the output of a create custom action operation.+-- | Represents the output of a CreateCustomActionType operation. -- -- -- -- /See:/ 'createCustomActionTypeResponse' smart constructor. data CreateCustomActionTypeResponse = CreateCustomActionTypeResponse'-    { _ccatrsResponseStatus :: !Int-    , _ccatrsActionType     :: !ActionType-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _ccatrsResponseStatus :: !Int+  , _ccatrsActionType     :: !ActionType+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'CreateCustomActionTypeResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'ccatrsResponseStatus' - -- | The response status code. ----- * 'ccatrsActionType' - Undocumented member.+-- * 'ccatrsActionType' - Returns information about the details of an action type. createCustomActionTypeResponse     :: Int -- ^ 'ccatrsResponseStatus'     -> ActionType -- ^ 'ccatrsActionType'     -> CreateCustomActionTypeResponse createCustomActionTypeResponse pResponseStatus_ pActionType_ =-    CreateCustomActionTypeResponse'-    { _ccatrsResponseStatus = pResponseStatus_-    , _ccatrsActionType = pActionType_-    }+  CreateCustomActionTypeResponse'+  {_ccatrsResponseStatus = pResponseStatus_, _ccatrsActionType = pActionType_} + -- | -- | The response status code. ccatrsResponseStatus :: Lens' CreateCustomActionTypeResponse Int ccatrsResponseStatus = lens _ccatrsResponseStatus (\ s a -> s{_ccatrsResponseStatus = a}); --- | Undocumented member.+-- | Returns information about the details of an action type. ccatrsActionType :: Lens' CreateCustomActionTypeResponse ActionType ccatrsActionType = lens _ccatrsActionType (\ s a -> s{_ccatrsActionType = a}); -instance NFData CreateCustomActionTypeResponse+instance NFData CreateCustomActionTypeResponse where
gen/Network/AWS/CodePipeline/CreatePipeline.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.CreatePipeline--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -37,36 +37,35 @@     , cprsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a create pipeline action.+-- | Represents the input of a CreatePipeline action. -- -- -- -- /See:/ 'createPipeline' smart constructor. newtype CreatePipeline = CreatePipeline'-    { _cpPipeline :: PipelineDeclaration-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _cpPipeline :: PipelineDeclaration+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'CreatePipeline' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: ----- * 'cpPipeline' - Undocumented member.+-- * 'cpPipeline' - Represents the structure of actions and stages to be performed in the pipeline. createPipeline     :: PipelineDeclaration -- ^ 'cpPipeline'     -> CreatePipeline-createPipeline pPipeline_ =-    CreatePipeline'-    { _cpPipeline = pPipeline_-    }+createPipeline pPipeline_ = CreatePipeline' {_cpPipeline = pPipeline_} --- | Undocumented member.++-- | Represents the structure of actions and stages to be performed in the pipeline. cpPipeline :: Lens' CreatePipeline PipelineDeclaration cpPipeline = lens _cpPipeline (\ s a -> s{_cpPipeline = a}); @@ -79,9 +78,9 @@                  CreatePipelineResponse' <$>                    (x .?> "pipeline") <*> (pure (fromEnum s))) -instance Hashable CreatePipeline+instance Hashable CreatePipeline where -instance NFData CreatePipeline+instance NFData CreatePipeline where  instance ToHeaders CreatePipeline where         toHeaders@@ -104,33 +103,33 @@ instance ToQuery CreatePipeline where         toQuery = const mempty --- | Represents the output of a create pipeline action.+-- | Represents the output of a CreatePipeline action. -- -- -- -- /See:/ 'createPipelineResponse' smart constructor. data CreatePipelineResponse = CreatePipelineResponse'-    { _cprsPipeline       :: !(Maybe PipelineDeclaration)-    , _cprsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _cprsPipeline       :: !(Maybe PipelineDeclaration)+  , _cprsResponseStatus :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'CreatePipelineResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: ----- * 'cprsPipeline' - Undocumented member.+-- * 'cprsPipeline' - Represents the structure of actions and stages to be performed in the pipeline. -- -- * 'cprsResponseStatus' - -- | The response status code. createPipelineResponse     :: Int -- ^ 'cprsResponseStatus'     -> CreatePipelineResponse createPipelineResponse pResponseStatus_ =-    CreatePipelineResponse'-    { _cprsPipeline = Nothing-    , _cprsResponseStatus = pResponseStatus_-    }+  CreatePipelineResponse'+  {_cprsPipeline = Nothing, _cprsResponseStatus = pResponseStatus_} --- | Undocumented member.++-- | Represents the structure of actions and stages to be performed in the pipeline. cprsPipeline :: Lens' CreatePipelineResponse (Maybe PipelineDeclaration) cprsPipeline = lens _cprsPipeline (\ s a -> s{_cprsPipeline = a}); @@ -138,4 +137,4 @@ cprsResponseStatus :: Lens' CreatePipelineResponse Int cprsResponseStatus = lens _cprsResponseStatus (\ s a -> s{_cprsResponseStatus = a}); -instance NFData CreatePipelineResponse+instance NFData CreatePipelineResponse where
gen/Network/AWS/CodePipeline/DeleteCustomActionType.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.DeleteCustomActionType--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -38,24 +38,25 @@     , DeleteCustomActionTypeResponse     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a delete custom action operation. The custom action will be marked as deleted.+-- | Represents the input of a DeleteCustomActionType operation. The custom action will be marked as deleted. -- -- -- -- /See:/ 'deleteCustomActionType' smart constructor. data DeleteCustomActionType = DeleteCustomActionType'-    { _dcatCategory :: !ActionCategory-    , _dcatProvider :: !Text-    , _dcatVersion  :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _dcatCategory :: !ActionCategory+  , _dcatProvider :: !Text+  , _dcatVersion  :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'DeleteCustomActionType' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -71,12 +72,13 @@     -> Text -- ^ 'dcatVersion'     -> DeleteCustomActionType deleteCustomActionType pCategory_ pProvider_ pVersion_ =-    DeleteCustomActionType'-    { _dcatCategory = pCategory_-    , _dcatProvider = pProvider_-    , _dcatVersion = pVersion_-    }+  DeleteCustomActionType'+  { _dcatCategory = pCategory_+  , _dcatProvider = pProvider_+  , _dcatVersion = pVersion_+  } + -- | The category of the custom action that you want to delete, such as source or deploy. dcatCategory :: Lens' DeleteCustomActionType ActionCategory dcatCategory = lens _dcatCategory (\ s a -> s{_dcatCategory = a});@@ -96,9 +98,9 @@         response           = receiveNull DeleteCustomActionTypeResponse' -instance Hashable DeleteCustomActionType+instance Hashable DeleteCustomActionType where -instance NFData DeleteCustomActionType+instance NFData DeleteCustomActionType where  instance ToHeaders DeleteCustomActionType where         toHeaders@@ -126,13 +128,15 @@  -- | /See:/ 'deleteCustomActionTypeResponse' smart constructor. data DeleteCustomActionTypeResponse =-    DeleteCustomActionTypeResponse'-    deriving (Eq,Read,Show,Data,Typeable,Generic)+  DeleteCustomActionTypeResponse'+  deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'DeleteCustomActionTypeResponse' with the minimum fields required to make a request. -- deleteCustomActionTypeResponse     :: DeleteCustomActionTypeResponse deleteCustomActionTypeResponse = DeleteCustomActionTypeResponse' -instance NFData DeleteCustomActionTypeResponse++instance NFData DeleteCustomActionTypeResponse where
gen/Network/AWS/CodePipeline/DeletePipeline.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.DeletePipeline--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -34,22 +34,23 @@     , DeletePipelineResponse     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a delete pipeline action.+-- | Represents the input of a DeletePipeline action. -- -- -- -- /See:/ 'deletePipeline' smart constructor. newtype DeletePipeline = DeletePipeline'-    { _dpName :: Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _dpName :: Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'DeletePipeline' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -58,11 +59,9 @@ deletePipeline     :: Text -- ^ 'dpName'     -> DeletePipeline-deletePipeline pName_ =-    DeletePipeline'-    { _dpName = pName_-    }+deletePipeline pName_ = DeletePipeline' {_dpName = pName_} + -- | The name of the pipeline to be deleted. dpName :: Lens' DeletePipeline Text dpName = lens _dpName (\ s a -> s{_dpName = a});@@ -72,9 +71,9 @@         request = postJSON codePipeline         response = receiveNull DeletePipelineResponse' -instance Hashable DeletePipeline+instance Hashable DeletePipeline where -instance NFData DeletePipeline+instance NFData DeletePipeline where  instance ToHeaders DeletePipeline where         toHeaders@@ -98,13 +97,15 @@  -- | /See:/ 'deletePipelineResponse' smart constructor. data DeletePipelineResponse =-    DeletePipelineResponse'-    deriving (Eq,Read,Show,Data,Typeable,Generic)+  DeletePipelineResponse'+  deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'DeletePipelineResponse' with the minimum fields required to make a request. -- deletePipelineResponse     :: DeletePipelineResponse deletePipelineResponse = DeletePipelineResponse' -instance NFData DeletePipelineResponse++instance NFData DeletePipelineResponse where
gen/Network/AWS/CodePipeline/DisableStageTransition.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.DisableStageTransition--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -37,25 +37,26 @@     , DisableStageTransitionResponse     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a disable stage transition input action.+-- | Represents the input of a DisableStageTransition action. -- -- -- -- /See:/ 'disableStageTransition' smart constructor. data DisableStageTransition = DisableStageTransition'-    { _dstPipelineName   :: !Text-    , _dstStageName      :: !Text-    , _dstTransitionType :: !StageTransitionType-    , _dstReason         :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _dstPipelineName   :: !Text+  , _dstStageName      :: !Text+  , _dstTransitionType :: !StageTransitionType+  , _dstReason         :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'DisableStageTransition' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -74,13 +75,14 @@     -> Text -- ^ 'dstReason'     -> DisableStageTransition disableStageTransition pPipelineName_ pStageName_ pTransitionType_ pReason_ =-    DisableStageTransition'-    { _dstPipelineName = pPipelineName_-    , _dstStageName = pStageName_-    , _dstTransitionType = pTransitionType_-    , _dstReason = pReason_-    }+  DisableStageTransition'+  { _dstPipelineName = pPipelineName_+  , _dstStageName = pStageName_+  , _dstTransitionType = pTransitionType_+  , _dstReason = pReason_+  } + -- | The name of the pipeline in which you want to disable the flow of artifacts from one stage to another. dstPipelineName :: Lens' DisableStageTransition Text dstPipelineName = lens _dstPipelineName (\ s a -> s{_dstPipelineName = a});@@ -104,9 +106,9 @@         response           = receiveNull DisableStageTransitionResponse' -instance Hashable DisableStageTransition+instance Hashable DisableStageTransition where -instance NFData DisableStageTransition+instance NFData DisableStageTransition where  instance ToHeaders DisableStageTransition where         toHeaders@@ -135,13 +137,15 @@  -- | /See:/ 'disableStageTransitionResponse' smart constructor. data DisableStageTransitionResponse =-    DisableStageTransitionResponse'-    deriving (Eq,Read,Show,Data,Typeable,Generic)+  DisableStageTransitionResponse'+  deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'DisableStageTransitionResponse' with the minimum fields required to make a request. -- disableStageTransitionResponse     :: DisableStageTransitionResponse disableStageTransitionResponse = DisableStageTransitionResponse' -instance NFData DisableStageTransitionResponse++instance NFData DisableStageTransitionResponse where
gen/Network/AWS/CodePipeline/EnableStageTransition.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.EnableStageTransition--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -36,24 +36,25 @@     , EnableStageTransitionResponse     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of an enable stage transition action.+-- | Represents the input of an EnableStageTransition action. -- -- -- -- /See:/ 'enableStageTransition' smart constructor. data EnableStageTransition = EnableStageTransition'-    { _estPipelineName   :: !Text-    , _estStageName      :: !Text-    , _estTransitionType :: !StageTransitionType-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _estPipelineName   :: !Text+  , _estStageName      :: !Text+  , _estTransitionType :: !StageTransitionType+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'EnableStageTransition' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -69,12 +70,13 @@     -> StageTransitionType -- ^ 'estTransitionType'     -> EnableStageTransition enableStageTransition pPipelineName_ pStageName_ pTransitionType_ =-    EnableStageTransition'-    { _estPipelineName = pPipelineName_-    , _estStageName = pStageName_-    , _estTransitionType = pTransitionType_-    }+  EnableStageTransition'+  { _estPipelineName = pPipelineName_+  , _estStageName = pStageName_+  , _estTransitionType = pTransitionType_+  } + -- | The name of the pipeline in which you want to enable the flow of artifacts from one stage to another. estPipelineName :: Lens' EnableStageTransition Text estPipelineName = lens _estPipelineName (\ s a -> s{_estPipelineName = a});@@ -93,9 +95,9 @@         request = postJSON codePipeline         response = receiveNull EnableStageTransitionResponse' -instance Hashable EnableStageTransition+instance Hashable EnableStageTransition where -instance NFData EnableStageTransition+instance NFData EnableStageTransition where  instance ToHeaders EnableStageTransition where         toHeaders@@ -123,13 +125,15 @@  -- | /See:/ 'enableStageTransitionResponse' smart constructor. data EnableStageTransitionResponse =-    EnableStageTransitionResponse'-    deriving (Eq,Read,Show,Data,Typeable,Generic)+  EnableStageTransitionResponse'+  deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'EnableStageTransitionResponse' with the minimum fields required to make a request. -- enableStageTransitionResponse     :: EnableStageTransitionResponse enableStageTransitionResponse = EnableStageTransitionResponse' -instance NFData EnableStageTransitionResponse++instance NFData EnableStageTransitionResponse where
gen/Network/AWS/CodePipeline/GetJobDetails.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.GetJobDetails--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -39,22 +39,23 @@     , gjdrsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a get job details action.+-- | Represents the input of a GetJobDetails action. -- -- -- -- /See:/ 'getJobDetails' smart constructor. newtype GetJobDetails = GetJobDetails'-    { _gjdJobId :: Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gjdJobId :: Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetJobDetails' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -63,11 +64,9 @@ getJobDetails     :: Text -- ^ 'gjdJobId'     -> GetJobDetails-getJobDetails pJobId_ =-    GetJobDetails'-    { _gjdJobId = pJobId_-    }+getJobDetails pJobId_ = GetJobDetails' {_gjdJobId = pJobId_} + -- | The unique system-generated ID for the job. gjdJobId :: Lens' GetJobDetails Text gjdJobId = lens _gjdJobId (\ s a -> s{_gjdJobId = a});@@ -81,9 +80,9 @@                  GetJobDetailsResponse' <$>                    (x .?> "jobDetails") <*> (pure (fromEnum s))) -instance Hashable GetJobDetails+instance Hashable GetJobDetails where -instance NFData GetJobDetails+instance NFData GetJobDetails where  instance ToHeaders GetJobDetails where         toHeaders@@ -105,16 +104,17 @@ instance ToQuery GetJobDetails where         toQuery = const mempty --- | Represents the output of a get job details action.+-- | Represents the output of a GetJobDetails action. -- -- -- -- /See:/ 'getJobDetailsResponse' smart constructor. data GetJobDetailsResponse = GetJobDetailsResponse'-    { _gjdrsJobDetails     :: !(Maybe JobDetails)-    , _gjdrsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gjdrsJobDetails     :: !(Maybe JobDetails)+  , _gjdrsResponseStatus :: !Int+  } deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetJobDetailsResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -126,11 +126,10 @@     :: Int -- ^ 'gjdrsResponseStatus'     -> GetJobDetailsResponse getJobDetailsResponse pResponseStatus_ =-    GetJobDetailsResponse'-    { _gjdrsJobDetails = Nothing-    , _gjdrsResponseStatus = pResponseStatus_-    }+  GetJobDetailsResponse'+  {_gjdrsJobDetails = Nothing, _gjdrsResponseStatus = pResponseStatus_} + -- | The details of the job. gjdrsJobDetails :: Lens' GetJobDetailsResponse (Maybe JobDetails) gjdrsJobDetails = lens _gjdrsJobDetails (\ s a -> s{_gjdrsJobDetails = a});@@ -139,4 +138,4 @@ gjdrsResponseStatus :: Lens' GetJobDetailsResponse Int gjdrsResponseStatus = lens _gjdrsResponseStatus (\ s a -> s{_gjdrsResponseStatus = a}); -instance NFData GetJobDetailsResponse+instance NFData GetJobDetailsResponse where
gen/Network/AWS/CodePipeline/GetPipeline.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.GetPipeline--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -35,26 +35,28 @@     , GetPipelineResponse     -- * Response Lenses     , gprsPipeline+    , gprsMetadata     , gprsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a get pipeline action.+-- | Represents the input of a GetPipeline action. -- -- -- -- /See:/ 'getPipeline' smart constructor. data GetPipeline = GetPipeline'-    { _gpVersion :: !(Maybe Nat)-    , _gpName    :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gpVersion :: !(Maybe Nat)+  , _gpName    :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetPipeline' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -65,12 +67,9 @@ getPipeline     :: Text -- ^ 'gpName'     -> GetPipeline-getPipeline pName_ =-    GetPipeline'-    { _gpVersion = Nothing-    , _gpName = pName_-    }+getPipeline pName_ = GetPipeline' {_gpVersion = Nothing, _gpName = pName_} + -- | The version number of the pipeline. If you do not specify a version, defaults to the most current version. gpVersion :: Lens' GetPipeline (Maybe Natural) gpVersion = lens _gpVersion (\ s a -> s{_gpVersion = a}) . mapping _Nat;@@ -86,11 +85,12 @@           = receiveJSON               (\ s h x ->                  GetPipelineResponse' <$>-                   (x .?> "pipeline") <*> (pure (fromEnum s)))+                   (x .?> "pipeline") <*> (x .?> "metadata") <*>+                     (pure (fromEnum s))) -instance Hashable GetPipeline+instance Hashable GetPipeline where -instance NFData GetPipeline+instance NFData GetPipeline where  instance ToHeaders GetPipeline where         toHeaders@@ -114,38 +114,48 @@ instance ToQuery GetPipeline where         toQuery = const mempty --- | Represents the output of a get pipeline action.+-- | Represents the output of a GetPipeline action. -- -- -- -- /See:/ 'getPipelineResponse' smart constructor. data GetPipelineResponse = GetPipelineResponse'-    { _gprsPipeline       :: !(Maybe PipelineDeclaration)-    , _gprsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gprsPipeline       :: !(Maybe PipelineDeclaration)+  , _gprsMetadata       :: !(Maybe PipelineMetadata)+  , _gprsResponseStatus :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetPipelineResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: ----- * 'gprsPipeline' - Undocumented member.+-- * 'gprsPipeline' - Represents the structure of actions and stages to be performed in the pipeline. --+-- * 'gprsMetadata' - Represents the pipeline metadata information returned as part of the output of a GetPipeline action.+-- -- * 'gprsResponseStatus' - -- | The response status code. getPipelineResponse     :: Int -- ^ 'gprsResponseStatus'     -> GetPipelineResponse getPipelineResponse pResponseStatus_ =-    GetPipelineResponse'-    { _gprsPipeline = Nothing-    , _gprsResponseStatus = pResponseStatus_-    }+  GetPipelineResponse'+  { _gprsPipeline = Nothing+  , _gprsMetadata = Nothing+  , _gprsResponseStatus = pResponseStatus_+  } --- | Undocumented member.++-- | Represents the structure of actions and stages to be performed in the pipeline. gprsPipeline :: Lens' GetPipelineResponse (Maybe PipelineDeclaration) gprsPipeline = lens _gprsPipeline (\ s a -> s{_gprsPipeline = a}); +-- | Represents the pipeline metadata information returned as part of the output of a GetPipeline action.+gprsMetadata :: Lens' GetPipelineResponse (Maybe PipelineMetadata)+gprsMetadata = lens _gprsMetadata (\ s a -> s{_gprsMetadata = a});+ -- | -- | The response status code. gprsResponseStatus :: Lens' GetPipelineResponse Int gprsResponseStatus = lens _gprsResponseStatus (\ s a -> s{_gprsResponseStatus = a}); -instance NFData GetPipelineResponse+instance NFData GetPipelineResponse where
gen/Network/AWS/CodePipeline/GetPipelineExecution.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.GetPipelineExecution--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -38,23 +38,24 @@     , gpersResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a get pipeline execution action.+-- | Represents the input of a GetPipelineExecution action. -- -- -- -- /See:/ 'getPipelineExecution' smart constructor. data GetPipelineExecution = GetPipelineExecution'-    { _gpePipelineName        :: !Text-    , _gpePipelineExecutionId :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gpePipelineName        :: !Text+  , _gpePipelineExecutionId :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetPipelineExecution' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -67,11 +68,12 @@     -> Text -- ^ 'gpePipelineExecutionId'     -> GetPipelineExecution getPipelineExecution pPipelineName_ pPipelineExecutionId_ =-    GetPipelineExecution'-    { _gpePipelineName = pPipelineName_-    , _gpePipelineExecutionId = pPipelineExecutionId_-    }+  GetPipelineExecution'+  { _gpePipelineName = pPipelineName_+  , _gpePipelineExecutionId = pPipelineExecutionId_+  } + -- | The name of the pipeline about which you want to get execution details. gpePipelineName :: Lens' GetPipelineExecution Text gpePipelineName = lens _gpePipelineName (\ s a -> s{_gpePipelineName = a});@@ -90,9 +92,9 @@                  GetPipelineExecutionResponse' <$>                    (x .?> "pipelineExecution") <*> (pure (fromEnum s))) -instance Hashable GetPipelineExecution+instance Hashable GetPipelineExecution where -instance NFData GetPipelineExecution+instance NFData GetPipelineExecution where  instance ToHeaders GetPipelineExecution where         toHeaders@@ -118,16 +120,17 @@ instance ToQuery GetPipelineExecution where         toQuery = const mempty --- | Represents the output of a get pipeline execution action.+-- | Represents the output of a GetPipelineExecution action. -- -- -- -- /See:/ 'getPipelineExecutionResponse' smart constructor. data GetPipelineExecutionResponse = GetPipelineExecutionResponse'-    { _gpersPipelineExecution :: !(Maybe PipelineExecution)-    , _gpersResponseStatus    :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gpersPipelineExecution :: !(Maybe PipelineExecution)+  , _gpersResponseStatus    :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetPipelineExecutionResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -139,11 +142,10 @@     :: Int -- ^ 'gpersResponseStatus'     -> GetPipelineExecutionResponse getPipelineExecutionResponse pResponseStatus_ =-    GetPipelineExecutionResponse'-    { _gpersPipelineExecution = Nothing-    , _gpersResponseStatus = pResponseStatus_-    }+  GetPipelineExecutionResponse'+  {_gpersPipelineExecution = Nothing, _gpersResponseStatus = pResponseStatus_} + -- | Represents information about the execution of a pipeline. gpersPipelineExecution :: Lens' GetPipelineExecutionResponse (Maybe PipelineExecution) gpersPipelineExecution = lens _gpersPipelineExecution (\ s a -> s{_gpersPipelineExecution = a});@@ -152,4 +154,4 @@ gpersResponseStatus :: Lens' GetPipelineExecutionResponse Int gpersResponseStatus = lens _gpersResponseStatus (\ s a -> s{_gpersResponseStatus = a}); -instance NFData GetPipelineExecutionResponse+instance NFData GetPipelineExecutionResponse where
gen/Network/AWS/CodePipeline/GetPipelineState.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.GetPipelineState--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -41,22 +41,23 @@     , gpsrsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a get pipeline state action.+-- | Represents the input of a GetPipelineState action. -- -- -- -- /See:/ 'getPipelineState' smart constructor. newtype GetPipelineState = GetPipelineState'-    { _gpsName :: Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gpsName :: Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetPipelineState' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -65,11 +66,9 @@ getPipelineState     :: Text -- ^ 'gpsName'     -> GetPipelineState-getPipelineState pName_ =-    GetPipelineState'-    { _gpsName = pName_-    }+getPipelineState pName_ = GetPipelineState' {_gpsName = pName_} + -- | The name of the pipeline about which you want to get information. gpsName :: Lens' GetPipelineState Text gpsName = lens _gpsName (\ s a -> s{_gpsName = a});@@ -87,9 +86,9 @@                      <*> (x .?> "updated")                      <*> (pure (fromEnum s))) -instance Hashable GetPipelineState+instance Hashable GetPipelineState where -instance NFData GetPipelineState+instance NFData GetPipelineState where  instance ToHeaders GetPipelineState where         toHeaders@@ -111,20 +110,21 @@ instance ToQuery GetPipelineState where         toQuery = const mempty --- | Represents the output of a get pipeline state action.+-- | Represents the output of a GetPipelineState action. -- -- -- -- /See:/ 'getPipelineStateResponse' smart constructor. data GetPipelineStateResponse = GetPipelineStateResponse'-    { _gpsrsPipelineName    :: !(Maybe Text)-    , _gpsrsCreated         :: !(Maybe POSIX)-    , _gpsrsStageStates     :: !(Maybe [StageState])-    , _gpsrsPipelineVersion :: !(Maybe Nat)-    , _gpsrsUpdated         :: !(Maybe POSIX)-    , _gpsrsResponseStatus  :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gpsrsPipelineName    :: !(Maybe Text)+  , _gpsrsCreated         :: !(Maybe POSIX)+  , _gpsrsStageStates     :: !(Maybe [StageState])+  , _gpsrsPipelineVersion :: !(Maybe Nat)+  , _gpsrsUpdated         :: !(Maybe POSIX)+  , _gpsrsResponseStatus  :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetPipelineStateResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -144,15 +144,16 @@     :: Int -- ^ 'gpsrsResponseStatus'     -> GetPipelineStateResponse getPipelineStateResponse pResponseStatus_ =-    GetPipelineStateResponse'-    { _gpsrsPipelineName = Nothing-    , _gpsrsCreated = Nothing-    , _gpsrsStageStates = Nothing-    , _gpsrsPipelineVersion = Nothing-    , _gpsrsUpdated = Nothing-    , _gpsrsResponseStatus = pResponseStatus_-    }+  GetPipelineStateResponse'+  { _gpsrsPipelineName = Nothing+  , _gpsrsCreated = Nothing+  , _gpsrsStageStates = Nothing+  , _gpsrsPipelineVersion = Nothing+  , _gpsrsUpdated = Nothing+  , _gpsrsResponseStatus = pResponseStatus_+  } + -- | The name of the pipeline for which you want to get the state. gpsrsPipelineName :: Lens' GetPipelineStateResponse (Maybe Text) gpsrsPipelineName = lens _gpsrsPipelineName (\ s a -> s{_gpsrsPipelineName = a});@@ -177,4 +178,4 @@ gpsrsResponseStatus :: Lens' GetPipelineStateResponse Int gpsrsResponseStatus = lens _gpsrsResponseStatus (\ s a -> s{_gpsrsResponseStatus = a}); -instance NFData GetPipelineStateResponse+instance NFData GetPipelineStateResponse where
gen/Network/AWS/CodePipeline/GetThirdPartyJobDetails.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.GetThirdPartyJobDetails--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -40,23 +40,24 @@     , gtpjdrsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a get third party job details action.+-- | Represents the input of a GetThirdPartyJobDetails action. -- -- -- -- /See:/ 'getThirdPartyJobDetails' smart constructor. data GetThirdPartyJobDetails = GetThirdPartyJobDetails'-    { _gtpjdJobId       :: !Text-    , _gtpjdClientToken :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gtpjdJobId       :: !Text+  , _gtpjdClientToken :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetThirdPartyJobDetails' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -69,11 +70,10 @@     -> Text -- ^ 'gtpjdClientToken'     -> GetThirdPartyJobDetails getThirdPartyJobDetails pJobId_ pClientToken_ =-    GetThirdPartyJobDetails'-    { _gtpjdJobId = pJobId_-    , _gtpjdClientToken = pClientToken_-    }+  GetThirdPartyJobDetails'+  {_gtpjdJobId = pJobId_, _gtpjdClientToken = pClientToken_} + -- | The unique system-generated ID used for identifying the job. gtpjdJobId :: Lens' GetThirdPartyJobDetails Text gtpjdJobId = lens _gtpjdJobId (\ s a -> s{_gtpjdJobId = a});@@ -92,9 +92,9 @@                  GetThirdPartyJobDetailsResponse' <$>                    (x .?> "jobDetails") <*> (pure (fromEnum s))) -instance Hashable GetThirdPartyJobDetails+instance Hashable GetThirdPartyJobDetails where -instance NFData GetThirdPartyJobDetails+instance NFData GetThirdPartyJobDetails where  instance ToHeaders GetThirdPartyJobDetails where         toHeaders@@ -119,16 +119,17 @@ instance ToQuery GetThirdPartyJobDetails where         toQuery = const mempty --- | Represents the output of a get third party job details action.+-- | Represents the output of a GetThirdPartyJobDetails action. -- -- -- -- /See:/ 'getThirdPartyJobDetailsResponse' smart constructor. data GetThirdPartyJobDetailsResponse = GetThirdPartyJobDetailsResponse'-    { _gtpjdrsJobDetails     :: !(Maybe ThirdPartyJobDetails)-    , _gtpjdrsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _gtpjdrsJobDetails     :: !(Maybe ThirdPartyJobDetails)+  , _gtpjdrsResponseStatus :: !Int+  } deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'GetThirdPartyJobDetailsResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -140,11 +141,10 @@     :: Int -- ^ 'gtpjdrsResponseStatus'     -> GetThirdPartyJobDetailsResponse getThirdPartyJobDetailsResponse pResponseStatus_ =-    GetThirdPartyJobDetailsResponse'-    { _gtpjdrsJobDetails = Nothing-    , _gtpjdrsResponseStatus = pResponseStatus_-    }+  GetThirdPartyJobDetailsResponse'+  {_gtpjdrsJobDetails = Nothing, _gtpjdrsResponseStatus = pResponseStatus_} + -- | The details of the job, including any protected values defined for the job. gtpjdrsJobDetails :: Lens' GetThirdPartyJobDetailsResponse (Maybe ThirdPartyJobDetails) gtpjdrsJobDetails = lens _gtpjdrsJobDetails (\ s a -> s{_gtpjdrsJobDetails = a});@@ -153,4 +153,4 @@ gtpjdrsResponseStatus :: Lens' GetThirdPartyJobDetailsResponse Int gtpjdrsResponseStatus = lens _gtpjdrsResponseStatus (\ s a -> s{_gtpjdrsResponseStatus = a}); -instance NFData GetThirdPartyJobDetailsResponse+instance NFData GetThirdPartyJobDetailsResponse where
gen/Network/AWS/CodePipeline/ListActionTypes.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.ListActionTypes--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -39,23 +39,24 @@     , latrsActionTypes     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a list action types action.+-- | Represents the input of a ListActionTypes action. -- -- -- -- /See:/ 'listActionTypes' smart constructor. data ListActionTypes = ListActionTypes'-    { _latActionOwnerFilter :: !(Maybe ActionOwner)-    , _latNextToken         :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _latActionOwnerFilter :: !(Maybe ActionOwner)+  , _latNextToken         :: !(Maybe Text)+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'ListActionTypes' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -66,11 +67,9 @@ listActionTypes     :: ListActionTypes listActionTypes =-    ListActionTypes'-    { _latActionOwnerFilter = Nothing-    , _latNextToken = Nothing-    }+  ListActionTypes' {_latActionOwnerFilter = Nothing, _latNextToken = Nothing} + -- | Filters the list of action types to those created by a specified entity. latActionOwnerFilter :: Lens' ListActionTypes (Maybe ActionOwner) latActionOwnerFilter = lens _latActionOwnerFilter (\ s a -> s{_latActionOwnerFilter = a});@@ -89,9 +88,9 @@                    (x .?> "nextToken") <*> (pure (fromEnum s)) <*>                      (x .?> "actionTypes" .!@ mempty)) -instance Hashable ListActionTypes+instance Hashable ListActionTypes where -instance NFData ListActionTypes+instance NFData ListActionTypes where  instance ToHeaders ListActionTypes where         toHeaders@@ -116,17 +115,18 @@ instance ToQuery ListActionTypes where         toQuery = const mempty --- | Represents the output of a list action types action.+-- | Represents the output of a ListActionTypes action. -- -- -- -- /See:/ 'listActionTypesResponse' smart constructor. data ListActionTypesResponse = ListActionTypesResponse'-    { _latrsNextToken      :: !(Maybe Text)-    , _latrsResponseStatus :: !Int-    , _latrsActionTypes    :: ![ActionType]-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _latrsNextToken      :: !(Maybe Text)+  , _latrsResponseStatus :: !Int+  , _latrsActionTypes    :: ![ActionType]+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'ListActionTypesResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -140,12 +140,13 @@     :: Int -- ^ 'latrsResponseStatus'     -> ListActionTypesResponse listActionTypesResponse pResponseStatus_ =-    ListActionTypesResponse'-    { _latrsNextToken = Nothing-    , _latrsResponseStatus = pResponseStatus_-    , _latrsActionTypes = mempty-    }+  ListActionTypesResponse'+  { _latrsNextToken = Nothing+  , _latrsResponseStatus = pResponseStatus_+  , _latrsActionTypes = mempty+  } + -- | If the amount of returned information is significantly large, an identifier is also returned which can be used in a subsequent list action types call to return the next set of action types in the list. latrsNextToken :: Lens' ListActionTypesResponse (Maybe Text) latrsNextToken = lens _latrsNextToken (\ s a -> s{_latrsNextToken = a});@@ -158,4 +159,4 @@ latrsActionTypes :: Lens' ListActionTypesResponse [ActionType] latrsActionTypes = lens _latrsActionTypes (\ s a -> s{_latrsActionTypes = a}) . _Coerce; -instance NFData ListActionTypesResponse+instance NFData ListActionTypesResponse where
+ gen/Network/AWS/CodePipeline/ListPipelineExecutions.hs view
@@ -0,0 +1,178 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE OverloadedStrings  #-}+{-# LANGUAGE RecordWildCards    #-}+{-# LANGUAGE TypeFamilies       #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds   #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Network.AWS.CodePipeline.ListPipelineExecutions+-- Copyright   : (c) 2013-2017 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)+--+-- Gets a summary of the most recent executions for a pipeline.+--+--+module Network.AWS.CodePipeline.ListPipelineExecutions+    (+    -- * Creating a Request+      listPipelineExecutions+    , ListPipelineExecutions+    -- * Request Lenses+    , lpeNextToken+    , lpeMaxResults+    , lpePipelineName++    -- * Destructuring the Response+    , listPipelineExecutionsResponse+    , ListPipelineExecutionsResponse+    -- * Response Lenses+    , lpersNextToken+    , lpersPipelineExecutionSummaries+    , lpersResponseStatus+    ) where++import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents the input of a ListPipelineExecutions action.+--+--+--+-- /See:/ 'listPipelineExecutions' smart constructor.+data ListPipelineExecutions = ListPipelineExecutions'+  { _lpeNextToken    :: !(Maybe Text)+  , _lpeMaxResults   :: !(Maybe Nat)+  , _lpePipelineName :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListPipelineExecutions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lpeNextToken' - The token that was returned from the previous ListPipelineExecutions call, which can be used to return the next set of pipeline executions in the list.+--+-- * 'lpeMaxResults' - The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned nextToken value. The available pipeline execution history is limited to the most recent 12 months, based on pipeline execution start times. Default value is 100.+--+-- * 'lpePipelineName' - The name of the pipeline for which you want to get execution summary information.+listPipelineExecutions+    :: Text -- ^ 'lpePipelineName'+    -> ListPipelineExecutions+listPipelineExecutions pPipelineName_ =+  ListPipelineExecutions'+  { _lpeNextToken = Nothing+  , _lpeMaxResults = Nothing+  , _lpePipelineName = pPipelineName_+  }+++-- | The token that was returned from the previous ListPipelineExecutions call, which can be used to return the next set of pipeline executions in the list.+lpeNextToken :: Lens' ListPipelineExecutions (Maybe Text)+lpeNextToken = lens _lpeNextToken (\ s a -> s{_lpeNextToken = a});++-- | The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned nextToken value. The available pipeline execution history is limited to the most recent 12 months, based on pipeline execution start times. Default value is 100.+lpeMaxResults :: Lens' ListPipelineExecutions (Maybe Natural)+lpeMaxResults = lens _lpeMaxResults (\ s a -> s{_lpeMaxResults = a}) . mapping _Nat;++-- | The name of the pipeline for which you want to get execution summary information.+lpePipelineName :: Lens' ListPipelineExecutions Text+lpePipelineName = lens _lpePipelineName (\ s a -> s{_lpePipelineName = a});++instance AWSRequest ListPipelineExecutions where+        type Rs ListPipelineExecutions =+             ListPipelineExecutionsResponse+        request = postJSON codePipeline+        response+          = receiveJSON+              (\ s h x ->+                 ListPipelineExecutionsResponse' <$>+                   (x .?> "nextToken") <*>+                     (x .?> "pipelineExecutionSummaries" .!@ mempty)+                     <*> (pure (fromEnum s)))++instance Hashable ListPipelineExecutions where++instance NFData ListPipelineExecutions where++instance ToHeaders ListPipelineExecutions where+        toHeaders+          = const+              (mconcat+                 ["X-Amz-Target" =#+                    ("CodePipeline_20150709.ListPipelineExecutions" ::+                       ByteString),+                  "Content-Type" =#+                    ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListPipelineExecutions where+        toJSON ListPipelineExecutions'{..}+          = object+              (catMaybes+                 [("nextToken" .=) <$> _lpeNextToken,+                  ("maxResults" .=) <$> _lpeMaxResults,+                  Just ("pipelineName" .= _lpePipelineName)])++instance ToPath ListPipelineExecutions where+        toPath = const "/"++instance ToQuery ListPipelineExecutions where+        toQuery = const mempty++-- | Represents the output of a ListPipelineExecutions action.+--+--+--+-- /See:/ 'listPipelineExecutionsResponse' smart constructor.+data ListPipelineExecutionsResponse = ListPipelineExecutionsResponse'+  { _lpersNextToken                  :: !(Maybe Text)+  , _lpersPipelineExecutionSummaries :: !(Maybe [PipelineExecutionSummary])+  , _lpersResponseStatus             :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListPipelineExecutionsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lpersNextToken' - A token that can be used in the next ListPipelineExecutions call. To view all items in the list, continue to call this operation with each subsequent token until no more nextToken values are returned.+--+-- * 'lpersPipelineExecutionSummaries' - A list of executions in the history of a pipeline.+--+-- * 'lpersResponseStatus' - -- | The response status code.+listPipelineExecutionsResponse+    :: Int -- ^ 'lpersResponseStatus'+    -> ListPipelineExecutionsResponse+listPipelineExecutionsResponse pResponseStatus_ =+  ListPipelineExecutionsResponse'+  { _lpersNextToken = Nothing+  , _lpersPipelineExecutionSummaries = Nothing+  , _lpersResponseStatus = pResponseStatus_+  }+++-- | A token that can be used in the next ListPipelineExecutions call. To view all items in the list, continue to call this operation with each subsequent token until no more nextToken values are returned.+lpersNextToken :: Lens' ListPipelineExecutionsResponse (Maybe Text)+lpersNextToken = lens _lpersNextToken (\ s a -> s{_lpersNextToken = a});++-- | A list of executions in the history of a pipeline.+lpersPipelineExecutionSummaries :: Lens' ListPipelineExecutionsResponse [PipelineExecutionSummary]+lpersPipelineExecutionSummaries = lens _lpersPipelineExecutionSummaries (\ s a -> s{_lpersPipelineExecutionSummaries = a}) . _Default . _Coerce;++-- | -- | The response status code.+lpersResponseStatus :: Lens' ListPipelineExecutionsResponse Int+lpersResponseStatus = lens _lpersResponseStatus (\ s a -> s{_lpersResponseStatus = a});++instance NFData ListPipelineExecutionsResponse where
gen/Network/AWS/CodePipeline/ListPipelines.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.ListPipelines--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -38,22 +38,23 @@     , lprsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a list pipelines action.+-- | Represents the input of a ListPipelines action. -- -- -- -- /See:/ 'listPipelines' smart constructor. newtype ListPipelines = ListPipelines'-    { _lpNextToken :: Maybe Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _lpNextToken :: Maybe Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'ListPipelines' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -61,11 +62,9 @@ -- * 'lpNextToken' - An identifier that was returned from the previous list pipelines call, which can be used to return the next set of pipelines in the list. listPipelines     :: ListPipelines-listPipelines =-    ListPipelines'-    { _lpNextToken = Nothing-    }+listPipelines = ListPipelines' {_lpNextToken = Nothing} + -- | An identifier that was returned from the previous list pipelines call, which can be used to return the next set of pipelines in the list. lpNextToken :: Lens' ListPipelines (Maybe Text) lpNextToken = lens _lpNextToken (\ s a -> s{_lpNextToken = a});@@ -81,9 +80,9 @@                      (x .?> "nextToken")                      <*> (pure (fromEnum s))) -instance Hashable ListPipelines+instance Hashable ListPipelines where -instance NFData ListPipelines+instance NFData ListPipelines where  instance ToHeaders ListPipelines where         toHeaders@@ -106,17 +105,18 @@ instance ToQuery ListPipelines where         toQuery = const mempty --- | Represents the output of a list pipelines action.+-- | Represents the output of a ListPipelines action. -- -- -- -- /See:/ 'listPipelinesResponse' smart constructor. data ListPipelinesResponse = ListPipelinesResponse'-    { _lprsPipelines      :: !(Maybe [PipelineSummary])-    , _lprsNextToken      :: !(Maybe Text)-    , _lprsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _lprsPipelines      :: !(Maybe [PipelineSummary])+  , _lprsNextToken      :: !(Maybe Text)+  , _lprsResponseStatus :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'ListPipelinesResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -130,12 +130,13 @@     :: Int -- ^ 'lprsResponseStatus'     -> ListPipelinesResponse listPipelinesResponse pResponseStatus_ =-    ListPipelinesResponse'-    { _lprsPipelines = Nothing-    , _lprsNextToken = Nothing-    , _lprsResponseStatus = pResponseStatus_-    }+  ListPipelinesResponse'+  { _lprsPipelines = Nothing+  , _lprsNextToken = Nothing+  , _lprsResponseStatus = pResponseStatus_+  } + -- | The list of pipelines. lprsPipelines :: Lens' ListPipelinesResponse [PipelineSummary] lprsPipelines = lens _lprsPipelines (\ s a -> s{_lprsPipelines = a}) . _Default . _Coerce;@@ -148,4 +149,4 @@ lprsResponseStatus :: Lens' ListPipelinesResponse Int lprsResponseStatus = lens _lprsResponseStatus (\ s a -> s{_lprsResponseStatus = a}); -instance NFData ListPipelinesResponse+instance NFData ListPipelinesResponse where
gen/Network/AWS/CodePipeline/PollForJobs.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.PollForJobs--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -41,24 +41,25 @@     , pfjrsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a poll for jobs action.+-- | Represents the input of a PollForJobs action. -- -- -- -- /See:/ 'pollForJobs' smart constructor. data PollForJobs = PollForJobs'-    { _pfjMaxBatchSize :: !(Maybe Nat)-    , _pfjQueryParam   :: !(Maybe (Map Text Text))-    , _pfjActionTypeId :: !ActionTypeId-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _pfjMaxBatchSize :: !(Maybe Nat)+  , _pfjQueryParam   :: !(Maybe (Map Text Text))+  , _pfjActionTypeId :: !ActionTypeId+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PollForJobs' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -67,17 +68,18 @@ -- -- * 'pfjQueryParam' - A map of property names and values. For an action type with no queryable properties, this value must be null or an empty map. For an action type with a queryable property, you must supply that property as a key in the map. Only jobs whose action configuration matches the mapped value will be returned. ----- * 'pfjActionTypeId' - Undocumented member.+-- * 'pfjActionTypeId' - Represents information about an action type. pollForJobs     :: ActionTypeId -- ^ 'pfjActionTypeId'     -> PollForJobs pollForJobs pActionTypeId_ =-    PollForJobs'-    { _pfjMaxBatchSize = Nothing-    , _pfjQueryParam = Nothing-    , _pfjActionTypeId = pActionTypeId_-    }+  PollForJobs'+  { _pfjMaxBatchSize = Nothing+  , _pfjQueryParam = Nothing+  , _pfjActionTypeId = pActionTypeId_+  } + -- | The maximum number of jobs to return in a poll for jobs call. pfjMaxBatchSize :: Lens' PollForJobs (Maybe Natural) pfjMaxBatchSize = lens _pfjMaxBatchSize (\ s a -> s{_pfjMaxBatchSize = a}) . mapping _Nat;@@ -86,7 +88,7 @@ pfjQueryParam :: Lens' PollForJobs (HashMap Text Text) pfjQueryParam = lens _pfjQueryParam (\ s a -> s{_pfjQueryParam = a}) . _Default . _Map; --- | Undocumented member.+-- | Represents information about an action type. pfjActionTypeId :: Lens' PollForJobs ActionTypeId pfjActionTypeId = lens _pfjActionTypeId (\ s a -> s{_pfjActionTypeId = a}); @@ -99,9 +101,9 @@                  PollForJobsResponse' <$>                    (x .?> "jobs" .!@ mempty) <*> (pure (fromEnum s))) -instance Hashable PollForJobs+instance Hashable PollForJobs where -instance NFData PollForJobs+instance NFData PollForJobs where  instance ToHeaders PollForJobs where         toHeaders@@ -126,16 +128,17 @@ instance ToQuery PollForJobs where         toQuery = const mempty --- | Represents the output of a poll for jobs action.+-- | Represents the output of a PollForJobs action. -- -- -- -- /See:/ 'pollForJobsResponse' smart constructor. data PollForJobsResponse = PollForJobsResponse'-    { _pfjrsJobs           :: !(Maybe [Job])-    , _pfjrsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _pfjrsJobs           :: !(Maybe [Job])+  , _pfjrsResponseStatus :: !Int+  } deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'PollForJobsResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -147,11 +150,10 @@     :: Int -- ^ 'pfjrsResponseStatus'     -> PollForJobsResponse pollForJobsResponse pResponseStatus_ =-    PollForJobsResponse'-    { _pfjrsJobs = Nothing-    , _pfjrsResponseStatus = pResponseStatus_-    }+  PollForJobsResponse'+  {_pfjrsJobs = Nothing, _pfjrsResponseStatus = pResponseStatus_} + -- | Information about the jobs to take action on. pfjrsJobs :: Lens' PollForJobsResponse [Job] pfjrsJobs = lens _pfjrsJobs (\ s a -> s{_pfjrsJobs = a}) . _Default . _Coerce;@@ -160,4 +162,4 @@ pfjrsResponseStatus :: Lens' PollForJobsResponse Int pfjrsResponseStatus = lens _pfjrsResponseStatus (\ s a -> s{_pfjrsResponseStatus = a}); -instance NFData PollForJobsResponse+instance NFData PollForJobsResponse where
gen/Network/AWS/CodePipeline/PollForThirdPartyJobs.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.PollForThirdPartyJobs--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -40,44 +40,44 @@     , pftpjrsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a poll for third party jobs action.+-- | Represents the input of a PollForThirdPartyJobs action. -- -- -- -- /See:/ 'pollForThirdPartyJobs' smart constructor. data PollForThirdPartyJobs = PollForThirdPartyJobs'-    { _pftpjMaxBatchSize :: !(Maybe Nat)-    , _pftpjActionTypeId :: !ActionTypeId-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _pftpjMaxBatchSize :: !(Maybe Nat)+  , _pftpjActionTypeId :: !ActionTypeId+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PollForThirdPartyJobs' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'pftpjMaxBatchSize' - The maximum number of jobs to return in a poll for jobs call. ----- * 'pftpjActionTypeId' - Undocumented member.+-- * 'pftpjActionTypeId' - Represents information about an action type. pollForThirdPartyJobs     :: ActionTypeId -- ^ 'pftpjActionTypeId'     -> PollForThirdPartyJobs pollForThirdPartyJobs pActionTypeId_ =-    PollForThirdPartyJobs'-    { _pftpjMaxBatchSize = Nothing-    , _pftpjActionTypeId = pActionTypeId_-    }+  PollForThirdPartyJobs'+  {_pftpjMaxBatchSize = Nothing, _pftpjActionTypeId = pActionTypeId_} + -- | The maximum number of jobs to return in a poll for jobs call. pftpjMaxBatchSize :: Lens' PollForThirdPartyJobs (Maybe Natural) pftpjMaxBatchSize = lens _pftpjMaxBatchSize (\ s a -> s{_pftpjMaxBatchSize = a}) . mapping _Nat; --- | Undocumented member.+-- | Represents information about an action type. pftpjActionTypeId :: Lens' PollForThirdPartyJobs ActionTypeId pftpjActionTypeId = lens _pftpjActionTypeId (\ s a -> s{_pftpjActionTypeId = a}); @@ -91,9 +91,9 @@                  PollForThirdPartyJobsResponse' <$>                    (x .?> "jobs" .!@ mempty) <*> (pure (fromEnum s))) -instance Hashable PollForThirdPartyJobs+instance Hashable PollForThirdPartyJobs where -instance NFData PollForThirdPartyJobs+instance NFData PollForThirdPartyJobs where  instance ToHeaders PollForThirdPartyJobs where         toHeaders@@ -118,16 +118,17 @@ instance ToQuery PollForThirdPartyJobs where         toQuery = const mempty --- | Represents the output of a poll for third party jobs action.+-- | Represents the output of a PollForThirdPartyJobs action. -- -- -- -- /See:/ 'pollForThirdPartyJobsResponse' smart constructor. data PollForThirdPartyJobsResponse = PollForThirdPartyJobsResponse'-    { _pftpjrsJobs           :: !(Maybe [ThirdPartyJob])-    , _pftpjrsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _pftpjrsJobs           :: !(Maybe [ThirdPartyJob])+  , _pftpjrsResponseStatus :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PollForThirdPartyJobsResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -139,11 +140,10 @@     :: Int -- ^ 'pftpjrsResponseStatus'     -> PollForThirdPartyJobsResponse pollForThirdPartyJobsResponse pResponseStatus_ =-    PollForThirdPartyJobsResponse'-    { _pftpjrsJobs = Nothing-    , _pftpjrsResponseStatus = pResponseStatus_-    }+  PollForThirdPartyJobsResponse'+  {_pftpjrsJobs = Nothing, _pftpjrsResponseStatus = pResponseStatus_} + -- | Information about the jobs to take action on. pftpjrsJobs :: Lens' PollForThirdPartyJobsResponse [ThirdPartyJob] pftpjrsJobs = lens _pftpjrsJobs (\ s a -> s{_pftpjrsJobs = a}) . _Default . _Coerce;@@ -152,4 +152,4 @@ pftpjrsResponseStatus :: Lens' PollForThirdPartyJobsResponse Int pftpjrsResponseStatus = lens _pftpjrsResponseStatus (\ s a -> s{_pftpjrsResponseStatus = a}); -instance NFData PollForThirdPartyJobsResponse+instance NFData PollForThirdPartyJobsResponse where
gen/Network/AWS/CodePipeline/PutActionRevision.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.PutActionRevision--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -41,25 +41,26 @@     , prsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a put action revision action.+-- | Represents the input of a PutActionRevision action. -- -- -- -- /See:/ 'putActionRevision' smart constructor. data PutActionRevision = PutActionRevision'-    { _pPipelineName   :: !Text-    , _pStageName      :: !Text-    , _pActionName     :: !Text-    , _pActionRevision :: !ActionRevision-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _pPipelineName   :: !Text+  , _pStageName      :: !Text+  , _pActionName     :: !Text+  , _pActionRevision :: !ActionRevision+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutActionRevision' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -70,7 +71,7 @@ -- -- * 'pActionName' - The name of the action that will process the revision. ----- * 'pActionRevision' - Undocumented member.+-- * 'pActionRevision' - Represents information about the version (or revision) of an action. putActionRevision     :: Text -- ^ 'pPipelineName'     -> Text -- ^ 'pStageName'@@ -78,13 +79,14 @@     -> ActionRevision -- ^ 'pActionRevision'     -> PutActionRevision putActionRevision pPipelineName_ pStageName_ pActionName_ pActionRevision_ =-    PutActionRevision'-    { _pPipelineName = pPipelineName_-    , _pStageName = pStageName_-    , _pActionName = pActionName_-    , _pActionRevision = pActionRevision_-    }+  PutActionRevision'+  { _pPipelineName = pPipelineName_+  , _pStageName = pStageName_+  , _pActionName = pActionName_+  , _pActionRevision = pActionRevision_+  } + -- | The name of the pipeline that will start processing the revision to the source. pPipelineName :: Lens' PutActionRevision Text pPipelineName = lens _pPipelineName (\ s a -> s{_pPipelineName = a});@@ -97,7 +99,7 @@ pActionName :: Lens' PutActionRevision Text pActionName = lens _pActionName (\ s a -> s{_pActionName = a}); --- | Undocumented member.+-- | Represents information about the version (or revision) of an action. pActionRevision :: Lens' PutActionRevision ActionRevision pActionRevision = lens _pActionRevision (\ s a -> s{_pActionRevision = a}); @@ -112,9 +114,9 @@                      (x .?> "pipelineExecutionId")                      <*> (pure (fromEnum s))) -instance Hashable PutActionRevision+instance Hashable PutActionRevision where -instance NFData PutActionRevision+instance NFData PutActionRevision where  instance ToHeaders PutActionRevision where         toHeaders@@ -141,17 +143,18 @@ instance ToQuery PutActionRevision where         toQuery = const mempty --- | Represents the output of a put action revision action.+-- | Represents the output of a PutActionRevision action. -- -- -- -- /See:/ 'putActionRevisionResponse' smart constructor. data PutActionRevisionResponse = PutActionRevisionResponse'-    { _prsNewRevision         :: !(Maybe Bool)-    , _prsPipelineExecutionId :: !(Maybe Text)-    , _prsResponseStatus      :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _prsNewRevision         :: !(Maybe Bool)+  , _prsPipelineExecutionId :: !(Maybe Text)+  , _prsResponseStatus      :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutActionRevisionResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -165,12 +168,13 @@     :: Int -- ^ 'prsResponseStatus'     -> PutActionRevisionResponse putActionRevisionResponse pResponseStatus_ =-    PutActionRevisionResponse'-    { _prsNewRevision = Nothing-    , _prsPipelineExecutionId = Nothing-    , _prsResponseStatus = pResponseStatus_-    }+  PutActionRevisionResponse'+  { _prsNewRevision = Nothing+  , _prsPipelineExecutionId = Nothing+  , _prsResponseStatus = pResponseStatus_+  } + -- | Indicates whether the artifact revision was previously used in an execution of the specified pipeline. prsNewRevision :: Lens' PutActionRevisionResponse (Maybe Bool) prsNewRevision = lens _prsNewRevision (\ s a -> s{_prsNewRevision = a});@@ -183,4 +187,4 @@ prsResponseStatus :: Lens' PutActionRevisionResponse Int prsResponseStatus = lens _prsResponseStatus (\ s a -> s{_prsResponseStatus = a}); -instance NFData PutActionRevisionResponse+instance NFData PutActionRevisionResponse where
gen/Network/AWS/CodePipeline/PutApprovalResult.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.PutApprovalResult--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -41,26 +41,27 @@     , parrsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a put approval result action.+-- | Represents the input of a PutApprovalResult action. -- -- -- -- /See:/ 'putApprovalResult' smart constructor. data PutApprovalResult = PutApprovalResult'-    { _parPipelineName :: !Text-    , _parStageName    :: !Text-    , _parActionName   :: !Text-    , _parResult       :: !ApprovalResult-    , _parToken        :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _parPipelineName :: !Text+  , _parStageName    :: !Text+  , _parActionName   :: !Text+  , _parResult       :: !ApprovalResult+  , _parToken        :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutApprovalResult' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -82,14 +83,15 @@     -> Text -- ^ 'parToken'     -> PutApprovalResult putApprovalResult pPipelineName_ pStageName_ pActionName_ pResult_ pToken_ =-    PutApprovalResult'-    { _parPipelineName = pPipelineName_-    , _parStageName = pStageName_-    , _parActionName = pActionName_-    , _parResult = pResult_-    , _parToken = pToken_-    }+  PutApprovalResult'+  { _parPipelineName = pPipelineName_+  , _parStageName = pStageName_+  , _parActionName = pActionName_+  , _parResult = pResult_+  , _parToken = pToken_+  } + -- | The name of the pipeline that contains the action. parPipelineName :: Lens' PutApprovalResult Text parPipelineName = lens _parPipelineName (\ s a -> s{_parPipelineName = a});@@ -119,9 +121,9 @@                  PutApprovalResultResponse' <$>                    (x .?> "approvedAt") <*> (pure (fromEnum s))) -instance Hashable PutApprovalResult+instance Hashable PutApprovalResult where -instance NFData PutApprovalResult+instance NFData PutApprovalResult where  instance ToHeaders PutApprovalResult where         toHeaders@@ -149,16 +151,17 @@ instance ToQuery PutApprovalResult where         toQuery = const mempty --- | Represents the output of a put approval result action.+-- | Represents the output of a PutApprovalResult action. -- -- -- -- /See:/ 'putApprovalResultResponse' smart constructor. data PutApprovalResultResponse = PutApprovalResultResponse'-    { _parrsApprovedAt     :: !(Maybe POSIX)-    , _parrsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _parrsApprovedAt     :: !(Maybe POSIX)+  , _parrsResponseStatus :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutApprovalResultResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -170,11 +173,10 @@     :: Int -- ^ 'parrsResponseStatus'     -> PutApprovalResultResponse putApprovalResultResponse pResponseStatus_ =-    PutApprovalResultResponse'-    { _parrsApprovedAt = Nothing-    , _parrsResponseStatus = pResponseStatus_-    }+  PutApprovalResultResponse'+  {_parrsApprovedAt = Nothing, _parrsResponseStatus = pResponseStatus_} + -- | The timestamp showing when the approval or rejection was submitted. parrsApprovedAt :: Lens' PutApprovalResultResponse (Maybe UTCTime) parrsApprovedAt = lens _parrsApprovedAt (\ s a -> s{_parrsApprovedAt = a}) . mapping _Time;@@ -183,4 +185,4 @@ parrsResponseStatus :: Lens' PutApprovalResultResponse Int parrsResponseStatus = lens _parrsResponseStatus (\ s a -> s{_parrsResponseStatus = a}); -instance NFData PutApprovalResultResponse+instance NFData PutApprovalResultResponse where
gen/Network/AWS/CodePipeline/PutJobFailureResult.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.PutJobFailureResult--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -35,23 +35,24 @@     , PutJobFailureResultResponse     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a put job failure result action.+-- | Represents the input of a PutJobFailureResult action. -- -- -- -- /See:/ 'putJobFailureResult' smart constructor. data PutJobFailureResult = PutJobFailureResult'-    { _pjfrJobId          :: !Text-    , _pjfrFailureDetails :: !FailureDetails-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _pjfrJobId          :: !Text+  , _pjfrFailureDetails :: !FailureDetails+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutJobFailureResult' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -64,11 +65,10 @@     -> FailureDetails -- ^ 'pjfrFailureDetails'     -> PutJobFailureResult putJobFailureResult pJobId_ pFailureDetails_ =-    PutJobFailureResult'-    { _pjfrJobId = pJobId_-    , _pjfrFailureDetails = pFailureDetails_-    }+  PutJobFailureResult'+  {_pjfrJobId = pJobId_, _pjfrFailureDetails = pFailureDetails_} + -- | The unique system-generated ID of the job that failed. This is the same ID returned from PollForJobs. pjfrJobId :: Lens' PutJobFailureResult Text pjfrJobId = lens _pjfrJobId (\ s a -> s{_pjfrJobId = a});@@ -83,9 +83,9 @@         request = postJSON codePipeline         response = receiveNull PutJobFailureResultResponse' -instance Hashable PutJobFailureResult+instance Hashable PutJobFailureResult where -instance NFData PutJobFailureResult+instance NFData PutJobFailureResult where  instance ToHeaders PutJobFailureResult where         toHeaders@@ -112,13 +112,15 @@  -- | /See:/ 'putJobFailureResultResponse' smart constructor. data PutJobFailureResultResponse =-    PutJobFailureResultResponse'-    deriving (Eq,Read,Show,Data,Typeable,Generic)+  PutJobFailureResultResponse'+  deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutJobFailureResultResponse' with the minimum fields required to make a request. -- putJobFailureResultResponse     :: PutJobFailureResultResponse putJobFailureResultResponse = PutJobFailureResultResponse' -instance NFData PutJobFailureResultResponse++instance NFData PutJobFailureResultResponse where
gen/Network/AWS/CodePipeline/PutJobSuccessResult.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.PutJobSuccessResult--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -37,25 +37,26 @@     , PutJobSuccessResultResponse     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a put job success result action.+-- | Represents the input of a PutJobSuccessResult action. -- -- -- -- /See:/ 'putJobSuccessResult' smart constructor. data PutJobSuccessResult = PutJobSuccessResult'-    { _pjsrContinuationToken :: !(Maybe Text)-    , _pjsrExecutionDetails  :: !(Maybe ExecutionDetails)-    , _pjsrCurrentRevision   :: !(Maybe CurrentRevision)-    , _pjsrJobId             :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _pjsrContinuationToken :: !(Maybe Text)+  , _pjsrExecutionDetails  :: !(Maybe ExecutionDetails)+  , _pjsrCurrentRevision   :: !(Maybe CurrentRevision)+  , _pjsrJobId             :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutJobSuccessResult' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -71,13 +72,14 @@     :: Text -- ^ 'pjsrJobId'     -> PutJobSuccessResult putJobSuccessResult pJobId_ =-    PutJobSuccessResult'-    { _pjsrContinuationToken = Nothing-    , _pjsrExecutionDetails = Nothing-    , _pjsrCurrentRevision = Nothing-    , _pjsrJobId = pJobId_-    }+  PutJobSuccessResult'+  { _pjsrContinuationToken = Nothing+  , _pjsrExecutionDetails = Nothing+  , _pjsrCurrentRevision = Nothing+  , _pjsrJobId = pJobId_+  } + -- | A token generated by a job worker, such as an AWS CodeDeploy deployment ID, that a successful job provides to identify a custom action in progress. Future jobs will use this token in order to identify the running instance of the action. It can be reused to return additional information about the progress of the custom action. When the action is complete, no continuation token should be supplied. pjsrContinuationToken :: Lens' PutJobSuccessResult (Maybe Text) pjsrContinuationToken = lens _pjsrContinuationToken (\ s a -> s{_pjsrContinuationToken = a});@@ -100,9 +102,9 @@         request = postJSON codePipeline         response = receiveNull PutJobSuccessResultResponse' -instance Hashable PutJobSuccessResult+instance Hashable PutJobSuccessResult where -instance NFData PutJobSuccessResult+instance NFData PutJobSuccessResult where  instance ToHeaders PutJobSuccessResult where         toHeaders@@ -131,13 +133,15 @@  -- | /See:/ 'putJobSuccessResultResponse' smart constructor. data PutJobSuccessResultResponse =-    PutJobSuccessResultResponse'-    deriving (Eq,Read,Show,Data,Typeable,Generic)+  PutJobSuccessResultResponse'+  deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutJobSuccessResultResponse' with the minimum fields required to make a request. -- putJobSuccessResultResponse     :: PutJobSuccessResultResponse putJobSuccessResultResponse = PutJobSuccessResultResponse' -instance NFData PutJobSuccessResultResponse++instance NFData PutJobSuccessResultResponse where
gen/Network/AWS/CodePipeline/PutThirdPartyJobFailureResult.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.PutThirdPartyJobFailureResult--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -36,24 +36,25 @@     , PutThirdPartyJobFailureResultResponse     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a third party job failure result action.+-- | Represents the input of a PutThirdPartyJobFailureResult action. -- -- -- -- /See:/ 'putThirdPartyJobFailureResult' smart constructor. data PutThirdPartyJobFailureResult = PutThirdPartyJobFailureResult'-    { _ptpjfrJobId          :: !Text-    , _ptpjfrClientToken    :: !Text-    , _ptpjfrFailureDetails :: !FailureDetails-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _ptpjfrJobId          :: !Text+  , _ptpjfrClientToken    :: !Text+  , _ptpjfrFailureDetails :: !FailureDetails+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutThirdPartyJobFailureResult' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -62,19 +63,20 @@ -- -- * 'ptpjfrClientToken' - The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details. ----- * 'ptpjfrFailureDetails' - Undocumented member.+-- * 'ptpjfrFailureDetails' - Represents information about failure details. putThirdPartyJobFailureResult     :: Text -- ^ 'ptpjfrJobId'     -> Text -- ^ 'ptpjfrClientToken'     -> FailureDetails -- ^ 'ptpjfrFailureDetails'     -> PutThirdPartyJobFailureResult putThirdPartyJobFailureResult pJobId_ pClientToken_ pFailureDetails_ =-    PutThirdPartyJobFailureResult'-    { _ptpjfrJobId = pJobId_-    , _ptpjfrClientToken = pClientToken_-    , _ptpjfrFailureDetails = pFailureDetails_-    }+  PutThirdPartyJobFailureResult'+  { _ptpjfrJobId = pJobId_+  , _ptpjfrClientToken = pClientToken_+  , _ptpjfrFailureDetails = pFailureDetails_+  } + -- | The ID of the job that failed. This is the same ID returned from PollForThirdPartyJobs. ptpjfrJobId :: Lens' PutThirdPartyJobFailureResult Text ptpjfrJobId = lens _ptpjfrJobId (\ s a -> s{_ptpjfrJobId = a});@@ -83,7 +85,7 @@ ptpjfrClientToken :: Lens' PutThirdPartyJobFailureResult Text ptpjfrClientToken = lens _ptpjfrClientToken (\ s a -> s{_ptpjfrClientToken = a}); --- | Undocumented member.+-- | Represents information about failure details. ptpjfrFailureDetails :: Lens' PutThirdPartyJobFailureResult FailureDetails ptpjfrFailureDetails = lens _ptpjfrFailureDetails (\ s a -> s{_ptpjfrFailureDetails = a}); @@ -95,9 +97,9 @@         response           = receiveNull PutThirdPartyJobFailureResultResponse' -instance Hashable PutThirdPartyJobFailureResult+instance Hashable PutThirdPartyJobFailureResult where -instance NFData PutThirdPartyJobFailureResult+instance NFData PutThirdPartyJobFailureResult where  instance ToHeaders PutThirdPartyJobFailureResult          where@@ -126,13 +128,16 @@  -- | /See:/ 'putThirdPartyJobFailureResultResponse' smart constructor. data PutThirdPartyJobFailureResultResponse =-    PutThirdPartyJobFailureResultResponse'-    deriving (Eq,Read,Show,Data,Typeable,Generic)+  PutThirdPartyJobFailureResultResponse'+  deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutThirdPartyJobFailureResultResponse' with the minimum fields required to make a request. -- putThirdPartyJobFailureResultResponse     :: PutThirdPartyJobFailureResultResponse putThirdPartyJobFailureResultResponse = PutThirdPartyJobFailureResultResponse' + instance NFData PutThirdPartyJobFailureResultResponse+         where
gen/Network/AWS/CodePipeline/PutThirdPartyJobSuccessResult.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.PutThirdPartyJobSuccessResult--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -38,35 +38,36 @@     , PutThirdPartyJobSuccessResultResponse     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a put third party job success result action.+-- | Represents the input of a PutThirdPartyJobSuccessResult action. -- -- -- -- /See:/ 'putThirdPartyJobSuccessResult' smart constructor. data PutThirdPartyJobSuccessResult = PutThirdPartyJobSuccessResult'-    { _ptpjsrContinuationToken :: !(Maybe Text)-    , _ptpjsrExecutionDetails  :: !(Maybe ExecutionDetails)-    , _ptpjsrCurrentRevision   :: !(Maybe CurrentRevision)-    , _ptpjsrJobId             :: !Text-    , _ptpjsrClientToken       :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _ptpjsrContinuationToken :: !(Maybe Text)+  , _ptpjsrExecutionDetails  :: !(Maybe ExecutionDetails)+  , _ptpjsrCurrentRevision   :: !(Maybe CurrentRevision)+  , _ptpjsrJobId             :: !Text+  , _ptpjsrClientToken       :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutThirdPartyJobSuccessResult' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'ptpjsrContinuationToken' - A token generated by a job worker, such as an AWS CodeDeploy deployment ID, that a successful job provides to identify a partner action in progress. Future jobs will use this token in order to identify the running instance of the action. It can be reused to return additional information about the progress of the partner action. When the action is complete, no continuation token should be supplied. ----- * 'ptpjsrExecutionDetails' - Undocumented member.+-- * 'ptpjsrExecutionDetails' - The details of the actions taken and results produced on an artifact as it passes through stages in the pipeline. ----- * 'ptpjsrCurrentRevision' - Undocumented member.+-- * 'ptpjsrCurrentRevision' - Represents information about a current revision. -- -- * 'ptpjsrJobId' - The ID of the job that successfully completed. This is the same ID returned from PollForThirdPartyJobs. --@@ -76,23 +77,24 @@     -> Text -- ^ 'ptpjsrClientToken'     -> PutThirdPartyJobSuccessResult putThirdPartyJobSuccessResult pJobId_ pClientToken_ =-    PutThirdPartyJobSuccessResult'-    { _ptpjsrContinuationToken = Nothing-    , _ptpjsrExecutionDetails = Nothing-    , _ptpjsrCurrentRevision = Nothing-    , _ptpjsrJobId = pJobId_-    , _ptpjsrClientToken = pClientToken_-    }+  PutThirdPartyJobSuccessResult'+  { _ptpjsrContinuationToken = Nothing+  , _ptpjsrExecutionDetails = Nothing+  , _ptpjsrCurrentRevision = Nothing+  , _ptpjsrJobId = pJobId_+  , _ptpjsrClientToken = pClientToken_+  } + -- | A token generated by a job worker, such as an AWS CodeDeploy deployment ID, that a successful job provides to identify a partner action in progress. Future jobs will use this token in order to identify the running instance of the action. It can be reused to return additional information about the progress of the partner action. When the action is complete, no continuation token should be supplied. ptpjsrContinuationToken :: Lens' PutThirdPartyJobSuccessResult (Maybe Text) ptpjsrContinuationToken = lens _ptpjsrContinuationToken (\ s a -> s{_ptpjsrContinuationToken = a}); --- | Undocumented member.+-- | The details of the actions taken and results produced on an artifact as it passes through stages in the pipeline. ptpjsrExecutionDetails :: Lens' PutThirdPartyJobSuccessResult (Maybe ExecutionDetails) ptpjsrExecutionDetails = lens _ptpjsrExecutionDetails (\ s a -> s{_ptpjsrExecutionDetails = a}); --- | Undocumented member.+-- | Represents information about a current revision. ptpjsrCurrentRevision :: Lens' PutThirdPartyJobSuccessResult (Maybe CurrentRevision) ptpjsrCurrentRevision = lens _ptpjsrCurrentRevision (\ s a -> s{_ptpjsrCurrentRevision = a}); @@ -112,9 +114,9 @@         response           = receiveNull PutThirdPartyJobSuccessResultResponse' -instance Hashable PutThirdPartyJobSuccessResult+instance Hashable PutThirdPartyJobSuccessResult where -instance NFData PutThirdPartyJobSuccessResult+instance NFData PutThirdPartyJobSuccessResult where  instance ToHeaders PutThirdPartyJobSuccessResult          where@@ -146,13 +148,16 @@  -- | /See:/ 'putThirdPartyJobSuccessResultResponse' smart constructor. data PutThirdPartyJobSuccessResultResponse =-    PutThirdPartyJobSuccessResultResponse'-    deriving (Eq,Read,Show,Data,Typeable,Generic)+  PutThirdPartyJobSuccessResultResponse'+  deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'PutThirdPartyJobSuccessResultResponse' with the minimum fields required to make a request. -- putThirdPartyJobSuccessResultResponse     :: PutThirdPartyJobSuccessResultResponse putThirdPartyJobSuccessResultResponse = PutThirdPartyJobSuccessResultResponse' + instance NFData PutThirdPartyJobSuccessResultResponse+         where
gen/Network/AWS/CodePipeline/RetryStageExecution.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.RetryStageExecution--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -40,25 +40,26 @@     , rsersResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a retry stage execution action.+-- | Represents the input of a RetryStageExecution action. -- -- -- -- /See:/ 'retryStageExecution' smart constructor. data RetryStageExecution = RetryStageExecution'-    { _rsePipelineName        :: !Text-    , _rseStageName           :: !Text-    , _rsePipelineExecutionId :: !Text-    , _rseRetryMode           :: !StageRetryMode-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _rsePipelineName        :: !Text+  , _rseStageName           :: !Text+  , _rsePipelineExecutionId :: !Text+  , _rseRetryMode           :: !StageRetryMode+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'RetryStageExecution' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -77,13 +78,14 @@     -> StageRetryMode -- ^ 'rseRetryMode'     -> RetryStageExecution retryStageExecution pPipelineName_ pStageName_ pPipelineExecutionId_ pRetryMode_ =-    RetryStageExecution'-    { _rsePipelineName = pPipelineName_-    , _rseStageName = pStageName_-    , _rsePipelineExecutionId = pPipelineExecutionId_-    , _rseRetryMode = pRetryMode_-    }+  RetryStageExecution'+  { _rsePipelineName = pPipelineName_+  , _rseStageName = pStageName_+  , _rsePipelineExecutionId = pPipelineExecutionId_+  , _rseRetryMode = pRetryMode_+  } + -- | The name of the pipeline that contains the failed stage. rsePipelineName :: Lens' RetryStageExecution Text rsePipelineName = lens _rsePipelineName (\ s a -> s{_rsePipelineName = a});@@ -111,9 +113,9 @@                    (x .?> "pipelineExecutionId") <*>                      (pure (fromEnum s))) -instance Hashable RetryStageExecution+instance Hashable RetryStageExecution where -instance NFData RetryStageExecution+instance NFData RetryStageExecution where  instance ToHeaders RetryStageExecution where         toHeaders@@ -141,16 +143,17 @@ instance ToQuery RetryStageExecution where         toQuery = const mempty --- | Represents the output of a retry stage execution action.+-- | Represents the output of a RetryStageExecution action. -- -- -- -- /See:/ 'retryStageExecutionResponse' smart constructor. data RetryStageExecutionResponse = RetryStageExecutionResponse'-    { _rsersPipelineExecutionId :: !(Maybe Text)-    , _rsersResponseStatus      :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _rsersPipelineExecutionId :: !(Maybe Text)+  , _rsersResponseStatus      :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'RetryStageExecutionResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -162,11 +165,10 @@     :: Int -- ^ 'rsersResponseStatus'     -> RetryStageExecutionResponse retryStageExecutionResponse pResponseStatus_ =-    RetryStageExecutionResponse'-    { _rsersPipelineExecutionId = Nothing-    , _rsersResponseStatus = pResponseStatus_-    }+  RetryStageExecutionResponse'+  {_rsersPipelineExecutionId = Nothing, _rsersResponseStatus = pResponseStatus_} + -- | The ID of the current workflow execution in the failed stage. rsersPipelineExecutionId :: Lens' RetryStageExecutionResponse (Maybe Text) rsersPipelineExecutionId = lens _rsersPipelineExecutionId (\ s a -> s{_rsersPipelineExecutionId = a});@@ -175,4 +177,4 @@ rsersResponseStatus :: Lens' RetryStageExecutionResponse Int rsersResponseStatus = lens _rsersResponseStatus (\ s a -> s{_rsersResponseStatus = a}); -instance NFData RetryStageExecutionResponse+instance NFData RetryStageExecutionResponse where
gen/Network/AWS/CodePipeline/StartPipelineExecution.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.StartPipelineExecution--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -37,22 +37,23 @@     , spersResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of a start pipeline execution action.+-- | Represents the input of a StartPipelineExecution action. -- -- -- -- /See:/ 'startPipelineExecution' smart constructor. newtype StartPipelineExecution = StartPipelineExecution'-    { _speName :: Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _speName :: Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'StartPipelineExecution' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -61,11 +62,9 @@ startPipelineExecution     :: Text -- ^ 'speName'     -> StartPipelineExecution-startPipelineExecution pName_ =-    StartPipelineExecution'-    { _speName = pName_-    }+startPipelineExecution pName_ = StartPipelineExecution' {_speName = pName_} + -- | The name of the pipeline to start. speName :: Lens' StartPipelineExecution Text speName = lens _speName (\ s a -> s{_speName = a});@@ -81,9 +80,9 @@                    (x .?> "pipelineExecutionId") <*>                      (pure (fromEnum s))) -instance Hashable StartPipelineExecution+instance Hashable StartPipelineExecution where -instance NFData StartPipelineExecution+instance NFData StartPipelineExecution where  instance ToHeaders StartPipelineExecution where         toHeaders@@ -105,16 +104,17 @@ instance ToQuery StartPipelineExecution where         toQuery = const mempty --- | Represents the output of a start pipeline execution action.+-- | Represents the output of a StartPipelineExecution action. -- -- -- -- /See:/ 'startPipelineExecutionResponse' smart constructor. data StartPipelineExecutionResponse = StartPipelineExecutionResponse'-    { _spersPipelineExecutionId :: !(Maybe Text)-    , _spersResponseStatus      :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _spersPipelineExecutionId :: !(Maybe Text)+  , _spersResponseStatus      :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'StartPipelineExecutionResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -126,11 +126,10 @@     :: Int -- ^ 'spersResponseStatus'     -> StartPipelineExecutionResponse startPipelineExecutionResponse pResponseStatus_ =-    StartPipelineExecutionResponse'-    { _spersPipelineExecutionId = Nothing-    , _spersResponseStatus = pResponseStatus_-    }+  StartPipelineExecutionResponse'+  {_spersPipelineExecutionId = Nothing, _spersResponseStatus = pResponseStatus_} + -- | The unique system-generated ID of the pipeline execution that was started. spersPipelineExecutionId :: Lens' StartPipelineExecutionResponse (Maybe Text) spersPipelineExecutionId = lens _spersPipelineExecutionId (\ s a -> s{_spersPipelineExecutionId = a});@@ -139,4 +138,4 @@ spersResponseStatus :: Lens' StartPipelineExecutionResponse Int spersResponseStatus = lens _spersResponseStatus (\ s a -> s{_spersResponseStatus = a}); -instance NFData StartPipelineExecutionResponse+instance NFData StartPipelineExecutionResponse where
gen/Network/AWS/CodePipeline/Types.hs view
@@ -4,9 +4,9 @@  -- | -- Module      : Network.AWS.CodePipeline.Types--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -322,6 +322,21 @@     , pePipelineExecutionId     , peArtifactRevisions +    -- * PipelineExecutionSummary+    , PipelineExecutionSummary+    , pipelineExecutionSummary+    , pesStatus+    , pesStartTime+    , pesPipelineExecutionId+    , pesLastUpdateTime++    -- * PipelineMetadata+    , PipelineMetadata+    , pipelineMetadata+    , pmCreated+    , pmPipelineARN+    , pmUpdated+     -- * PipelineSummary     , PipelineSummary     , pipelineSummary@@ -396,38 +411,40 @@     , tsLastChangedBy     ) where -import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.CodePipeline.Types.Sum-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Sign.V4+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.CodePipeline.Types.Sum+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Sign.V4  -- | API version @2015-07-09@ of the Amazon CodePipeline SDK configuration. codePipeline :: Service codePipeline =-    Service-    { _svcAbbrev = "CodePipeline"-    , _svcSigner = v4-    , _svcPrefix = "codepipeline"-    , _svcVersion = "2015-07-09"-    , _svcEndpoint = defaultEndpoint codePipeline-    , _svcTimeout = Just 70-    , _svcCheck = statusSuccess-    , _svcError = parseJSONError "CodePipeline"-    , _svcRetry = retry-    }+  Service+  { _svcAbbrev = "CodePipeline"+  , _svcSigner = v4+  , _svcPrefix = "codepipeline"+  , _svcVersion = "2015-07-09"+  , _svcEndpoint = defaultEndpoint codePipeline+  , _svcTimeout = Just 70+  , _svcCheck = statusSuccess+  , _svcError = parseJSONError "CodePipeline"+  , _svcRetry = retry+  }   where     retry =-        Exponential-        { _retryBase = 5.0e-2-        , _retryGrowth = 2-        , _retryAttempts = 5-        , _retryCheck = check-        }+      Exponential+      { _retryBase = 5.0e-2+      , _retryGrowth = 2+      , _retryAttempts = 5+      , _retryCheck = check+      }     check e+      | has (hasCode "ThrottledException" . hasStatus 400) e =+        Just "throttled_exception"       | has (hasStatus 429) e = Just "too_many_requests"       | has (hasCode "ThrottlingException" . hasStatus 400) e =-          Just "throttling_exception"+        Just "throttling_exception"       | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"       | has (hasStatus 504) e = Just "gateway_timeout"       | has (hasStatus 502) e = Just "bad_gateway"@@ -436,155 +453,183 @@       | has (hasStatus 509) e = Just "limit_exceeded"       | otherwise = Nothing + -- | The client token was specified in an invalid format -- -- _InvalidClientTokenException :: AsError a => Getting (First ServiceError) a ServiceError _InvalidClientTokenException =-    _ServiceError . hasCode "InvalidClientTokenException"+  _MatchServiceError codePipeline "InvalidClientTokenException" + -- | The validation was specified in an invalid format. -- -- _ValidationException :: AsError a => Getting (First ServiceError) a ServiceError-_ValidationException = _ServiceError . hasCode "ValidationException"+_ValidationException = _MatchServiceError codePipeline "ValidationException" + -- | The specified nonce was specified in an invalid format. -- -- _InvalidNonceException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidNonceException = _ServiceError . hasCode "InvalidNonceException"+_InvalidNonceException = _MatchServiceError codePipeline "InvalidNonceException" + -- | The specified action cannot be found. -- -- _ActionNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError-_ActionNotFoundException = _ServiceError . hasCode "ActionNotFoundException"+_ActionNotFoundException =+  _MatchServiceError codePipeline "ActionNotFoundException" + -- | The approval request already received a response or has expired. -- -- _InvalidApprovalTokenException :: AsError a => Getting (First ServiceError) a ServiceError _InvalidApprovalTokenException =-    _ServiceError . hasCode "InvalidApprovalTokenException"+  _MatchServiceError codePipeline "InvalidApprovalTokenException" + -- | Reserved for future use. -- -- _InvalidBlockerDeclarationException :: AsError a => Getting (First ServiceError) a ServiceError _InvalidBlockerDeclarationException =-    _ServiceError . hasCode "InvalidBlockerDeclarationException"+  _MatchServiceError codePipeline "InvalidBlockerDeclarationException" + -- | The specified job state was specified in an invalid format. -- -- _InvalidJobStateException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidJobStateException = _ServiceError . hasCode "InvalidJobStateException"+_InvalidJobStateException =+  _MatchServiceError codePipeline "InvalidJobStateException" + -- | The specified job was specified in an invalid format or cannot be found. -- -- _InvalidJobException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidJobException = _ServiceError . hasCode "InvalidJobException"+_InvalidJobException = _MatchServiceError codePipeline "InvalidJobException" + -- | The specified pipeline version was specified in an invalid format or cannot be found. -- -- _PipelineVersionNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError _PipelineVersionNotFoundException =-    _ServiceError . hasCode "PipelineVersionNotFoundException"+  _MatchServiceError codePipeline "PipelineVersionNotFoundException" + -- | The specified stage can't be retried because the pipeline structure or stage state changed after the stage was not completed; the stage contains no failed actions; one or more actions are still in progress; or another retry attempt is already in progress. -- -- _StageNotRetryableException :: AsError a => Getting (First ServiceError) a ServiceError _StageNotRetryableException =-    _ServiceError . hasCode "StageNotRetryableException"+  _MatchServiceError codePipeline "StageNotRetryableException" + -- | The pipeline execution was specified in an invalid format or cannot be found, or an execution ID does not belong to the specified pipeline. -- -- _PipelineExecutionNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError _PipelineExecutionNotFoundException =-    _ServiceError . hasCode "PipelineExecutionNotFoundException"+  _MatchServiceError codePipeline "PipelineExecutionNotFoundException" + -- | The specified action type cannot be found. -- -- _ActionTypeNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError _ActionTypeNotFoundException =-    _ServiceError . hasCode "ActionTypeNotFoundException"+  _MatchServiceError codePipeline "ActionTypeNotFoundException" + -- | The next token was specified in an invalid format. Make sure that the next token you provided is the token returned by a previous call. -- -- _InvalidNextTokenException :: AsError a => Getting (First ServiceError) a ServiceError _InvalidNextTokenException =-    _ServiceError . hasCode "InvalidNextTokenException"+  _MatchServiceError codePipeline "InvalidNextTokenException" + -- | The specified stage declaration was specified in an invalid format. -- -- _InvalidStageDeclarationException :: AsError a => Getting (First ServiceError) a ServiceError _InvalidStageDeclarationException =-    _ServiceError . hasCode "InvalidStageDeclarationException"+  _MatchServiceError codePipeline "InvalidStageDeclarationException" + -- | The specified action declaration was specified in an invalid format. -- -- _InvalidActionDeclarationException :: AsError a => Getting (First ServiceError) a ServiceError _InvalidActionDeclarationException =-    _ServiceError . hasCode "InvalidActionDeclarationException"+  _MatchServiceError codePipeline "InvalidActionDeclarationException" + -- | The specified stage was specified in an invalid format or cannot be found. -- -- _StageNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError-_StageNotFoundException = _ServiceError . hasCode "StageNotFoundException"+_StageNotFoundException =+  _MatchServiceError codePipeline "StageNotFoundException" + -- | The specified structure was specified in an invalid format. -- -- _InvalidStructureException :: AsError a => Getting (First ServiceError) a ServiceError _InvalidStructureException =-    _ServiceError . hasCode "InvalidStructureException"+  _MatchServiceError codePipeline "InvalidStructureException" + -- | The specified job was specified in an invalid format or cannot be found. -- -- _JobNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError-_JobNotFoundException = _ServiceError . hasCode "JobNotFoundException"+_JobNotFoundException = _MatchServiceError codePipeline "JobNotFoundException" + -- | The approval action has already been approved or rejected. -- -- _ApprovalAlreadyCompletedException :: AsError a => Getting (First ServiceError) a ServiceError _ApprovalAlreadyCompletedException =-    _ServiceError . hasCode "ApprovalAlreadyCompletedException"+  _MatchServiceError codePipeline "ApprovalAlreadyCompletedException" + -- | The specified pipeline name is already in use. -- -- _PipelineNameInUseException :: AsError a => Getting (First ServiceError) a ServiceError _PipelineNameInUseException =-    _ServiceError . hasCode "PipelineNameInUseException"+  _MatchServiceError codePipeline "PipelineNameInUseException" + -- | The specified pipeline was specified in an invalid format or cannot be found. -- -- _PipelineNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError _PipelineNotFoundException =-    _ServiceError . hasCode "PipelineNotFoundException"+  _MatchServiceError codePipeline "PipelineNotFoundException" + -- | The number of pipelines associated with the AWS account has exceeded the limit allowed for the account. -- -- _LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError-_LimitExceededException = _ServiceError . hasCode "LimitExceededException"+_LimitExceededException =+  _MatchServiceError codePipeline "LimitExceededException" + -- | The stage has failed in a later run of the pipeline and the pipelineExecutionId associated with the request is out of date. -- -- _NotLatestPipelineExecutionException :: AsError a => Getting (First ServiceError) a ServiceError _NotLatestPipelineExecutionException =-    _ServiceError . hasCode "NotLatestPipelineExecutionException"+  _MatchServiceError codePipeline "NotLatestPipelineExecutionException"+
gen/Network/AWS/CodePipeline/Types/Product.hs view
@@ -9,2546 +9,2677 @@  -- | -- Module      : Network.AWS.CodePipeline.Types.Product--- Copyright   : (c) 2013-2016 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.CodePipeline.Types.Product where--import           Network.AWS.CodePipeline.Types.Sum-import           Network.AWS.Lens-import           Network.AWS.Prelude---- | Represents an AWS session credentials object. These credentials are temporary credentials that are issued by AWS Secure Token Service (STS). They can be used to access input and output artifacts in the Amazon S3 bucket used to store artifact for the pipeline in AWS CodePipeline.------------ /See:/ 'awsSessionCredentials' smart constructor.-data AWSSessionCredentials = AWSSessionCredentials'-    { _ascAccessKeyId     :: !Text-    , _ascSecretAccessKey :: !Text-    , _ascSessionToken    :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'AWSSessionCredentials' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ascAccessKeyId' - The access key for the session.------ * 'ascSecretAccessKey' - The secret access key for the session.------ * 'ascSessionToken' - The token for the session.-awsSessionCredentials-    :: Text -- ^ 'ascAccessKeyId'-    -> Text -- ^ 'ascSecretAccessKey'-    -> Text -- ^ 'ascSessionToken'-    -> AWSSessionCredentials-awsSessionCredentials pAccessKeyId_ pSecretAccessKey_ pSessionToken_ =-    AWSSessionCredentials'-    { _ascAccessKeyId = pAccessKeyId_-    , _ascSecretAccessKey = pSecretAccessKey_-    , _ascSessionToken = pSessionToken_-    }---- | The access key for the session.-ascAccessKeyId :: Lens' AWSSessionCredentials Text-ascAccessKeyId = lens _ascAccessKeyId (\ s a -> s{_ascAccessKeyId = a});---- | The secret access key for the session.-ascSecretAccessKey :: Lens' AWSSessionCredentials Text-ascSecretAccessKey = lens _ascSecretAccessKey (\ s a -> s{_ascSecretAccessKey = a});---- | The token for the session.-ascSessionToken :: Lens' AWSSessionCredentials Text-ascSessionToken = lens _ascSessionToken (\ s a -> s{_ascSessionToken = a});--instance FromJSON AWSSessionCredentials where-        parseJSON-          = withObject "AWSSessionCredentials"-              (\ x ->-                 AWSSessionCredentials' <$>-                   (x .: "accessKeyId") <*> (x .: "secretAccessKey") <*>-                     (x .: "sessionToken"))--instance Hashable AWSSessionCredentials--instance NFData AWSSessionCredentials---- | Represents information about an action configuration.------------ /See:/ 'actionConfiguration' smart constructor.-newtype ActionConfiguration = ActionConfiguration'-    { _acConfiguration :: Maybe (Map Text Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionConfiguration' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'acConfiguration' - The configuration data for the action.-actionConfiguration-    :: ActionConfiguration-actionConfiguration =-    ActionConfiguration'-    { _acConfiguration = Nothing-    }---- | The configuration data for the action.-acConfiguration :: Lens' ActionConfiguration (HashMap Text Text)-acConfiguration = lens _acConfiguration (\ s a -> s{_acConfiguration = a}) . _Default . _Map;--instance FromJSON ActionConfiguration where-        parseJSON-          = withObject "ActionConfiguration"-              (\ x ->-                 ActionConfiguration' <$>-                   (x .:? "configuration" .!= mempty))--instance Hashable ActionConfiguration--instance NFData ActionConfiguration---- | Represents information about an action configuration property.------------ /See:/ 'actionConfigurationProperty' smart constructor.-data ActionConfigurationProperty = ActionConfigurationProperty'-    { _acpQueryable   :: !(Maybe Bool)-    , _acpType        :: !(Maybe ActionConfigurationPropertyType)-    , _acpDescription :: !(Maybe Text)-    , _acpName        :: !Text-    , _acpRequired    :: !Bool-    , _acpKey         :: !Bool-    , _acpSecret      :: !Bool-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionConfigurationProperty' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'acpQueryable' - Indicates that the proprety will be used in conjunction with PollForJobs. When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret. If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to additional restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.------ * 'acpType' - The type of the configuration property.------ * 'acpDescription' - The description of the action configuration property that will be displayed to users.------ * 'acpName' - The name of the action configuration property.------ * 'acpRequired' - Whether the configuration property is a required value.------ * 'acpKey' - Whether the configuration property is a key.------ * 'acpSecret' - Whether the configuration property is secret. Secrets are hidden from all calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and PollForThirdPartyJobs. When updating a pipeline, passing * * * * * without changing any other values of the action will preserve the prior value of the secret.-actionConfigurationProperty-    :: Text -- ^ 'acpName'-    -> Bool -- ^ 'acpRequired'-    -> Bool -- ^ 'acpKey'-    -> Bool -- ^ 'acpSecret'-    -> ActionConfigurationProperty-actionConfigurationProperty pName_ pRequired_ pKey_ pSecret_ =-    ActionConfigurationProperty'-    { _acpQueryable = Nothing-    , _acpType = Nothing-    , _acpDescription = Nothing-    , _acpName = pName_-    , _acpRequired = pRequired_-    , _acpKey = pKey_-    , _acpSecret = pSecret_-    }---- | Indicates that the proprety will be used in conjunction with PollForJobs. When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret. If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to additional restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.-acpQueryable :: Lens' ActionConfigurationProperty (Maybe Bool)-acpQueryable = lens _acpQueryable (\ s a -> s{_acpQueryable = a});---- | The type of the configuration property.-acpType :: Lens' ActionConfigurationProperty (Maybe ActionConfigurationPropertyType)-acpType = lens _acpType (\ s a -> s{_acpType = a});---- | The description of the action configuration property that will be displayed to users.-acpDescription :: Lens' ActionConfigurationProperty (Maybe Text)-acpDescription = lens _acpDescription (\ s a -> s{_acpDescription = a});---- | The name of the action configuration property.-acpName :: Lens' ActionConfigurationProperty Text-acpName = lens _acpName (\ s a -> s{_acpName = a});---- | Whether the configuration property is a required value.-acpRequired :: Lens' ActionConfigurationProperty Bool-acpRequired = lens _acpRequired (\ s a -> s{_acpRequired = a});---- | Whether the configuration property is a key.-acpKey :: Lens' ActionConfigurationProperty Bool-acpKey = lens _acpKey (\ s a -> s{_acpKey = a});---- | Whether the configuration property is secret. Secrets are hidden from all calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and PollForThirdPartyJobs. When updating a pipeline, passing * * * * * without changing any other values of the action will preserve the prior value of the secret.-acpSecret :: Lens' ActionConfigurationProperty Bool-acpSecret = lens _acpSecret (\ s a -> s{_acpSecret = a});--instance FromJSON ActionConfigurationProperty where-        parseJSON-          = withObject "ActionConfigurationProperty"-              (\ x ->-                 ActionConfigurationProperty' <$>-                   (x .:? "queryable") <*> (x .:? "type") <*>-                     (x .:? "description")-                     <*> (x .: "name")-                     <*> (x .: "required")-                     <*> (x .: "key")-                     <*> (x .: "secret"))--instance Hashable ActionConfigurationProperty--instance NFData ActionConfigurationProperty--instance ToJSON ActionConfigurationProperty where-        toJSON ActionConfigurationProperty'{..}-          = object-              (catMaybes-                 [("queryable" .=) <$> _acpQueryable,-                  ("type" .=) <$> _acpType,-                  ("description" .=) <$> _acpDescription,-                  Just ("name" .= _acpName),-                  Just ("required" .= _acpRequired),-                  Just ("key" .= _acpKey),-                  Just ("secret" .= _acpSecret)])---- | Represents the context of an action within the stage of a pipeline to a job worker.------------ /See:/ 'actionContext' smart constructor.-newtype ActionContext = ActionContext'-    { _acName :: Maybe Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionContext' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'acName' - The name of the action within the context of a job.-actionContext-    :: ActionContext-actionContext =-    ActionContext'-    { _acName = Nothing-    }---- | The name of the action within the context of a job.-acName :: Lens' ActionContext (Maybe Text)-acName = lens _acName (\ s a -> s{_acName = a});--instance FromJSON ActionContext where-        parseJSON-          = withObject "ActionContext"-              (\ x -> ActionContext' <$> (x .:? "name"))--instance Hashable ActionContext--instance NFData ActionContext---- | Represents information about an action declaration.------------ /See:/ 'actionDeclaration' smart constructor.-data ActionDeclaration = ActionDeclaration'-    { _adOutputArtifacts :: !(Maybe [OutputArtifact])-    , _adRunOrder        :: !(Maybe Nat)-    , _adConfiguration   :: !(Maybe (Map Text Text))-    , _adInputArtifacts  :: !(Maybe [InputArtifact])-    , _adRoleARN         :: !(Maybe Text)-    , _adName            :: !Text-    , _adActionTypeId    :: !ActionTypeId-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionDeclaration' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'adOutputArtifacts' - The name or ID of the result of the action declaration, such as a test or build artifact.------ * 'adRunOrder' - The order in which actions are run.------ * 'adConfiguration' - The action declaration's configuration.------ * 'adInputArtifacts' - The name or ID of the artifact consumed by the action, such as a test or build artifact.------ * 'adRoleARN' - The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.------ * 'adName' - The action declaration's name.------ * 'adActionTypeId' - The configuration information for the action type.-actionDeclaration-    :: Text -- ^ 'adName'-    -> ActionTypeId -- ^ 'adActionTypeId'-    -> ActionDeclaration-actionDeclaration pName_ pActionTypeId_ =-    ActionDeclaration'-    { _adOutputArtifacts = Nothing-    , _adRunOrder = Nothing-    , _adConfiguration = Nothing-    , _adInputArtifacts = Nothing-    , _adRoleARN = Nothing-    , _adName = pName_-    , _adActionTypeId = pActionTypeId_-    }---- | The name or ID of the result of the action declaration, such as a test or build artifact.-adOutputArtifacts :: Lens' ActionDeclaration [OutputArtifact]-adOutputArtifacts = lens _adOutputArtifacts (\ s a -> s{_adOutputArtifacts = a}) . _Default . _Coerce;---- | The order in which actions are run.-adRunOrder :: Lens' ActionDeclaration (Maybe Natural)-adRunOrder = lens _adRunOrder (\ s a -> s{_adRunOrder = a}) . mapping _Nat;---- | The action declaration's configuration.-adConfiguration :: Lens' ActionDeclaration (HashMap Text Text)-adConfiguration = lens _adConfiguration (\ s a -> s{_adConfiguration = a}) . _Default . _Map;---- | The name or ID of the artifact consumed by the action, such as a test or build artifact.-adInputArtifacts :: Lens' ActionDeclaration [InputArtifact]-adInputArtifacts = lens _adInputArtifacts (\ s a -> s{_adInputArtifacts = a}) . _Default . _Coerce;---- | The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.-adRoleARN :: Lens' ActionDeclaration (Maybe Text)-adRoleARN = lens _adRoleARN (\ s a -> s{_adRoleARN = a});---- | The action declaration's name.-adName :: Lens' ActionDeclaration Text-adName = lens _adName (\ s a -> s{_adName = a});---- | The configuration information for the action type.-adActionTypeId :: Lens' ActionDeclaration ActionTypeId-adActionTypeId = lens _adActionTypeId (\ s a -> s{_adActionTypeId = a});--instance FromJSON ActionDeclaration where-        parseJSON-          = withObject "ActionDeclaration"-              (\ x ->-                 ActionDeclaration' <$>-                   (x .:? "outputArtifacts" .!= mempty) <*>-                     (x .:? "runOrder")-                     <*> (x .:? "configuration" .!= mempty)-                     <*> (x .:? "inputArtifacts" .!= mempty)-                     <*> (x .:? "roleArn")-                     <*> (x .: "name")-                     <*> (x .: "actionTypeId"))--instance Hashable ActionDeclaration--instance NFData ActionDeclaration--instance ToJSON ActionDeclaration where-        toJSON ActionDeclaration'{..}-          = object-              (catMaybes-                 [("outputArtifacts" .=) <$> _adOutputArtifacts,-                  ("runOrder" .=) <$> _adRunOrder,-                  ("configuration" .=) <$> _adConfiguration,-                  ("inputArtifacts" .=) <$> _adInputArtifacts,-                  ("roleArn" .=) <$> _adRoleARN,-                  Just ("name" .= _adName),-                  Just ("actionTypeId" .= _adActionTypeId)])---- | Represents information about the run of an action.------------ /See:/ 'actionExecution' smart constructor.-data ActionExecution = ActionExecution'-    { _aeLastUpdatedBy        :: !(Maybe Text)-    , _aeSummary              :: !(Maybe Text)-    , _aeStatus               :: !(Maybe ActionExecutionStatus)-    , _aeLastStatusChange     :: !(Maybe POSIX)-    , _aeToken                :: !(Maybe Text)-    , _aeExternalExecutionURL :: !(Maybe Text)-    , _aeExternalExecutionId  :: !(Maybe Text)-    , _aeErrorDetails         :: !(Maybe ErrorDetails)-    , _aePercentComplete      :: !(Maybe Nat)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionExecution' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aeLastUpdatedBy' - The ARN of the user who last changed the pipeline.------ * 'aeSummary' - A summary of the run of the action.------ * 'aeStatus' - The status of the action, or for a completed action, the last status of the action.------ * 'aeLastStatusChange' - The last status change of the action.------ * 'aeToken' - The system-generated token used to identify a unique approval request. The token for each open approval request can be obtained using the GetPipelineState command and is used to validate that the approval request corresponding to this token is still valid.------ * 'aeExternalExecutionURL' - The URL of a resource external to AWS that will be used when running the action, for example an external repository URL.------ * 'aeExternalExecutionId' - The external ID of the run of the action.------ * 'aeErrorDetails' - The details of an error returned by a URL external to AWS.------ * 'aePercentComplete' - A percentage of completeness of the action as it runs.-actionExecution-    :: ActionExecution-actionExecution =-    ActionExecution'-    { _aeLastUpdatedBy = Nothing-    , _aeSummary = Nothing-    , _aeStatus = Nothing-    , _aeLastStatusChange = Nothing-    , _aeToken = Nothing-    , _aeExternalExecutionURL = Nothing-    , _aeExternalExecutionId = Nothing-    , _aeErrorDetails = Nothing-    , _aePercentComplete = Nothing-    }---- | The ARN of the user who last changed the pipeline.-aeLastUpdatedBy :: Lens' ActionExecution (Maybe Text)-aeLastUpdatedBy = lens _aeLastUpdatedBy (\ s a -> s{_aeLastUpdatedBy = a});---- | A summary of the run of the action.-aeSummary :: Lens' ActionExecution (Maybe Text)-aeSummary = lens _aeSummary (\ s a -> s{_aeSummary = a});---- | The status of the action, or for a completed action, the last status of the action.-aeStatus :: Lens' ActionExecution (Maybe ActionExecutionStatus)-aeStatus = lens _aeStatus (\ s a -> s{_aeStatus = a});---- | The last status change of the action.-aeLastStatusChange :: Lens' ActionExecution (Maybe UTCTime)-aeLastStatusChange = lens _aeLastStatusChange (\ s a -> s{_aeLastStatusChange = a}) . mapping _Time;---- | The system-generated token used to identify a unique approval request. The token for each open approval request can be obtained using the GetPipelineState command and is used to validate that the approval request corresponding to this token is still valid.-aeToken :: Lens' ActionExecution (Maybe Text)-aeToken = lens _aeToken (\ s a -> s{_aeToken = a});---- | The URL of a resource external to AWS that will be used when running the action, for example an external repository URL.-aeExternalExecutionURL :: Lens' ActionExecution (Maybe Text)-aeExternalExecutionURL = lens _aeExternalExecutionURL (\ s a -> s{_aeExternalExecutionURL = a});---- | The external ID of the run of the action.-aeExternalExecutionId :: Lens' ActionExecution (Maybe Text)-aeExternalExecutionId = lens _aeExternalExecutionId (\ s a -> s{_aeExternalExecutionId = a});---- | The details of an error returned by a URL external to AWS.-aeErrorDetails :: Lens' ActionExecution (Maybe ErrorDetails)-aeErrorDetails = lens _aeErrorDetails (\ s a -> s{_aeErrorDetails = a});---- | A percentage of completeness of the action as it runs.-aePercentComplete :: Lens' ActionExecution (Maybe Natural)-aePercentComplete = lens _aePercentComplete (\ s a -> s{_aePercentComplete = a}) . mapping _Nat;--instance FromJSON ActionExecution where-        parseJSON-          = withObject "ActionExecution"-              (\ x ->-                 ActionExecution' <$>-                   (x .:? "lastUpdatedBy") <*> (x .:? "summary") <*>-                     (x .:? "status")-                     <*> (x .:? "lastStatusChange")-                     <*> (x .:? "token")-                     <*> (x .:? "externalExecutionUrl")-                     <*> (x .:? "externalExecutionId")-                     <*> (x .:? "errorDetails")-                     <*> (x .:? "percentComplete"))--instance Hashable ActionExecution--instance NFData ActionExecution---- | Represents information about the version (or revision) of an action.------------ /See:/ 'actionRevision' smart constructor.-data ActionRevision = ActionRevision'-    { _aRevisionId       :: !Text-    , _aRevisionChangeId :: !Text-    , _aCreated          :: !POSIX-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionRevision' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aRevisionId' - The system-generated unique ID that identifies the revision number of the action.------ * 'aRevisionChangeId' - The unique identifier of the change that set the state to this revision, for example a deployment ID or timestamp.------ * 'aCreated' - The date and time when the most recent version of the action was created, in timestamp format.-actionRevision-    :: Text -- ^ 'aRevisionId'-    -> Text -- ^ 'aRevisionChangeId'-    -> UTCTime -- ^ 'aCreated'-    -> ActionRevision-actionRevision pRevisionId_ pRevisionChangeId_ pCreated_ =-    ActionRevision'-    { _aRevisionId = pRevisionId_-    , _aRevisionChangeId = pRevisionChangeId_-    , _aCreated = _Time # pCreated_-    }---- | The system-generated unique ID that identifies the revision number of the action.-aRevisionId :: Lens' ActionRevision Text-aRevisionId = lens _aRevisionId (\ s a -> s{_aRevisionId = a});---- | The unique identifier of the change that set the state to this revision, for example a deployment ID or timestamp.-aRevisionChangeId :: Lens' ActionRevision Text-aRevisionChangeId = lens _aRevisionChangeId (\ s a -> s{_aRevisionChangeId = a});---- | The date and time when the most recent version of the action was created, in timestamp format.-aCreated :: Lens' ActionRevision UTCTime-aCreated = lens _aCreated (\ s a -> s{_aCreated = a}) . _Time;--instance FromJSON ActionRevision where-        parseJSON-          = withObject "ActionRevision"-              (\ x ->-                 ActionRevision' <$>-                   (x .: "revisionId") <*> (x .: "revisionChangeId") <*>-                     (x .: "created"))--instance Hashable ActionRevision--instance NFData ActionRevision--instance ToJSON ActionRevision where-        toJSON ActionRevision'{..}-          = object-              (catMaybes-                 [Just ("revisionId" .= _aRevisionId),-                  Just ("revisionChangeId" .= _aRevisionChangeId),-                  Just ("created" .= _aCreated)])---- | Represents information about the state of an action.------------ /See:/ 'actionState' smart constructor.-data ActionState = ActionState'-    { _asRevisionURL     :: !(Maybe Text)-    , _asEntityURL       :: !(Maybe Text)-    , _asActionName      :: !(Maybe Text)-    , _asCurrentRevision :: !(Maybe ActionRevision)-    , _asLatestExecution :: !(Maybe ActionExecution)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionState' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'asRevisionURL' - A URL link for more information about the revision, such as a commit details page.------ * 'asEntityURL' - A URL link for more information about the state of the action, such as a deployment group details page.------ * 'asActionName' - The name of the action.------ * 'asCurrentRevision' - Undocumented member.------ * 'asLatestExecution' - Undocumented member.-actionState-    :: ActionState-actionState =-    ActionState'-    { _asRevisionURL = Nothing-    , _asEntityURL = Nothing-    , _asActionName = Nothing-    , _asCurrentRevision = Nothing-    , _asLatestExecution = Nothing-    }---- | A URL link for more information about the revision, such as a commit details page.-asRevisionURL :: Lens' ActionState (Maybe Text)-asRevisionURL = lens _asRevisionURL (\ s a -> s{_asRevisionURL = a});---- | A URL link for more information about the state of the action, such as a deployment group details page.-asEntityURL :: Lens' ActionState (Maybe Text)-asEntityURL = lens _asEntityURL (\ s a -> s{_asEntityURL = a});---- | The name of the action.-asActionName :: Lens' ActionState (Maybe Text)-asActionName = lens _asActionName (\ s a -> s{_asActionName = a});---- | Undocumented member.-asCurrentRevision :: Lens' ActionState (Maybe ActionRevision)-asCurrentRevision = lens _asCurrentRevision (\ s a -> s{_asCurrentRevision = a});---- | Undocumented member.-asLatestExecution :: Lens' ActionState (Maybe ActionExecution)-asLatestExecution = lens _asLatestExecution (\ s a -> s{_asLatestExecution = a});--instance FromJSON ActionState where-        parseJSON-          = withObject "ActionState"-              (\ x ->-                 ActionState' <$>-                   (x .:? "revisionUrl") <*> (x .:? "entityUrl") <*>-                     (x .:? "actionName")-                     <*> (x .:? "currentRevision")-                     <*> (x .:? "latestExecution"))--instance Hashable ActionState--instance NFData ActionState---- | Returns information about the details of an action type.------------ /See:/ 'actionType' smart constructor.-data ActionType = ActionType'-    { _atSettings                      :: !(Maybe ActionTypeSettings)-    , _atActionConfigurationProperties :: !(Maybe [ActionConfigurationProperty])-    , _atId                            :: !ActionTypeId-    , _atInputArtifactDetails          :: !ArtifactDetails-    , _atOutputArtifactDetails         :: !ArtifactDetails-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionType' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'atSettings' - The settings for the action type.------ * 'atActionConfigurationProperties' - The configuration properties for the action type.------ * 'atId' - Undocumented member.------ * 'atInputArtifactDetails' - The details of the input artifact for the action, such as its commit ID.------ * 'atOutputArtifactDetails' - The details of the output artifact of the action, such as its commit ID.-actionType-    :: ActionTypeId -- ^ 'atId'-    -> ArtifactDetails -- ^ 'atInputArtifactDetails'-    -> ArtifactDetails -- ^ 'atOutputArtifactDetails'-    -> ActionType-actionType pId_ pInputArtifactDetails_ pOutputArtifactDetails_ =-    ActionType'-    { _atSettings = Nothing-    , _atActionConfigurationProperties = Nothing-    , _atId = pId_-    , _atInputArtifactDetails = pInputArtifactDetails_-    , _atOutputArtifactDetails = pOutputArtifactDetails_-    }---- | The settings for the action type.-atSettings :: Lens' ActionType (Maybe ActionTypeSettings)-atSettings = lens _atSettings (\ s a -> s{_atSettings = a});---- | The configuration properties for the action type.-atActionConfigurationProperties :: Lens' ActionType [ActionConfigurationProperty]-atActionConfigurationProperties = lens _atActionConfigurationProperties (\ s a -> s{_atActionConfigurationProperties = a}) . _Default . _Coerce;---- | Undocumented member.-atId :: Lens' ActionType ActionTypeId-atId = lens _atId (\ s a -> s{_atId = a});---- | The details of the input artifact for the action, such as its commit ID.-atInputArtifactDetails :: Lens' ActionType ArtifactDetails-atInputArtifactDetails = lens _atInputArtifactDetails (\ s a -> s{_atInputArtifactDetails = a});---- | The details of the output artifact of the action, such as its commit ID.-atOutputArtifactDetails :: Lens' ActionType ArtifactDetails-atOutputArtifactDetails = lens _atOutputArtifactDetails (\ s a -> s{_atOutputArtifactDetails = a});--instance FromJSON ActionType where-        parseJSON-          = withObject "ActionType"-              (\ x ->-                 ActionType' <$>-                   (x .:? "settings") <*>-                     (x .:? "actionConfigurationProperties" .!= mempty)-                     <*> (x .: "id")-                     <*> (x .: "inputArtifactDetails")-                     <*> (x .: "outputArtifactDetails"))--instance Hashable ActionType--instance NFData ActionType---- | Represents information about an action type.------------ /See:/ 'actionTypeId' smart constructor.-data ActionTypeId = ActionTypeId'-    { _atiCategory :: !ActionCategory-    , _atiOwner    :: !ActionOwner-    , _atiProvider :: !Text-    , _atiVersion  :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionTypeId' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'atiCategory' - A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the values below.------ * 'atiOwner' - The creator of the action being called.------ * 'atiProvider' - The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy.------ * 'atiVersion' - A string that identifies the action type.-actionTypeId-    :: ActionCategory -- ^ 'atiCategory'-    -> ActionOwner -- ^ 'atiOwner'-    -> Text -- ^ 'atiProvider'-    -> Text -- ^ 'atiVersion'-    -> ActionTypeId-actionTypeId pCategory_ pOwner_ pProvider_ pVersion_ =-    ActionTypeId'-    { _atiCategory = pCategory_-    , _atiOwner = pOwner_-    , _atiProvider = pProvider_-    , _atiVersion = pVersion_-    }---- | A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the values below.-atiCategory :: Lens' ActionTypeId ActionCategory-atiCategory = lens _atiCategory (\ s a -> s{_atiCategory = a});---- | The creator of the action being called.-atiOwner :: Lens' ActionTypeId ActionOwner-atiOwner = lens _atiOwner (\ s a -> s{_atiOwner = a});---- | The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy.-atiProvider :: Lens' ActionTypeId Text-atiProvider = lens _atiProvider (\ s a -> s{_atiProvider = a});---- | A string that identifies the action type.-atiVersion :: Lens' ActionTypeId Text-atiVersion = lens _atiVersion (\ s a -> s{_atiVersion = a});--instance FromJSON ActionTypeId where-        parseJSON-          = withObject "ActionTypeId"-              (\ x ->-                 ActionTypeId' <$>-                   (x .: "category") <*> (x .: "owner") <*>-                     (x .: "provider")-                     <*> (x .: "version"))--instance Hashable ActionTypeId--instance NFData ActionTypeId--instance ToJSON ActionTypeId where-        toJSON ActionTypeId'{..}-          = object-              (catMaybes-                 [Just ("category" .= _atiCategory),-                  Just ("owner" .= _atiOwner),-                  Just ("provider" .= _atiProvider),-                  Just ("version" .= _atiVersion)])---- | Returns information about the settings for an action type.------------ /See:/ 'actionTypeSettings' smart constructor.-data ActionTypeSettings = ActionTypeSettings'-    { _atsThirdPartyConfigurationURL :: !(Maybe Text)-    , _atsExecutionURLTemplate       :: !(Maybe Text)-    , _atsRevisionURLTemplate        :: !(Maybe Text)-    , _atsEntityURLTemplate          :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ActionTypeSettings' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'atsThirdPartyConfigurationURL' - The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.------ * 'atsExecutionURLTemplate' - The URL returned to the AWS CodePipeline console that contains a link to the top-level landing page for the external system, such as console page for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS CodePipeline console and provides a link to the execution entity of the external action.------ * 'atsRevisionURLTemplate' - The URL returned to the AWS CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.------ * 'atsEntityURLTemplate' - The URL returned to the AWS CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for an AWS CodeDeploy deployment group. This link is provided as part of the action display within the pipeline.-actionTypeSettings-    :: ActionTypeSettings-actionTypeSettings =-    ActionTypeSettings'-    { _atsThirdPartyConfigurationURL = Nothing-    , _atsExecutionURLTemplate = Nothing-    , _atsRevisionURLTemplate = Nothing-    , _atsEntityURLTemplate = Nothing-    }---- | The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.-atsThirdPartyConfigurationURL :: Lens' ActionTypeSettings (Maybe Text)-atsThirdPartyConfigurationURL = lens _atsThirdPartyConfigurationURL (\ s a -> s{_atsThirdPartyConfigurationURL = a});---- | The URL returned to the AWS CodePipeline console that contains a link to the top-level landing page for the external system, such as console page for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS CodePipeline console and provides a link to the execution entity of the external action.-atsExecutionURLTemplate :: Lens' ActionTypeSettings (Maybe Text)-atsExecutionURLTemplate = lens _atsExecutionURLTemplate (\ s a -> s{_atsExecutionURLTemplate = a});---- | The URL returned to the AWS CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.-atsRevisionURLTemplate :: Lens' ActionTypeSettings (Maybe Text)-atsRevisionURLTemplate = lens _atsRevisionURLTemplate (\ s a -> s{_atsRevisionURLTemplate = a});---- | The URL returned to the AWS CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for an AWS CodeDeploy deployment group. This link is provided as part of the action display within the pipeline.-atsEntityURLTemplate :: Lens' ActionTypeSettings (Maybe Text)-atsEntityURLTemplate = lens _atsEntityURLTemplate (\ s a -> s{_atsEntityURLTemplate = a});--instance FromJSON ActionTypeSettings where-        parseJSON-          = withObject "ActionTypeSettings"-              (\ x ->-                 ActionTypeSettings' <$>-                   (x .:? "thirdPartyConfigurationUrl") <*>-                     (x .:? "executionUrlTemplate")-                     <*> (x .:? "revisionUrlTemplate")-                     <*> (x .:? "entityUrlTemplate"))--instance Hashable ActionTypeSettings--instance NFData ActionTypeSettings--instance ToJSON ActionTypeSettings where-        toJSON ActionTypeSettings'{..}-          = object-              (catMaybes-                 [("thirdPartyConfigurationUrl" .=) <$>-                    _atsThirdPartyConfigurationURL,-                  ("executionUrlTemplate" .=) <$>-                    _atsExecutionURLTemplate,-                  ("revisionUrlTemplate" .=) <$>-                    _atsRevisionURLTemplate,-                  ("entityUrlTemplate" .=) <$> _atsEntityURLTemplate])---- | Represents information about the result of an approval request.------------ /See:/ 'approvalResult' smart constructor.-data ApprovalResult = ApprovalResult'-    { _arSummary :: !Text-    , _arStatus  :: !ApprovalStatus-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ApprovalResult' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'arSummary' - The summary of the current status of the approval request.------ * 'arStatus' - The response submitted by a reviewer assigned to an approval action request.-approvalResult-    :: Text -- ^ 'arSummary'-    -> ApprovalStatus -- ^ 'arStatus'-    -> ApprovalResult-approvalResult pSummary_ pStatus_ =-    ApprovalResult'-    { _arSummary = pSummary_-    , _arStatus = pStatus_-    }---- | The summary of the current status of the approval request.-arSummary :: Lens' ApprovalResult Text-arSummary = lens _arSummary (\ s a -> s{_arSummary = a});---- | The response submitted by a reviewer assigned to an approval action request.-arStatus :: Lens' ApprovalResult ApprovalStatus-arStatus = lens _arStatus (\ s a -> s{_arStatus = a});--instance Hashable ApprovalResult--instance NFData ApprovalResult--instance ToJSON ApprovalResult where-        toJSON ApprovalResult'{..}-          = object-              (catMaybes-                 [Just ("summary" .= _arSummary),-                  Just ("status" .= _arStatus)])---- | Represents information about an artifact that will be worked upon by actions in the pipeline.------------ /See:/ 'artifact' smart constructor.-data Artifact = Artifact'-    { _aLocation :: !(Maybe ArtifactLocation)-    , _aName     :: !(Maybe Text)-    , _aRevision :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'Artifact' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aLocation' - The location of an artifact.------ * 'aName' - The artifact's name.------ * 'aRevision' - The artifact's revision ID. Depending on the type of object, this could be a commit ID (GitHub) or a revision ID (Amazon S3).-artifact-    :: Artifact-artifact =-    Artifact'-    { _aLocation = Nothing-    , _aName = Nothing-    , _aRevision = Nothing-    }---- | The location of an artifact.-aLocation :: Lens' Artifact (Maybe ArtifactLocation)-aLocation = lens _aLocation (\ s a -> s{_aLocation = a});---- | The artifact's name.-aName :: Lens' Artifact (Maybe Text)-aName = lens _aName (\ s a -> s{_aName = a});---- | The artifact's revision ID. Depending on the type of object, this could be a commit ID (GitHub) or a revision ID (Amazon S3).-aRevision :: Lens' Artifact (Maybe Text)-aRevision = lens _aRevision (\ s a -> s{_aRevision = a});--instance FromJSON Artifact where-        parseJSON-          = withObject "Artifact"-              (\ x ->-                 Artifact' <$>-                   (x .:? "location") <*> (x .:? "name") <*>-                     (x .:? "revision"))--instance Hashable Artifact--instance NFData Artifact---- | Returns information about the details of an artifact.------------ /See:/ 'artifactDetails' smart constructor.-data ArtifactDetails = ArtifactDetails'-    { _adMinimumCount :: !Nat-    , _adMaximumCount :: !Nat-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ArtifactDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'adMinimumCount' - The minimum number of artifacts allowed for the action type.------ * 'adMaximumCount' - The maximum number of artifacts allowed for the action type.-artifactDetails-    :: Natural -- ^ 'adMinimumCount'-    -> Natural -- ^ 'adMaximumCount'-    -> ArtifactDetails-artifactDetails pMinimumCount_ pMaximumCount_ =-    ArtifactDetails'-    { _adMinimumCount = _Nat # pMinimumCount_-    , _adMaximumCount = _Nat # pMaximumCount_-    }---- | The minimum number of artifacts allowed for the action type.-adMinimumCount :: Lens' ArtifactDetails Natural-adMinimumCount = lens _adMinimumCount (\ s a -> s{_adMinimumCount = a}) . _Nat;---- | The maximum number of artifacts allowed for the action type.-adMaximumCount :: Lens' ArtifactDetails Natural-adMaximumCount = lens _adMaximumCount (\ s a -> s{_adMaximumCount = a}) . _Nat;--instance FromJSON ArtifactDetails where-        parseJSON-          = withObject "ArtifactDetails"-              (\ x ->-                 ArtifactDetails' <$>-                   (x .: "minimumCount") <*> (x .: "maximumCount"))--instance Hashable ArtifactDetails--instance NFData ArtifactDetails--instance ToJSON ArtifactDetails where-        toJSON ArtifactDetails'{..}-          = object-              (catMaybes-                 [Just ("minimumCount" .= _adMinimumCount),-                  Just ("maximumCount" .= _adMaximumCount)])---- | Represents information about the location of an artifact.------------ /See:/ 'artifactLocation' smart constructor.-data ArtifactLocation = ArtifactLocation'-    { _alS3Location :: !(Maybe S3ArtifactLocation)-    , _alType       :: !(Maybe ArtifactLocationType)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ArtifactLocation' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'alS3Location' - The Amazon S3 bucket that contains the artifact.------ * 'alType' - The type of artifact in the location.-artifactLocation-    :: ArtifactLocation-artifactLocation =-    ArtifactLocation'-    { _alS3Location = Nothing-    , _alType = Nothing-    }---- | The Amazon S3 bucket that contains the artifact.-alS3Location :: Lens' ArtifactLocation (Maybe S3ArtifactLocation)-alS3Location = lens _alS3Location (\ s a -> s{_alS3Location = a});---- | The type of artifact in the location.-alType :: Lens' ArtifactLocation (Maybe ArtifactLocationType)-alType = lens _alType (\ s a -> s{_alType = a});--instance FromJSON ArtifactLocation where-        parseJSON-          = withObject "ArtifactLocation"-              (\ x ->-                 ArtifactLocation' <$>-                   (x .:? "s3Location") <*> (x .:? "type"))--instance Hashable ArtifactLocation--instance NFData ArtifactLocation---- | Represents revision details of an artifact.------------ /See:/ 'artifactRevision' smart constructor.-data ArtifactRevision = ArtifactRevision'-    { _arRevisionSummary          :: !(Maybe Text)-    , _arRevisionURL              :: !(Maybe Text)-    , _arCreated                  :: !(Maybe POSIX)-    , _arName                     :: !(Maybe Text)-    , _arRevisionId               :: !(Maybe Text)-    , _arRevisionChangeIdentifier :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ArtifactRevision' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'arRevisionSummary' - Summary information about the most recent revision of the artifact. For GitHub and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets or actions, the user-provided content of a @codepipeline-artifact-revision-summary@ key specified in the object metadata.------ * 'arRevisionURL' - The commit ID for the artifact revision. For artifacts stored in GitHub or AWS CodeCommit repositories, the commit ID is linked to a commit details page.------ * 'arCreated' - The date and time when the most recent revision of the artifact was created, in timestamp format.------ * 'arName' - The name of an artifact. This name might be system-generated, such as "MyApp", or might be defined by the user when an action is created.------ * 'arRevisionId' - The revision ID of the artifact.------ * 'arRevisionChangeIdentifier' - An additional identifier for a revision, such as a commit date or, for artifacts stored in Amazon S3 buckets, the ETag value.-artifactRevision-    :: ArtifactRevision-artifactRevision =-    ArtifactRevision'-    { _arRevisionSummary = Nothing-    , _arRevisionURL = Nothing-    , _arCreated = Nothing-    , _arName = Nothing-    , _arRevisionId = Nothing-    , _arRevisionChangeIdentifier = Nothing-    }---- | Summary information about the most recent revision of the artifact. For GitHub and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets or actions, the user-provided content of a @codepipeline-artifact-revision-summary@ key specified in the object metadata.-arRevisionSummary :: Lens' ArtifactRevision (Maybe Text)-arRevisionSummary = lens _arRevisionSummary (\ s a -> s{_arRevisionSummary = a});---- | The commit ID for the artifact revision. For artifacts stored in GitHub or AWS CodeCommit repositories, the commit ID is linked to a commit details page.-arRevisionURL :: Lens' ArtifactRevision (Maybe Text)-arRevisionURL = lens _arRevisionURL (\ s a -> s{_arRevisionURL = a});---- | The date and time when the most recent revision of the artifact was created, in timestamp format.-arCreated :: Lens' ArtifactRevision (Maybe UTCTime)-arCreated = lens _arCreated (\ s a -> s{_arCreated = a}) . mapping _Time;---- | The name of an artifact. This name might be system-generated, such as "MyApp", or might be defined by the user when an action is created.-arName :: Lens' ArtifactRevision (Maybe Text)-arName = lens _arName (\ s a -> s{_arName = a});---- | The revision ID of the artifact.-arRevisionId :: Lens' ArtifactRevision (Maybe Text)-arRevisionId = lens _arRevisionId (\ s a -> s{_arRevisionId = a});---- | An additional identifier for a revision, such as a commit date or, for artifacts stored in Amazon S3 buckets, the ETag value.-arRevisionChangeIdentifier :: Lens' ArtifactRevision (Maybe Text)-arRevisionChangeIdentifier = lens _arRevisionChangeIdentifier (\ s a -> s{_arRevisionChangeIdentifier = a});--instance FromJSON ArtifactRevision where-        parseJSON-          = withObject "ArtifactRevision"-              (\ x ->-                 ArtifactRevision' <$>-                   (x .:? "revisionSummary") <*> (x .:? "revisionUrl")-                     <*> (x .:? "created")-                     <*> (x .:? "name")-                     <*> (x .:? "revisionId")-                     <*> (x .:? "revisionChangeIdentifier"))--instance Hashable ArtifactRevision--instance NFData ArtifactRevision---- | The Amazon S3 location where artifacts are stored for the pipeline. If this Amazon S3 bucket is created manually, it must meet the requirements for AWS CodePipeline. For more information, see the <http://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#CPS3Bucket Concepts> .------------ /See:/ 'artifactStore' smart constructor.-data ArtifactStore = ArtifactStore'-    { _asEncryptionKey :: !(Maybe EncryptionKey)-    , _asType          :: !ArtifactStoreType-    , _asLocation      :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ArtifactStore' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'asEncryptionKey' - The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.------ * 'asType' - The type of the artifact store, such as S3.------ * 'asLocation' - The location for storing the artifacts for a pipeline, such as an S3 bucket or folder.-artifactStore-    :: ArtifactStoreType -- ^ 'asType'-    -> Text -- ^ 'asLocation'-    -> ArtifactStore-artifactStore pType_ pLocation_ =-    ArtifactStore'-    { _asEncryptionKey = Nothing-    , _asType = pType_-    , _asLocation = pLocation_-    }---- | The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.-asEncryptionKey :: Lens' ArtifactStore (Maybe EncryptionKey)-asEncryptionKey = lens _asEncryptionKey (\ s a -> s{_asEncryptionKey = a});---- | The type of the artifact store, such as S3.-asType :: Lens' ArtifactStore ArtifactStoreType-asType = lens _asType (\ s a -> s{_asType = a});---- | The location for storing the artifacts for a pipeline, such as an S3 bucket or folder.-asLocation :: Lens' ArtifactStore Text-asLocation = lens _asLocation (\ s a -> s{_asLocation = a});--instance FromJSON ArtifactStore where-        parseJSON-          = withObject "ArtifactStore"-              (\ x ->-                 ArtifactStore' <$>-                   (x .:? "encryptionKey") <*> (x .: "type") <*>-                     (x .: "location"))--instance Hashable ArtifactStore--instance NFData ArtifactStore--instance ToJSON ArtifactStore where-        toJSON ArtifactStore'{..}-          = object-              (catMaybes-                 [("encryptionKey" .=) <$> _asEncryptionKey,-                  Just ("type" .= _asType),-                  Just ("location" .= _asLocation)])---- | Reserved for future use.------------ /See:/ 'blockerDeclaration' smart constructor.-data BlockerDeclaration = BlockerDeclaration'-    { _bdName :: !Text-    , _bdType :: !BlockerType-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'BlockerDeclaration' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'bdName' - Reserved for future use.------ * 'bdType' - Reserved for future use.-blockerDeclaration-    :: Text -- ^ 'bdName'-    -> BlockerType -- ^ 'bdType'-    -> BlockerDeclaration-blockerDeclaration pName_ pType_ =-    BlockerDeclaration'-    { _bdName = pName_-    , _bdType = pType_-    }---- | Reserved for future use.-bdName :: Lens' BlockerDeclaration Text-bdName = lens _bdName (\ s a -> s{_bdName = a});---- | Reserved for future use.-bdType :: Lens' BlockerDeclaration BlockerType-bdType = lens _bdType (\ s a -> s{_bdType = a});--instance FromJSON BlockerDeclaration where-        parseJSON-          = withObject "BlockerDeclaration"-              (\ x ->-                 BlockerDeclaration' <$>-                   (x .: "name") <*> (x .: "type"))--instance Hashable BlockerDeclaration--instance NFData BlockerDeclaration--instance ToJSON BlockerDeclaration where-        toJSON BlockerDeclaration'{..}-          = object-              (catMaybes-                 [Just ("name" .= _bdName), Just ("type" .= _bdType)])---- | Represents information about a current revision.------------ /See:/ 'currentRevision' smart constructor.-data CurrentRevision = CurrentRevision'-    { _crRevisionSummary  :: !(Maybe Text)-    , _crCreated          :: !(Maybe POSIX)-    , _crRevision         :: !Text-    , _crChangeIdentifier :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'CurrentRevision' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'crRevisionSummary' - The summary of the most recent revision of the artifact.------ * 'crCreated' - The date and time when the most recent revision of the artifact was created, in timestamp format.------ * 'crRevision' - The revision ID of the current version of an artifact.------ * 'crChangeIdentifier' - The change identifier for the current revision.-currentRevision-    :: Text -- ^ 'crRevision'-    -> Text -- ^ 'crChangeIdentifier'-    -> CurrentRevision-currentRevision pRevision_ pChangeIdentifier_ =-    CurrentRevision'-    { _crRevisionSummary = Nothing-    , _crCreated = Nothing-    , _crRevision = pRevision_-    , _crChangeIdentifier = pChangeIdentifier_-    }---- | The summary of the most recent revision of the artifact.-crRevisionSummary :: Lens' CurrentRevision (Maybe Text)-crRevisionSummary = lens _crRevisionSummary (\ s a -> s{_crRevisionSummary = a});---- | The date and time when the most recent revision of the artifact was created, in timestamp format.-crCreated :: Lens' CurrentRevision (Maybe UTCTime)-crCreated = lens _crCreated (\ s a -> s{_crCreated = a}) . mapping _Time;---- | The revision ID of the current version of an artifact.-crRevision :: Lens' CurrentRevision Text-crRevision = lens _crRevision (\ s a -> s{_crRevision = a});---- | The change identifier for the current revision.-crChangeIdentifier :: Lens' CurrentRevision Text-crChangeIdentifier = lens _crChangeIdentifier (\ s a -> s{_crChangeIdentifier = a});--instance Hashable CurrentRevision--instance NFData CurrentRevision--instance ToJSON CurrentRevision where-        toJSON CurrentRevision'{..}-          = object-              (catMaybes-                 [("revisionSummary" .=) <$> _crRevisionSummary,-                  ("created" .=) <$> _crCreated,-                  Just ("revision" .= _crRevision),-                  Just ("changeIdentifier" .= _crChangeIdentifier)])---- | Represents information about the key used to encrypt data in the artifact store, such as an AWS Key Management Service (AWS KMS) key.------------ /See:/ 'encryptionKey' smart constructor.-data EncryptionKey = EncryptionKey'-    { _ekId   :: !Text-    , _ekType :: !EncryptionKeyType-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'EncryptionKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ekId' - The ID used to identify the key. For an AWS KMS key, this is the key ID or key ARN.------ * 'ekType' - The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.-encryptionKey-    :: Text -- ^ 'ekId'-    -> EncryptionKeyType -- ^ 'ekType'-    -> EncryptionKey-encryptionKey pId_ pType_ =-    EncryptionKey'-    { _ekId = pId_-    , _ekType = pType_-    }---- | The ID used to identify the key. For an AWS KMS key, this is the key ID or key ARN.-ekId :: Lens' EncryptionKey Text-ekId = lens _ekId (\ s a -> s{_ekId = a});---- | The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.-ekType :: Lens' EncryptionKey EncryptionKeyType-ekType = lens _ekType (\ s a -> s{_ekType = a});--instance FromJSON EncryptionKey where-        parseJSON-          = withObject "EncryptionKey"-              (\ x ->-                 EncryptionKey' <$> (x .: "id") <*> (x .: "type"))--instance Hashable EncryptionKey--instance NFData EncryptionKey--instance ToJSON EncryptionKey where-        toJSON EncryptionKey'{..}-          = object-              (catMaybes-                 [Just ("id" .= _ekId), Just ("type" .= _ekType)])---- | Represents information about an error in AWS CodePipeline.------------ /See:/ 'errorDetails' smart constructor.-data ErrorDetails = ErrorDetails'-    { _edCode    :: !(Maybe Text)-    , _edMessage :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ErrorDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'edCode' - The system ID or error number code of the error.------ * 'edMessage' - The text of the error message.-errorDetails-    :: ErrorDetails-errorDetails =-    ErrorDetails'-    { _edCode = Nothing-    , _edMessage = Nothing-    }---- | The system ID or error number code of the error.-edCode :: Lens' ErrorDetails (Maybe Text)-edCode = lens _edCode (\ s a -> s{_edCode = a});---- | The text of the error message.-edMessage :: Lens' ErrorDetails (Maybe Text)-edMessage = lens _edMessage (\ s a -> s{_edMessage = a});--instance FromJSON ErrorDetails where-        parseJSON-          = withObject "ErrorDetails"-              (\ x ->-                 ErrorDetails' <$>-                   (x .:? "code") <*> (x .:? "message"))--instance Hashable ErrorDetails--instance NFData ErrorDetails---- | The details of the actions taken and results produced on an artifact as it passes through stages in the pipeline.------------ /See:/ 'executionDetails' smart constructor.-data ExecutionDetails = ExecutionDetails'-    { _edSummary             :: !(Maybe Text)-    , _edExternalExecutionId :: !(Maybe Text)-    , _edPercentComplete     :: !(Maybe Nat)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ExecutionDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'edSummary' - The summary of the current status of the actions.------ * 'edExternalExecutionId' - The system-generated unique ID of this action used to identify this job worker in any external systems, such as AWS CodeDeploy.------ * 'edPercentComplete' - The percentage of work completed on the action, represented on a scale of zero to one hundred percent.-executionDetails-    :: ExecutionDetails-executionDetails =-    ExecutionDetails'-    { _edSummary = Nothing-    , _edExternalExecutionId = Nothing-    , _edPercentComplete = Nothing-    }---- | The summary of the current status of the actions.-edSummary :: Lens' ExecutionDetails (Maybe Text)-edSummary = lens _edSummary (\ s a -> s{_edSummary = a});---- | The system-generated unique ID of this action used to identify this job worker in any external systems, such as AWS CodeDeploy.-edExternalExecutionId :: Lens' ExecutionDetails (Maybe Text)-edExternalExecutionId = lens _edExternalExecutionId (\ s a -> s{_edExternalExecutionId = a});---- | The percentage of work completed on the action, represented on a scale of zero to one hundred percent.-edPercentComplete :: Lens' ExecutionDetails (Maybe Natural)-edPercentComplete = lens _edPercentComplete (\ s a -> s{_edPercentComplete = a}) . mapping _Nat;--instance Hashable ExecutionDetails--instance NFData ExecutionDetails--instance ToJSON ExecutionDetails where-        toJSON ExecutionDetails'{..}-          = object-              (catMaybes-                 [("summary" .=) <$> _edSummary,-                  ("externalExecutionId" .=) <$>-                    _edExternalExecutionId,-                  ("percentComplete" .=) <$> _edPercentComplete])---- | Represents information about failure details.------------ /See:/ 'failureDetails' smart constructor.-data FailureDetails = FailureDetails'-    { _fdExternalExecutionId :: !(Maybe Text)-    , _fdType                :: !FailureType-    , _fdMessage             :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'FailureDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fdExternalExecutionId' - The external ID of the run of the action that failed.------ * 'fdType' - The type of the failure.------ * 'fdMessage' - The message about the failure.-failureDetails-    :: FailureType -- ^ 'fdType'-    -> Text -- ^ 'fdMessage'-    -> FailureDetails-failureDetails pType_ pMessage_ =-    FailureDetails'-    { _fdExternalExecutionId = Nothing-    , _fdType = pType_-    , _fdMessage = pMessage_-    }---- | The external ID of the run of the action that failed.-fdExternalExecutionId :: Lens' FailureDetails (Maybe Text)-fdExternalExecutionId = lens _fdExternalExecutionId (\ s a -> s{_fdExternalExecutionId = a});---- | The type of the failure.-fdType :: Lens' FailureDetails FailureType-fdType = lens _fdType (\ s a -> s{_fdType = a});---- | The message about the failure.-fdMessage :: Lens' FailureDetails Text-fdMessage = lens _fdMessage (\ s a -> s{_fdMessage = a});--instance Hashable FailureDetails--instance NFData FailureDetails--instance ToJSON FailureDetails where-        toJSON FailureDetails'{..}-          = object-              (catMaybes-                 [("externalExecutionId" .=) <$>-                    _fdExternalExecutionId,-                  Just ("type" .= _fdType),-                  Just ("message" .= _fdMessage)])---- | Represents information about an artifact to be worked on, such as a test or build artifact.------------ /See:/ 'inputArtifact' smart constructor.-newtype InputArtifact = InputArtifact'-    { _iaName :: Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'InputArtifact' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'iaName' - The name of the artifact to be worked on, for example, "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.-inputArtifact-    :: Text -- ^ 'iaName'-    -> InputArtifact-inputArtifact pName_ =-    InputArtifact'-    { _iaName = pName_-    }---- | The name of the artifact to be worked on, for example, "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.-iaName :: Lens' InputArtifact Text-iaName = lens _iaName (\ s a -> s{_iaName = a});--instance FromJSON InputArtifact where-        parseJSON-          = withObject "InputArtifact"-              (\ x -> InputArtifact' <$> (x .: "name"))--instance Hashable InputArtifact--instance NFData InputArtifact--instance ToJSON InputArtifact where-        toJSON InputArtifact'{..}-          = object (catMaybes [Just ("name" .= _iaName)])---- | Represents information about a job.------------ /See:/ 'job' smart constructor.-data Job = Job'-    { _jData      :: !(Maybe JobData)-    , _jAccountId :: !(Maybe Text)-    , _jId        :: !(Maybe Text)-    , _jNonce     :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'Job' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jData' - Additional data about a job.------ * 'jAccountId' - The ID of the AWS account to use when performing the job.------ * 'jId' - The unique system-generated ID of the job.------ * 'jNonce' - A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.-job-    :: Job-job =-    Job'-    { _jData = Nothing-    , _jAccountId = Nothing-    , _jId = Nothing-    , _jNonce = Nothing-    }---- | Additional data about a job.-jData :: Lens' Job (Maybe JobData)-jData = lens _jData (\ s a -> s{_jData = a});---- | The ID of the AWS account to use when performing the job.-jAccountId :: Lens' Job (Maybe Text)-jAccountId = lens _jAccountId (\ s a -> s{_jAccountId = a});---- | The unique system-generated ID of the job.-jId :: Lens' Job (Maybe Text)-jId = lens _jId (\ s a -> s{_jId = a});---- | A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.-jNonce :: Lens' Job (Maybe Text)-jNonce = lens _jNonce (\ s a -> s{_jNonce = a});--instance FromJSON Job where-        parseJSON-          = withObject "Job"-              (\ x ->-                 Job' <$>-                   (x .:? "data") <*> (x .:? "accountId") <*>-                     (x .:? "id")-                     <*> (x .:? "nonce"))--instance Hashable Job--instance NFData Job---- | Represents additional information about a job required for a job worker to complete the job.------------ /See:/ 'jobData' smart constructor.-data JobData = JobData'-    { _jdContinuationToken   :: !(Maybe Text)-    , _jdOutputArtifacts     :: !(Maybe [Artifact])-    , _jdArtifactCredentials :: !(Maybe (Sensitive AWSSessionCredentials))-    , _jdPipelineContext     :: !(Maybe PipelineContext)-    , _jdEncryptionKey       :: !(Maybe EncryptionKey)-    , _jdActionTypeId        :: !(Maybe ActionTypeId)-    , _jdInputArtifacts      :: !(Maybe [Artifact])-    , _jdActionConfiguration :: !(Maybe ActionConfiguration)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'JobData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jdContinuationToken' - A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.------ * 'jdOutputArtifacts' - The output of the job.------ * 'jdArtifactCredentials' - Undocumented member.------ * 'jdPipelineContext' - Undocumented member.------ * 'jdEncryptionKey' - Undocumented member.------ * 'jdActionTypeId' - Undocumented member.------ * 'jdInputArtifacts' - The artifact supplied to the job.------ * 'jdActionConfiguration' - Undocumented member.-jobData-    :: JobData-jobData =-    JobData'-    { _jdContinuationToken = Nothing-    , _jdOutputArtifacts = Nothing-    , _jdArtifactCredentials = Nothing-    , _jdPipelineContext = Nothing-    , _jdEncryptionKey = Nothing-    , _jdActionTypeId = Nothing-    , _jdInputArtifacts = Nothing-    , _jdActionConfiguration = Nothing-    }---- | A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.-jdContinuationToken :: Lens' JobData (Maybe Text)-jdContinuationToken = lens _jdContinuationToken (\ s a -> s{_jdContinuationToken = a});---- | The output of the job.-jdOutputArtifacts :: Lens' JobData [Artifact]-jdOutputArtifacts = lens _jdOutputArtifacts (\ s a -> s{_jdOutputArtifacts = a}) . _Default . _Coerce;---- | Undocumented member.-jdArtifactCredentials :: Lens' JobData (Maybe AWSSessionCredentials)-jdArtifactCredentials = lens _jdArtifactCredentials (\ s a -> s{_jdArtifactCredentials = a}) . mapping _Sensitive;---- | Undocumented member.-jdPipelineContext :: Lens' JobData (Maybe PipelineContext)-jdPipelineContext = lens _jdPipelineContext (\ s a -> s{_jdPipelineContext = a});---- | Undocumented member.-jdEncryptionKey :: Lens' JobData (Maybe EncryptionKey)-jdEncryptionKey = lens _jdEncryptionKey (\ s a -> s{_jdEncryptionKey = a});---- | Undocumented member.-jdActionTypeId :: Lens' JobData (Maybe ActionTypeId)-jdActionTypeId = lens _jdActionTypeId (\ s a -> s{_jdActionTypeId = a});---- | The artifact supplied to the job.-jdInputArtifacts :: Lens' JobData [Artifact]-jdInputArtifacts = lens _jdInputArtifacts (\ s a -> s{_jdInputArtifacts = a}) . _Default . _Coerce;---- | Undocumented member.-jdActionConfiguration :: Lens' JobData (Maybe ActionConfiguration)-jdActionConfiguration = lens _jdActionConfiguration (\ s a -> s{_jdActionConfiguration = a});--instance FromJSON JobData where-        parseJSON-          = withObject "JobData"-              (\ x ->-                 JobData' <$>-                   (x .:? "continuationToken") <*>-                     (x .:? "outputArtifacts" .!= mempty)-                     <*> (x .:? "artifactCredentials")-                     <*> (x .:? "pipelineContext")-                     <*> (x .:? "encryptionKey")-                     <*> (x .:? "actionTypeId")-                     <*> (x .:? "inputArtifacts" .!= mempty)-                     <*> (x .:? "actionConfiguration"))--instance Hashable JobData--instance NFData JobData---- | Represents information about the details of a job.------------ /See:/ 'jobDetails' smart constructor.-data JobDetails = JobDetails'-    { _jdData      :: !(Maybe JobData)-    , _jdAccountId :: !(Maybe Text)-    , _jdId        :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'JobDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jdData' - Undocumented member.------ * 'jdAccountId' - The AWS account ID associated with the job.------ * 'jdId' - The unique system-generated ID of the job.-jobDetails-    :: JobDetails-jobDetails =-    JobDetails'-    { _jdData = Nothing-    , _jdAccountId = Nothing-    , _jdId = Nothing-    }---- | Undocumented member.-jdData :: Lens' JobDetails (Maybe JobData)-jdData = lens _jdData (\ s a -> s{_jdData = a});---- | The AWS account ID associated with the job.-jdAccountId :: Lens' JobDetails (Maybe Text)-jdAccountId = lens _jdAccountId (\ s a -> s{_jdAccountId = a});---- | The unique system-generated ID of the job.-jdId :: Lens' JobDetails (Maybe Text)-jdId = lens _jdId (\ s a -> s{_jdId = a});--instance FromJSON JobDetails where-        parseJSON-          = withObject "JobDetails"-              (\ x ->-                 JobDetails' <$>-                   (x .:? "data") <*> (x .:? "accountId") <*>-                     (x .:? "id"))--instance Hashable JobDetails--instance NFData JobDetails---- | Represents information about the output of an action.------------ /See:/ 'outputArtifact' smart constructor.-newtype OutputArtifact = OutputArtifact'-    { _oaName :: Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'OutputArtifact' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'oaName' - The name of the output of an artifact, such as "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions. Output artifact names must be unique within a pipeline.-outputArtifact-    :: Text -- ^ 'oaName'-    -> OutputArtifact-outputArtifact pName_ =-    OutputArtifact'-    { _oaName = pName_-    }---- | The name of the output of an artifact, such as "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions. Output artifact names must be unique within a pipeline.-oaName :: Lens' OutputArtifact Text-oaName = lens _oaName (\ s a -> s{_oaName = a});--instance FromJSON OutputArtifact where-        parseJSON-          = withObject "OutputArtifact"-              (\ x -> OutputArtifact' <$> (x .: "name"))--instance Hashable OutputArtifact--instance NFData OutputArtifact--instance ToJSON OutputArtifact where-        toJSON OutputArtifact'{..}-          = object (catMaybes [Just ("name" .= _oaName)])---- | Represents information about a pipeline to a job worker.------------ /See:/ 'pipelineContext' smart constructor.-data PipelineContext = PipelineContext'-    { _pcStage        :: !(Maybe StageContext)-    , _pcPipelineName :: !(Maybe Text)-    , _pcAction       :: !(Maybe ActionContext)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'PipelineContext' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pcStage' - The stage of the pipeline.------ * 'pcPipelineName' - The name of the pipeline. This is a user-specified value. Pipeline names must be unique across all pipeline names under an Amazon Web Services account.------ * 'pcAction' - Undocumented member.-pipelineContext-    :: PipelineContext-pipelineContext =-    PipelineContext'-    { _pcStage = Nothing-    , _pcPipelineName = Nothing-    , _pcAction = Nothing-    }---- | The stage of the pipeline.-pcStage :: Lens' PipelineContext (Maybe StageContext)-pcStage = lens _pcStage (\ s a -> s{_pcStage = a});---- | The name of the pipeline. This is a user-specified value. Pipeline names must be unique across all pipeline names under an Amazon Web Services account.-pcPipelineName :: Lens' PipelineContext (Maybe Text)-pcPipelineName = lens _pcPipelineName (\ s a -> s{_pcPipelineName = a});---- | Undocumented member.-pcAction :: Lens' PipelineContext (Maybe ActionContext)-pcAction = lens _pcAction (\ s a -> s{_pcAction = a});--instance FromJSON PipelineContext where-        parseJSON-          = withObject "PipelineContext"-              (\ x ->-                 PipelineContext' <$>-                   (x .:? "stage") <*> (x .:? "pipelineName") <*>-                     (x .:? "action"))--instance Hashable PipelineContext--instance NFData PipelineContext---- | Represents the structure of actions and stages to be performed in the pipeline.------------ /See:/ 'pipelineDeclaration' smart constructor.-data PipelineDeclaration = PipelineDeclaration'-    { _pdVersion       :: !(Maybe Nat)-    , _pdName          :: !Text-    , _pdRoleARN       :: !Text-    , _pdArtifactStore :: !ArtifactStore-    , _pdStages        :: ![StageDeclaration]-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'PipelineDeclaration' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pdVersion' - The version number of the pipeline. A new pipeline always has a version number of 1. This number is automatically incremented when a pipeline is updated.------ * 'pdName' - The name of the action to be performed.------ * 'pdRoleARN' - The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform actions with no actionRoleArn, or to use to assume roles for actions with an actionRoleArn.------ * 'pdArtifactStore' - Undocumented member.------ * 'pdStages' - The stage in which to perform the action.-pipelineDeclaration-    :: Text -- ^ 'pdName'-    -> Text -- ^ 'pdRoleARN'-    -> ArtifactStore -- ^ 'pdArtifactStore'-    -> PipelineDeclaration-pipelineDeclaration pName_ pRoleARN_ pArtifactStore_ =-    PipelineDeclaration'-    { _pdVersion = Nothing-    , _pdName = pName_-    , _pdRoleARN = pRoleARN_-    , _pdArtifactStore = pArtifactStore_-    , _pdStages = mempty-    }---- | The version number of the pipeline. A new pipeline always has a version number of 1. This number is automatically incremented when a pipeline is updated.-pdVersion :: Lens' PipelineDeclaration (Maybe Natural)-pdVersion = lens _pdVersion (\ s a -> s{_pdVersion = a}) . mapping _Nat;---- | The name of the action to be performed.-pdName :: Lens' PipelineDeclaration Text-pdName = lens _pdName (\ s a -> s{_pdName = a});---- | The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform actions with no actionRoleArn, or to use to assume roles for actions with an actionRoleArn.-pdRoleARN :: Lens' PipelineDeclaration Text-pdRoleARN = lens _pdRoleARN (\ s a -> s{_pdRoleARN = a});---- | Undocumented member.-pdArtifactStore :: Lens' PipelineDeclaration ArtifactStore-pdArtifactStore = lens _pdArtifactStore (\ s a -> s{_pdArtifactStore = a});---- | The stage in which to perform the action.-pdStages :: Lens' PipelineDeclaration [StageDeclaration]-pdStages = lens _pdStages (\ s a -> s{_pdStages = a}) . _Coerce;--instance FromJSON PipelineDeclaration where-        parseJSON-          = withObject "PipelineDeclaration"-              (\ x ->-                 PipelineDeclaration' <$>-                   (x .:? "version") <*> (x .: "name") <*>-                     (x .: "roleArn")-                     <*> (x .: "artifactStore")-                     <*> (x .:? "stages" .!= mempty))--instance Hashable PipelineDeclaration--instance NFData PipelineDeclaration--instance ToJSON PipelineDeclaration where-        toJSON PipelineDeclaration'{..}-          = object-              (catMaybes-                 [("version" .=) <$> _pdVersion,-                  Just ("name" .= _pdName),-                  Just ("roleArn" .= _pdRoleARN),-                  Just ("artifactStore" .= _pdArtifactStore),-                  Just ("stages" .= _pdStages)])---- | Represents information about an execution of a pipeline.------------ /See:/ 'pipelineExecution' smart constructor.-data PipelineExecution = PipelineExecution'-    { _peStatus              :: !(Maybe PipelineExecutionStatus)-    , _pePipelineName        :: !(Maybe Text)-    , _pePipelineVersion     :: !(Maybe Nat)-    , _pePipelineExecutionId :: !(Maybe Text)-    , _peArtifactRevisions   :: !(Maybe [ArtifactRevision])-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'PipelineExecution' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'peStatus' - The status of the pipeline execution.     * InProgress: The pipeline execution is currently running.     * Succeeded: The pipeline execution completed successfully.      * Superseded: While this pipeline execution was waiting for the next stage to be completed, a newer pipeline execution caught up and continued through the pipeline instead.      * Failed: The pipeline did not complete successfully.------ * 'pePipelineName' - The name of the pipeline that was executed.------ * 'pePipelineVersion' - The version number of the pipeline that was executed.------ * 'pePipelineExecutionId' - The ID of the pipeline execution.------ * 'peArtifactRevisions' - A list of ArtifactRevision objects included in a pipeline execution.-pipelineExecution-    :: PipelineExecution-pipelineExecution =-    PipelineExecution'-    { _peStatus = Nothing-    , _pePipelineName = Nothing-    , _pePipelineVersion = Nothing-    , _pePipelineExecutionId = Nothing-    , _peArtifactRevisions = Nothing-    }---- | The status of the pipeline execution.     * InProgress: The pipeline execution is currently running.     * Succeeded: The pipeline execution completed successfully.      * Superseded: While this pipeline execution was waiting for the next stage to be completed, a newer pipeline execution caught up and continued through the pipeline instead.      * Failed: The pipeline did not complete successfully.-peStatus :: Lens' PipelineExecution (Maybe PipelineExecutionStatus)-peStatus = lens _peStatus (\ s a -> s{_peStatus = a});---- | The name of the pipeline that was executed.-pePipelineName :: Lens' PipelineExecution (Maybe Text)-pePipelineName = lens _pePipelineName (\ s a -> s{_pePipelineName = a});---- | The version number of the pipeline that was executed.-pePipelineVersion :: Lens' PipelineExecution (Maybe Natural)-pePipelineVersion = lens _pePipelineVersion (\ s a -> s{_pePipelineVersion = a}) . mapping _Nat;---- | The ID of the pipeline execution.-pePipelineExecutionId :: Lens' PipelineExecution (Maybe Text)-pePipelineExecutionId = lens _pePipelineExecutionId (\ s a -> s{_pePipelineExecutionId = a});---- | A list of ArtifactRevision objects included in a pipeline execution.-peArtifactRevisions :: Lens' PipelineExecution [ArtifactRevision]-peArtifactRevisions = lens _peArtifactRevisions (\ s a -> s{_peArtifactRevisions = a}) . _Default . _Coerce;--instance FromJSON PipelineExecution where-        parseJSON-          = withObject "PipelineExecution"-              (\ x ->-                 PipelineExecution' <$>-                   (x .:? "status") <*> (x .:? "pipelineName") <*>-                     (x .:? "pipelineVersion")-                     <*> (x .:? "pipelineExecutionId")-                     <*> (x .:? "artifactRevisions" .!= mempty))--instance Hashable PipelineExecution--instance NFData PipelineExecution---- | Returns a summary of a pipeline.------------ /See:/ 'pipelineSummary' smart constructor.-data PipelineSummary = PipelineSummary'-    { _psCreated :: !(Maybe POSIX)-    , _psName    :: !(Maybe Text)-    , _psVersion :: !(Maybe Nat)-    , _psUpdated :: !(Maybe POSIX)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'PipelineSummary' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'psCreated' - The date and time the pipeline was created, in timestamp format.------ * 'psName' - The name of the pipeline.------ * 'psVersion' - The version number of the pipeline.------ * 'psUpdated' - The date and time of the last update to the pipeline, in timestamp format.-pipelineSummary-    :: PipelineSummary-pipelineSummary =-    PipelineSummary'-    { _psCreated = Nothing-    , _psName = Nothing-    , _psVersion = Nothing-    , _psUpdated = Nothing-    }---- | The date and time the pipeline was created, in timestamp format.-psCreated :: Lens' PipelineSummary (Maybe UTCTime)-psCreated = lens _psCreated (\ s a -> s{_psCreated = a}) . mapping _Time;---- | The name of the pipeline.-psName :: Lens' PipelineSummary (Maybe Text)-psName = lens _psName (\ s a -> s{_psName = a});---- | The version number of the pipeline.-psVersion :: Lens' PipelineSummary (Maybe Natural)-psVersion = lens _psVersion (\ s a -> s{_psVersion = a}) . mapping _Nat;---- | The date and time of the last update to the pipeline, in timestamp format.-psUpdated :: Lens' PipelineSummary (Maybe UTCTime)-psUpdated = lens _psUpdated (\ s a -> s{_psUpdated = a}) . mapping _Time;--instance FromJSON PipelineSummary where-        parseJSON-          = withObject "PipelineSummary"-              (\ x ->-                 PipelineSummary' <$>-                   (x .:? "created") <*> (x .:? "name") <*>-                     (x .:? "version")-                     <*> (x .:? "updated"))--instance Hashable PipelineSummary--instance NFData PipelineSummary---- | The location of the Amazon S3 bucket that contains a revision.------------ /See:/ 's3ArtifactLocation' smart constructor.-data S3ArtifactLocation = S3ArtifactLocation'-    { _salBucketName :: !Text-    , _salObjectKey  :: !Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'S3ArtifactLocation' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'salBucketName' - The name of the Amazon S3 bucket.------ * 'salObjectKey' - The key of the object in the Amazon S3 bucket, which uniquely identifies the object in the bucket.-s3ArtifactLocation-    :: Text -- ^ 'salBucketName'-    -> Text -- ^ 'salObjectKey'-    -> S3ArtifactLocation-s3ArtifactLocation pBucketName_ pObjectKey_ =-    S3ArtifactLocation'-    { _salBucketName = pBucketName_-    , _salObjectKey = pObjectKey_-    }---- | The name of the Amazon S3 bucket.-salBucketName :: Lens' S3ArtifactLocation Text-salBucketName = lens _salBucketName (\ s a -> s{_salBucketName = a});---- | The key of the object in the Amazon S3 bucket, which uniquely identifies the object in the bucket.-salObjectKey :: Lens' S3ArtifactLocation Text-salObjectKey = lens _salObjectKey (\ s a -> s{_salObjectKey = a});--instance FromJSON S3ArtifactLocation where-        parseJSON-          = withObject "S3ArtifactLocation"-              (\ x ->-                 S3ArtifactLocation' <$>-                   (x .: "bucketName") <*> (x .: "objectKey"))--instance Hashable S3ArtifactLocation--instance NFData S3ArtifactLocation---- | Represents information about a stage to a job worker.------------ /See:/ 'stageContext' smart constructor.-newtype StageContext = StageContext'-    { _scName :: Maybe Text-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'StageContext' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'scName' - The name of the stage.-stageContext-    :: StageContext-stageContext =-    StageContext'-    { _scName = Nothing-    }---- | The name of the stage.-scName :: Lens' StageContext (Maybe Text)-scName = lens _scName (\ s a -> s{_scName = a});--instance FromJSON StageContext where-        parseJSON-          = withObject "StageContext"-              (\ x -> StageContext' <$> (x .:? "name"))--instance Hashable StageContext--instance NFData StageContext---- | Represents information about a stage and its definition.------------ /See:/ 'stageDeclaration' smart constructor.-data StageDeclaration = StageDeclaration'-    { _sdBlockers :: !(Maybe [BlockerDeclaration])-    , _sdName     :: !Text-    , _sdActions  :: ![ActionDeclaration]-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'StageDeclaration' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sdBlockers' - Reserved for future use.------ * 'sdName' - The name of the stage.------ * 'sdActions' - The actions included in a stage.-stageDeclaration-    :: Text -- ^ 'sdName'-    -> StageDeclaration-stageDeclaration pName_ =-    StageDeclaration'-    { _sdBlockers = Nothing-    , _sdName = pName_-    , _sdActions = mempty-    }---- | Reserved for future use.-sdBlockers :: Lens' StageDeclaration [BlockerDeclaration]-sdBlockers = lens _sdBlockers (\ s a -> s{_sdBlockers = a}) . _Default . _Coerce;---- | The name of the stage.-sdName :: Lens' StageDeclaration Text-sdName = lens _sdName (\ s a -> s{_sdName = a});---- | The actions included in a stage.-sdActions :: Lens' StageDeclaration [ActionDeclaration]-sdActions = lens _sdActions (\ s a -> s{_sdActions = a}) . _Coerce;--instance FromJSON StageDeclaration where-        parseJSON-          = withObject "StageDeclaration"-              (\ x ->-                 StageDeclaration' <$>-                   (x .:? "blockers" .!= mempty) <*> (x .: "name") <*>-                     (x .:? "actions" .!= mempty))--instance Hashable StageDeclaration--instance NFData StageDeclaration--instance ToJSON StageDeclaration where-        toJSON StageDeclaration'{..}-          = object-              (catMaybes-                 [("blockers" .=) <$> _sdBlockers,-                  Just ("name" .= _sdName),-                  Just ("actions" .= _sdActions)])---- | Represents information about the run of a stage.------------ /See:/ 'stageExecution' smart constructor.-data StageExecution = StageExecution'-    { _sePipelineExecutionId :: !Text-    , _seStatus              :: !StageExecutionStatus-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'StageExecution' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sePipelineExecutionId' - The ID of the pipeline execution associated with the stage.------ * 'seStatus' - The status of the stage, or for a completed stage, the last status of the stage.-stageExecution-    :: Text -- ^ 'sePipelineExecutionId'-    -> StageExecutionStatus -- ^ 'seStatus'-    -> StageExecution-stageExecution pPipelineExecutionId_ pStatus_ =-    StageExecution'-    { _sePipelineExecutionId = pPipelineExecutionId_-    , _seStatus = pStatus_-    }---- | The ID of the pipeline execution associated with the stage.-sePipelineExecutionId :: Lens' StageExecution Text-sePipelineExecutionId = lens _sePipelineExecutionId (\ s a -> s{_sePipelineExecutionId = a});---- | The status of the stage, or for a completed stage, the last status of the stage.-seStatus :: Lens' StageExecution StageExecutionStatus-seStatus = lens _seStatus (\ s a -> s{_seStatus = a});--instance FromJSON StageExecution where-        parseJSON-          = withObject "StageExecution"-              (\ x ->-                 StageExecution' <$>-                   (x .: "pipelineExecutionId") <*> (x .: "status"))--instance Hashable StageExecution--instance NFData StageExecution---- | Represents information about the state of the stage.------------ /See:/ 'stageState' smart constructor.-data StageState = StageState'-    { _ssInboundTransitionState :: !(Maybe TransitionState)-    , _ssActionStates           :: !(Maybe [ActionState])-    , _ssStageName              :: !(Maybe Text)-    , _ssLatestExecution        :: !(Maybe StageExecution)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'StageState' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ssInboundTransitionState' - The state of the inbound transition, which is either enabled or disabled.------ * 'ssActionStates' - The state of the stage.------ * 'ssStageName' - The name of the stage.------ * 'ssLatestExecution' - Information about the latest execution in the stage, including its ID and status.-stageState-    :: StageState-stageState =-    StageState'-    { _ssInboundTransitionState = Nothing-    , _ssActionStates = Nothing-    , _ssStageName = Nothing-    , _ssLatestExecution = Nothing-    }---- | The state of the inbound transition, which is either enabled or disabled.-ssInboundTransitionState :: Lens' StageState (Maybe TransitionState)-ssInboundTransitionState = lens _ssInboundTransitionState (\ s a -> s{_ssInboundTransitionState = a});---- | The state of the stage.-ssActionStates :: Lens' StageState [ActionState]-ssActionStates = lens _ssActionStates (\ s a -> s{_ssActionStates = a}) . _Default . _Coerce;---- | The name of the stage.-ssStageName :: Lens' StageState (Maybe Text)-ssStageName = lens _ssStageName (\ s a -> s{_ssStageName = a});---- | Information about the latest execution in the stage, including its ID and status.-ssLatestExecution :: Lens' StageState (Maybe StageExecution)-ssLatestExecution = lens _ssLatestExecution (\ s a -> s{_ssLatestExecution = a});--instance FromJSON StageState where-        parseJSON-          = withObject "StageState"-              (\ x ->-                 StageState' <$>-                   (x .:? "inboundTransitionState") <*>-                     (x .:? "actionStates" .!= mempty)-                     <*> (x .:? "stageName")-                     <*> (x .:? "latestExecution"))--instance Hashable StageState--instance NFData StageState---- | A response to a PollForThirdPartyJobs request returned by AWS CodePipeline when there is a job to be worked upon by a partner action.------------ /See:/ 'thirdPartyJob' smart constructor.-data ThirdPartyJob = ThirdPartyJob'-    { _tpjClientId :: !(Maybe Text)-    , _tpjJobId    :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ThirdPartyJob' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tpjClientId' - The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.------ * 'tpjJobId' - The identifier used to identify the job in AWS CodePipeline.-thirdPartyJob-    :: ThirdPartyJob-thirdPartyJob =-    ThirdPartyJob'-    { _tpjClientId = Nothing-    , _tpjJobId = Nothing-    }---- | The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.-tpjClientId :: Lens' ThirdPartyJob (Maybe Text)-tpjClientId = lens _tpjClientId (\ s a -> s{_tpjClientId = a});---- | The identifier used to identify the job in AWS CodePipeline.-tpjJobId :: Lens' ThirdPartyJob (Maybe Text)-tpjJobId = lens _tpjJobId (\ s a -> s{_tpjJobId = a});--instance FromJSON ThirdPartyJob where-        parseJSON-          = withObject "ThirdPartyJob"-              (\ x ->-                 ThirdPartyJob' <$>-                   (x .:? "clientId") <*> (x .:? "jobId"))--instance Hashable ThirdPartyJob--instance NFData ThirdPartyJob---- | Represents information about the job data for a partner action.------------ /See:/ 'thirdPartyJobData' smart constructor.-data ThirdPartyJobData = ThirdPartyJobData'-    { _tpjdContinuationToken   :: !(Maybe Text)-    , _tpjdOutputArtifacts     :: !(Maybe [Artifact])-    , _tpjdArtifactCredentials :: !(Maybe (Sensitive AWSSessionCredentials))-    , _tpjdPipelineContext     :: !(Maybe PipelineContext)-    , _tpjdEncryptionKey       :: !(Maybe EncryptionKey)-    , _tpjdActionTypeId        :: !(Maybe ActionTypeId)-    , _tpjdInputArtifacts      :: !(Maybe [Artifact])-    , _tpjdActionConfiguration :: !(Maybe ActionConfiguration)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ThirdPartyJobData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tpjdContinuationToken' - A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.------ * 'tpjdOutputArtifacts' - The name of the artifact that will be the result of the action, if any. This name might be system-generated, such as "MyBuiltApp", or might be defined by the user when the action is created.------ * 'tpjdArtifactCredentials' - Undocumented member.------ * 'tpjdPipelineContext' - Undocumented member.------ * 'tpjdEncryptionKey' - The encryption key used to encrypt and decrypt data in the artifact store for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This is optional and might not be present.------ * 'tpjdActionTypeId' - Undocumented member.------ * 'tpjdInputArtifacts' - The name of the artifact that will be worked upon by the action, if any. This name might be system-generated, such as "MyApp", or might be defined by the user when the action is created. The input artifact name must match the name of an output artifact generated by an action in an earlier action or stage of the pipeline.------ * 'tpjdActionConfiguration' - Undocumented member.-thirdPartyJobData-    :: ThirdPartyJobData-thirdPartyJobData =-    ThirdPartyJobData'-    { _tpjdContinuationToken = Nothing-    , _tpjdOutputArtifacts = Nothing-    , _tpjdArtifactCredentials = Nothing-    , _tpjdPipelineContext = Nothing-    , _tpjdEncryptionKey = Nothing-    , _tpjdActionTypeId = Nothing-    , _tpjdInputArtifacts = Nothing-    , _tpjdActionConfiguration = Nothing-    }---- | A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.-tpjdContinuationToken :: Lens' ThirdPartyJobData (Maybe Text)-tpjdContinuationToken = lens _tpjdContinuationToken (\ s a -> s{_tpjdContinuationToken = a});---- | The name of the artifact that will be the result of the action, if any. This name might be system-generated, such as "MyBuiltApp", or might be defined by the user when the action is created.-tpjdOutputArtifacts :: Lens' ThirdPartyJobData [Artifact]-tpjdOutputArtifacts = lens _tpjdOutputArtifacts (\ s a -> s{_tpjdOutputArtifacts = a}) . _Default . _Coerce;---- | Undocumented member.-tpjdArtifactCredentials :: Lens' ThirdPartyJobData (Maybe AWSSessionCredentials)-tpjdArtifactCredentials = lens _tpjdArtifactCredentials (\ s a -> s{_tpjdArtifactCredentials = a}) . mapping _Sensitive;---- | Undocumented member.-tpjdPipelineContext :: Lens' ThirdPartyJobData (Maybe PipelineContext)-tpjdPipelineContext = lens _tpjdPipelineContext (\ s a -> s{_tpjdPipelineContext = a});---- | The encryption key used to encrypt and decrypt data in the artifact store for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This is optional and might not be present.-tpjdEncryptionKey :: Lens' ThirdPartyJobData (Maybe EncryptionKey)-tpjdEncryptionKey = lens _tpjdEncryptionKey (\ s a -> s{_tpjdEncryptionKey = a});---- | Undocumented member.-tpjdActionTypeId :: Lens' ThirdPartyJobData (Maybe ActionTypeId)-tpjdActionTypeId = lens _tpjdActionTypeId (\ s a -> s{_tpjdActionTypeId = a});---- | The name of the artifact that will be worked upon by the action, if any. This name might be system-generated, such as "MyApp", or might be defined by the user when the action is created. The input artifact name must match the name of an output artifact generated by an action in an earlier action or stage of the pipeline.-tpjdInputArtifacts :: Lens' ThirdPartyJobData [Artifact]-tpjdInputArtifacts = lens _tpjdInputArtifacts (\ s a -> s{_tpjdInputArtifacts = a}) . _Default . _Coerce;---- | Undocumented member.-tpjdActionConfiguration :: Lens' ThirdPartyJobData (Maybe ActionConfiguration)-tpjdActionConfiguration = lens _tpjdActionConfiguration (\ s a -> s{_tpjdActionConfiguration = a});--instance FromJSON ThirdPartyJobData where-        parseJSON-          = withObject "ThirdPartyJobData"-              (\ x ->-                 ThirdPartyJobData' <$>-                   (x .:? "continuationToken") <*>-                     (x .:? "outputArtifacts" .!= mempty)-                     <*> (x .:? "artifactCredentials")-                     <*> (x .:? "pipelineContext")-                     <*> (x .:? "encryptionKey")-                     <*> (x .:? "actionTypeId")-                     <*> (x .:? "inputArtifacts" .!= mempty)-                     <*> (x .:? "actionConfiguration"))--instance Hashable ThirdPartyJobData--instance NFData ThirdPartyJobData---- | The details of a job sent in response to a GetThirdPartyJobDetails request.------------ /See:/ 'thirdPartyJobDetails' smart constructor.-data ThirdPartyJobDetails = ThirdPartyJobDetails'-    { _tpjdData  :: !(Maybe ThirdPartyJobData)-    , _tpjdId    :: !(Maybe Text)-    , _tpjdNonce :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'ThirdPartyJobDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tpjdData' - The data to be returned by the third party job worker.------ * 'tpjdId' - The identifier used to identify the job details in AWS CodePipeline.------ * 'tpjdNonce' - A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.-thirdPartyJobDetails-    :: ThirdPartyJobDetails-thirdPartyJobDetails =-    ThirdPartyJobDetails'-    { _tpjdData = Nothing-    , _tpjdId = Nothing-    , _tpjdNonce = Nothing-    }---- | The data to be returned by the third party job worker.-tpjdData :: Lens' ThirdPartyJobDetails (Maybe ThirdPartyJobData)-tpjdData = lens _tpjdData (\ s a -> s{_tpjdData = a});---- | The identifier used to identify the job details in AWS CodePipeline.-tpjdId :: Lens' ThirdPartyJobDetails (Maybe Text)-tpjdId = lens _tpjdId (\ s a -> s{_tpjdId = a});---- | A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.-tpjdNonce :: Lens' ThirdPartyJobDetails (Maybe Text)-tpjdNonce = lens _tpjdNonce (\ s a -> s{_tpjdNonce = a});--instance FromJSON ThirdPartyJobDetails where-        parseJSON-          = withObject "ThirdPartyJobDetails"-              (\ x ->-                 ThirdPartyJobDetails' <$>-                   (x .:? "data") <*> (x .:? "id") <*> (x .:? "nonce"))--instance Hashable ThirdPartyJobDetails--instance NFData ThirdPartyJobDetails---- | Represents information about the state of transitions between one stage and another stage.------------ /See:/ 'transitionState' smart constructor.-data TransitionState = TransitionState'-    { _tsEnabled        :: !(Maybe Bool)-    , _tsDisabledReason :: !(Maybe Text)-    , _tsLastChangedAt  :: !(Maybe POSIX)-    , _tsLastChangedBy  :: !(Maybe Text)-    } deriving (Eq,Read,Show,Data,Typeable,Generic)---- | Creates a value of 'TransitionState' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tsEnabled' - Whether the transition between stages is enabled (true) or disabled (false).------ * 'tsDisabledReason' - The user-specified reason why the transition between two stages of a pipeline was disabled.------ * 'tsLastChangedAt' - The timestamp when the transition state was last changed.------ * 'tsLastChangedBy' - The ID of the user who last changed the transition state.-transitionState-    :: TransitionState-transitionState =-    TransitionState'-    { _tsEnabled = Nothing-    , _tsDisabledReason = Nothing-    , _tsLastChangedAt = Nothing-    , _tsLastChangedBy = Nothing-    }---- | Whether the transition between stages is enabled (true) or disabled (false).-tsEnabled :: Lens' TransitionState (Maybe Bool)-tsEnabled = lens _tsEnabled (\ s a -> s{_tsEnabled = a});---- | The user-specified reason why the transition between two stages of a pipeline was disabled.-tsDisabledReason :: Lens' TransitionState (Maybe Text)-tsDisabledReason = lens _tsDisabledReason (\ s a -> s{_tsDisabledReason = a});---- | The timestamp when the transition state was last changed.-tsLastChangedAt :: Lens' TransitionState (Maybe UTCTime)-tsLastChangedAt = lens _tsLastChangedAt (\ s a -> s{_tsLastChangedAt = a}) . mapping _Time;---- | The ID of the user who last changed the transition state.-tsLastChangedBy :: Lens' TransitionState (Maybe Text)-tsLastChangedBy = lens _tsLastChangedBy (\ s a -> s{_tsLastChangedBy = a});--instance FromJSON TransitionState where-        parseJSON-          = withObject "TransitionState"-              (\ x ->-                 TransitionState' <$>-                   (x .:? "enabled") <*> (x .:? "disabledReason") <*>-                     (x .:? "lastChangedAt")-                     <*> (x .:? "lastChangedBy"))--instance Hashable TransitionState--instance NFData TransitionState+-- Copyright   : (c) 2013-2017 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 Network.AWS.CodePipeline.Types.Product where++import Network.AWS.CodePipeline.Types.Sum+import Network.AWS.Lens+import Network.AWS.Prelude++-- | Represents an AWS session credentials object. These credentials are temporary credentials that are issued by AWS Secure Token Service (STS). They can be used to access input and output artifacts in the Amazon S3 bucket used to store artifact for the pipeline in AWS CodePipeline.+--+--+--+-- /See:/ 'awsSessionCredentials' smart constructor.+data AWSSessionCredentials = AWSSessionCredentials'+  { _ascAccessKeyId     :: !Text+  , _ascSecretAccessKey :: !Text+  , _ascSessionToken    :: !Text+  } deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AWSSessionCredentials' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ascAccessKeyId' - The access key for the session.+--+-- * 'ascSecretAccessKey' - The secret access key for the session.+--+-- * 'ascSessionToken' - The token for the session.+awsSessionCredentials+    :: Text -- ^ 'ascAccessKeyId'+    -> Text -- ^ 'ascSecretAccessKey'+    -> Text -- ^ 'ascSessionToken'+    -> AWSSessionCredentials+awsSessionCredentials pAccessKeyId_ pSecretAccessKey_ pSessionToken_ =+  AWSSessionCredentials'+  { _ascAccessKeyId = pAccessKeyId_+  , _ascSecretAccessKey = pSecretAccessKey_+  , _ascSessionToken = pSessionToken_+  }+++-- | The access key for the session.+ascAccessKeyId :: Lens' AWSSessionCredentials Text+ascAccessKeyId = lens _ascAccessKeyId (\ s a -> s{_ascAccessKeyId = a});++-- | The secret access key for the session.+ascSecretAccessKey :: Lens' AWSSessionCredentials Text+ascSecretAccessKey = lens _ascSecretAccessKey (\ s a -> s{_ascSecretAccessKey = a});++-- | The token for the session.+ascSessionToken :: Lens' AWSSessionCredentials Text+ascSessionToken = lens _ascSessionToken (\ s a -> s{_ascSessionToken = a});++instance FromJSON AWSSessionCredentials where+        parseJSON+          = withObject "AWSSessionCredentials"+              (\ x ->+                 AWSSessionCredentials' <$>+                   (x .: "accessKeyId") <*> (x .: "secretAccessKey") <*>+                     (x .: "sessionToken"))++instance Hashable AWSSessionCredentials where++instance NFData AWSSessionCredentials where++-- | Represents information about an action configuration.+--+--+--+-- /See:/ 'actionConfiguration' smart constructor.+newtype ActionConfiguration = ActionConfiguration'+  { _acConfiguration :: Maybe (Map Text Text)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionConfiguration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'acConfiguration' - The configuration data for the action.+actionConfiguration+    :: ActionConfiguration+actionConfiguration = ActionConfiguration' {_acConfiguration = Nothing}+++-- | The configuration data for the action.+acConfiguration :: Lens' ActionConfiguration (HashMap Text Text)+acConfiguration = lens _acConfiguration (\ s a -> s{_acConfiguration = a}) . _Default . _Map;++instance FromJSON ActionConfiguration where+        parseJSON+          = withObject "ActionConfiguration"+              (\ x ->+                 ActionConfiguration' <$>+                   (x .:? "configuration" .!= mempty))++instance Hashable ActionConfiguration where++instance NFData ActionConfiguration where++-- | Represents information about an action configuration property.+--+--+--+-- /See:/ 'actionConfigurationProperty' smart constructor.+data ActionConfigurationProperty = ActionConfigurationProperty'+  { _acpQueryable   :: !(Maybe Bool)+  , _acpType        :: !(Maybe ActionConfigurationPropertyType)+  , _acpDescription :: !(Maybe Text)+  , _acpName        :: !Text+  , _acpRequired    :: !Bool+  , _acpKey         :: !Bool+  , _acpSecret      :: !Bool+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionConfigurationProperty' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'acpQueryable' - Indicates that the property will be used in conjunction with PollForJobs. When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret. If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to additional restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.+--+-- * 'acpType' - The type of the configuration property.+--+-- * 'acpDescription' - The description of the action configuration property that will be displayed to users.+--+-- * 'acpName' - The name of the action configuration property.+--+-- * 'acpRequired' - Whether the configuration property is a required value.+--+-- * 'acpKey' - Whether the configuration property is a key.+--+-- * 'acpSecret' - Whether the configuration property is secret. Secrets are hidden from all calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and PollForThirdPartyJobs. When updating a pipeline, passing * * * * * without changing any other values of the action will preserve the prior value of the secret.+actionConfigurationProperty+    :: Text -- ^ 'acpName'+    -> Bool -- ^ 'acpRequired'+    -> Bool -- ^ 'acpKey'+    -> Bool -- ^ 'acpSecret'+    -> ActionConfigurationProperty+actionConfigurationProperty pName_ pRequired_ pKey_ pSecret_ =+  ActionConfigurationProperty'+  { _acpQueryable = Nothing+  , _acpType = Nothing+  , _acpDescription = Nothing+  , _acpName = pName_+  , _acpRequired = pRequired_+  , _acpKey = pKey_+  , _acpSecret = pSecret_+  }+++-- | Indicates that the property will be used in conjunction with PollForJobs. When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret. If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to additional restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.+acpQueryable :: Lens' ActionConfigurationProperty (Maybe Bool)+acpQueryable = lens _acpQueryable (\ s a -> s{_acpQueryable = a});++-- | The type of the configuration property.+acpType :: Lens' ActionConfigurationProperty (Maybe ActionConfigurationPropertyType)+acpType = lens _acpType (\ s a -> s{_acpType = a});++-- | The description of the action configuration property that will be displayed to users.+acpDescription :: Lens' ActionConfigurationProperty (Maybe Text)+acpDescription = lens _acpDescription (\ s a -> s{_acpDescription = a});++-- | The name of the action configuration property.+acpName :: Lens' ActionConfigurationProperty Text+acpName = lens _acpName (\ s a -> s{_acpName = a});++-- | Whether the configuration property is a required value.+acpRequired :: Lens' ActionConfigurationProperty Bool+acpRequired = lens _acpRequired (\ s a -> s{_acpRequired = a});++-- | Whether the configuration property is a key.+acpKey :: Lens' ActionConfigurationProperty Bool+acpKey = lens _acpKey (\ s a -> s{_acpKey = a});++-- | Whether the configuration property is secret. Secrets are hidden from all calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and PollForThirdPartyJobs. When updating a pipeline, passing * * * * * without changing any other values of the action will preserve the prior value of the secret.+acpSecret :: Lens' ActionConfigurationProperty Bool+acpSecret = lens _acpSecret (\ s a -> s{_acpSecret = a});++instance FromJSON ActionConfigurationProperty where+        parseJSON+          = withObject "ActionConfigurationProperty"+              (\ x ->+                 ActionConfigurationProperty' <$>+                   (x .:? "queryable") <*> (x .:? "type") <*>+                     (x .:? "description")+                     <*> (x .: "name")+                     <*> (x .: "required")+                     <*> (x .: "key")+                     <*> (x .: "secret"))++instance Hashable ActionConfigurationProperty where++instance NFData ActionConfigurationProperty where++instance ToJSON ActionConfigurationProperty where+        toJSON ActionConfigurationProperty'{..}+          = object+              (catMaybes+                 [("queryable" .=) <$> _acpQueryable,+                  ("type" .=) <$> _acpType,+                  ("description" .=) <$> _acpDescription,+                  Just ("name" .= _acpName),+                  Just ("required" .= _acpRequired),+                  Just ("key" .= _acpKey),+                  Just ("secret" .= _acpSecret)])++-- | Represents the context of an action within the stage of a pipeline to a job worker.+--+--+--+-- /See:/ 'actionContext' smart constructor.+newtype ActionContext = ActionContext'+  { _acName :: Maybe Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionContext' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'acName' - The name of the action within the context of a job.+actionContext+    :: ActionContext+actionContext = ActionContext' {_acName = Nothing}+++-- | The name of the action within the context of a job.+acName :: Lens' ActionContext (Maybe Text)+acName = lens _acName (\ s a -> s{_acName = a});++instance FromJSON ActionContext where+        parseJSON+          = withObject "ActionContext"+              (\ x -> ActionContext' <$> (x .:? "name"))++instance Hashable ActionContext where++instance NFData ActionContext where++-- | Represents information about an action declaration.+--+--+--+-- /See:/ 'actionDeclaration' smart constructor.+data ActionDeclaration = ActionDeclaration'+  { _adOutputArtifacts :: !(Maybe [OutputArtifact])+  , _adRunOrder        :: !(Maybe Nat)+  , _adConfiguration   :: !(Maybe (Map Text Text))+  , _adInputArtifacts  :: !(Maybe [InputArtifact])+  , _adRoleARN         :: !(Maybe Text)+  , _adName            :: !Text+  , _adActionTypeId    :: !ActionTypeId+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionDeclaration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'adOutputArtifacts' - The name or ID of the result of the action declaration, such as a test or build artifact.+--+-- * 'adRunOrder' - The order in which actions are run.+--+-- * 'adConfiguration' - The action declaration's configuration.+--+-- * 'adInputArtifacts' - The name or ID of the artifact consumed by the action, such as a test or build artifact.+--+-- * 'adRoleARN' - The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.+--+-- * 'adName' - The action declaration's name.+--+-- * 'adActionTypeId' - The configuration information for the action type.+actionDeclaration+    :: Text -- ^ 'adName'+    -> ActionTypeId -- ^ 'adActionTypeId'+    -> ActionDeclaration+actionDeclaration pName_ pActionTypeId_ =+  ActionDeclaration'+  { _adOutputArtifacts = Nothing+  , _adRunOrder = Nothing+  , _adConfiguration = Nothing+  , _adInputArtifacts = Nothing+  , _adRoleARN = Nothing+  , _adName = pName_+  , _adActionTypeId = pActionTypeId_+  }+++-- | The name or ID of the result of the action declaration, such as a test or build artifact.+adOutputArtifacts :: Lens' ActionDeclaration [OutputArtifact]+adOutputArtifacts = lens _adOutputArtifacts (\ s a -> s{_adOutputArtifacts = a}) . _Default . _Coerce;++-- | The order in which actions are run.+adRunOrder :: Lens' ActionDeclaration (Maybe Natural)+adRunOrder = lens _adRunOrder (\ s a -> s{_adRunOrder = a}) . mapping _Nat;++-- | The action declaration's configuration.+adConfiguration :: Lens' ActionDeclaration (HashMap Text Text)+adConfiguration = lens _adConfiguration (\ s a -> s{_adConfiguration = a}) . _Default . _Map;++-- | The name or ID of the artifact consumed by the action, such as a test or build artifact.+adInputArtifacts :: Lens' ActionDeclaration [InputArtifact]+adInputArtifacts = lens _adInputArtifacts (\ s a -> s{_adInputArtifacts = a}) . _Default . _Coerce;++-- | The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.+adRoleARN :: Lens' ActionDeclaration (Maybe Text)+adRoleARN = lens _adRoleARN (\ s a -> s{_adRoleARN = a});++-- | The action declaration's name.+adName :: Lens' ActionDeclaration Text+adName = lens _adName (\ s a -> s{_adName = a});++-- | The configuration information for the action type.+adActionTypeId :: Lens' ActionDeclaration ActionTypeId+adActionTypeId = lens _adActionTypeId (\ s a -> s{_adActionTypeId = a});++instance FromJSON ActionDeclaration where+        parseJSON+          = withObject "ActionDeclaration"+              (\ x ->+                 ActionDeclaration' <$>+                   (x .:? "outputArtifacts" .!= mempty) <*>+                     (x .:? "runOrder")+                     <*> (x .:? "configuration" .!= mempty)+                     <*> (x .:? "inputArtifacts" .!= mempty)+                     <*> (x .:? "roleArn")+                     <*> (x .: "name")+                     <*> (x .: "actionTypeId"))++instance Hashable ActionDeclaration where++instance NFData ActionDeclaration where++instance ToJSON ActionDeclaration where+        toJSON ActionDeclaration'{..}+          = object+              (catMaybes+                 [("outputArtifacts" .=) <$> _adOutputArtifacts,+                  ("runOrder" .=) <$> _adRunOrder,+                  ("configuration" .=) <$> _adConfiguration,+                  ("inputArtifacts" .=) <$> _adInputArtifacts,+                  ("roleArn" .=) <$> _adRoleARN,+                  Just ("name" .= _adName),+                  Just ("actionTypeId" .= _adActionTypeId)])++-- | Represents information about the run of an action.+--+--+--+-- /See:/ 'actionExecution' smart constructor.+data ActionExecution = ActionExecution'+  { _aeLastUpdatedBy        :: !(Maybe Text)+  , _aeSummary              :: !(Maybe Text)+  , _aeStatus               :: !(Maybe ActionExecutionStatus)+  , _aeLastStatusChange     :: !(Maybe POSIX)+  , _aeToken                :: !(Maybe Text)+  , _aeExternalExecutionURL :: !(Maybe Text)+  , _aeExternalExecutionId  :: !(Maybe Text)+  , _aeErrorDetails         :: !(Maybe ErrorDetails)+  , _aePercentComplete      :: !(Maybe Nat)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionExecution' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aeLastUpdatedBy' - The ARN of the user who last changed the pipeline.+--+-- * 'aeSummary' - A summary of the run of the action.+--+-- * 'aeStatus' - The status of the action, or for a completed action, the last status of the action.+--+-- * 'aeLastStatusChange' - The last status change of the action.+--+-- * 'aeToken' - The system-generated token used to identify a unique approval request. The token for each open approval request can be obtained using the GetPipelineState command and is used to validate that the approval request corresponding to this token is still valid.+--+-- * 'aeExternalExecutionURL' - The URL of a resource external to AWS that will be used when running the action, for example an external repository URL.+--+-- * 'aeExternalExecutionId' - The external ID of the run of the action.+--+-- * 'aeErrorDetails' - The details of an error returned by a URL external to AWS.+--+-- * 'aePercentComplete' - A percentage of completeness of the action as it runs.+actionExecution+    :: ActionExecution+actionExecution =+  ActionExecution'+  { _aeLastUpdatedBy = Nothing+  , _aeSummary = Nothing+  , _aeStatus = Nothing+  , _aeLastStatusChange = Nothing+  , _aeToken = Nothing+  , _aeExternalExecutionURL = Nothing+  , _aeExternalExecutionId = Nothing+  , _aeErrorDetails = Nothing+  , _aePercentComplete = Nothing+  }+++-- | The ARN of the user who last changed the pipeline.+aeLastUpdatedBy :: Lens' ActionExecution (Maybe Text)+aeLastUpdatedBy = lens _aeLastUpdatedBy (\ s a -> s{_aeLastUpdatedBy = a});++-- | A summary of the run of the action.+aeSummary :: Lens' ActionExecution (Maybe Text)+aeSummary = lens _aeSummary (\ s a -> s{_aeSummary = a});++-- | The status of the action, or for a completed action, the last status of the action.+aeStatus :: Lens' ActionExecution (Maybe ActionExecutionStatus)+aeStatus = lens _aeStatus (\ s a -> s{_aeStatus = a});++-- | The last status change of the action.+aeLastStatusChange :: Lens' ActionExecution (Maybe UTCTime)+aeLastStatusChange = lens _aeLastStatusChange (\ s a -> s{_aeLastStatusChange = a}) . mapping _Time;++-- | The system-generated token used to identify a unique approval request. The token for each open approval request can be obtained using the GetPipelineState command and is used to validate that the approval request corresponding to this token is still valid.+aeToken :: Lens' ActionExecution (Maybe Text)+aeToken = lens _aeToken (\ s a -> s{_aeToken = a});++-- | The URL of a resource external to AWS that will be used when running the action, for example an external repository URL.+aeExternalExecutionURL :: Lens' ActionExecution (Maybe Text)+aeExternalExecutionURL = lens _aeExternalExecutionURL (\ s a -> s{_aeExternalExecutionURL = a});++-- | The external ID of the run of the action.+aeExternalExecutionId :: Lens' ActionExecution (Maybe Text)+aeExternalExecutionId = lens _aeExternalExecutionId (\ s a -> s{_aeExternalExecutionId = a});++-- | The details of an error returned by a URL external to AWS.+aeErrorDetails :: Lens' ActionExecution (Maybe ErrorDetails)+aeErrorDetails = lens _aeErrorDetails (\ s a -> s{_aeErrorDetails = a});++-- | A percentage of completeness of the action as it runs.+aePercentComplete :: Lens' ActionExecution (Maybe Natural)+aePercentComplete = lens _aePercentComplete (\ s a -> s{_aePercentComplete = a}) . mapping _Nat;++instance FromJSON ActionExecution where+        parseJSON+          = withObject "ActionExecution"+              (\ x ->+                 ActionExecution' <$>+                   (x .:? "lastUpdatedBy") <*> (x .:? "summary") <*>+                     (x .:? "status")+                     <*> (x .:? "lastStatusChange")+                     <*> (x .:? "token")+                     <*> (x .:? "externalExecutionUrl")+                     <*> (x .:? "externalExecutionId")+                     <*> (x .:? "errorDetails")+                     <*> (x .:? "percentComplete"))++instance Hashable ActionExecution where++instance NFData ActionExecution where++-- | Represents information about the version (or revision) of an action.+--+--+--+-- /See:/ 'actionRevision' smart constructor.+data ActionRevision = ActionRevision'+  { _aRevisionId       :: !Text+  , _aRevisionChangeId :: !Text+  , _aCreated          :: !POSIX+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionRevision' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aRevisionId' - The system-generated unique ID that identifies the revision number of the action.+--+-- * 'aRevisionChangeId' - The unique identifier of the change that set the state to this revision, for example a deployment ID or timestamp.+--+-- * 'aCreated' - The date and time when the most recent version of the action was created, in timestamp format.+actionRevision+    :: Text -- ^ 'aRevisionId'+    -> Text -- ^ 'aRevisionChangeId'+    -> UTCTime -- ^ 'aCreated'+    -> ActionRevision+actionRevision pRevisionId_ pRevisionChangeId_ pCreated_ =+  ActionRevision'+  { _aRevisionId = pRevisionId_+  , _aRevisionChangeId = pRevisionChangeId_+  , _aCreated = _Time # pCreated_+  }+++-- | The system-generated unique ID that identifies the revision number of the action.+aRevisionId :: Lens' ActionRevision Text+aRevisionId = lens _aRevisionId (\ s a -> s{_aRevisionId = a});++-- | The unique identifier of the change that set the state to this revision, for example a deployment ID or timestamp.+aRevisionChangeId :: Lens' ActionRevision Text+aRevisionChangeId = lens _aRevisionChangeId (\ s a -> s{_aRevisionChangeId = a});++-- | The date and time when the most recent version of the action was created, in timestamp format.+aCreated :: Lens' ActionRevision UTCTime+aCreated = lens _aCreated (\ s a -> s{_aCreated = a}) . _Time;++instance FromJSON ActionRevision where+        parseJSON+          = withObject "ActionRevision"+              (\ x ->+                 ActionRevision' <$>+                   (x .: "revisionId") <*> (x .: "revisionChangeId") <*>+                     (x .: "created"))++instance Hashable ActionRevision where++instance NFData ActionRevision where++instance ToJSON ActionRevision where+        toJSON ActionRevision'{..}+          = object+              (catMaybes+                 [Just ("revisionId" .= _aRevisionId),+                  Just ("revisionChangeId" .= _aRevisionChangeId),+                  Just ("created" .= _aCreated)])++-- | Represents information about the state of an action.+--+--+--+-- /See:/ 'actionState' smart constructor.+data ActionState = ActionState'+  { _asRevisionURL     :: !(Maybe Text)+  , _asEntityURL       :: !(Maybe Text)+  , _asActionName      :: !(Maybe Text)+  , _asCurrentRevision :: !(Maybe ActionRevision)+  , _asLatestExecution :: !(Maybe ActionExecution)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionState' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asRevisionURL' - A URL link for more information about the revision, such as a commit details page.+--+-- * 'asEntityURL' - A URL link for more information about the state of the action, such as a deployment group details page.+--+-- * 'asActionName' - The name of the action.+--+-- * 'asCurrentRevision' - Represents information about the version (or revision) of an action.+--+-- * 'asLatestExecution' - Represents information about the run of an action.+actionState+    :: ActionState+actionState =+  ActionState'+  { _asRevisionURL = Nothing+  , _asEntityURL = Nothing+  , _asActionName = Nothing+  , _asCurrentRevision = Nothing+  , _asLatestExecution = Nothing+  }+++-- | A URL link for more information about the revision, such as a commit details page.+asRevisionURL :: Lens' ActionState (Maybe Text)+asRevisionURL = lens _asRevisionURL (\ s a -> s{_asRevisionURL = a});++-- | A URL link for more information about the state of the action, such as a deployment group details page.+asEntityURL :: Lens' ActionState (Maybe Text)+asEntityURL = lens _asEntityURL (\ s a -> s{_asEntityURL = a});++-- | The name of the action.+asActionName :: Lens' ActionState (Maybe Text)+asActionName = lens _asActionName (\ s a -> s{_asActionName = a});++-- | Represents information about the version (or revision) of an action.+asCurrentRevision :: Lens' ActionState (Maybe ActionRevision)+asCurrentRevision = lens _asCurrentRevision (\ s a -> s{_asCurrentRevision = a});++-- | Represents information about the run of an action.+asLatestExecution :: Lens' ActionState (Maybe ActionExecution)+asLatestExecution = lens _asLatestExecution (\ s a -> s{_asLatestExecution = a});++instance FromJSON ActionState where+        parseJSON+          = withObject "ActionState"+              (\ x ->+                 ActionState' <$>+                   (x .:? "revisionUrl") <*> (x .:? "entityUrl") <*>+                     (x .:? "actionName")+                     <*> (x .:? "currentRevision")+                     <*> (x .:? "latestExecution"))++instance Hashable ActionState where++instance NFData ActionState where++-- | Returns information about the details of an action type.+--+--+--+-- /See:/ 'actionType' smart constructor.+data ActionType = ActionType'+  { _atSettings                      :: !(Maybe ActionTypeSettings)+  , _atActionConfigurationProperties :: !(Maybe [ActionConfigurationProperty])+  , _atId                            :: !ActionTypeId+  , _atInputArtifactDetails          :: !ArtifactDetails+  , _atOutputArtifactDetails         :: !ArtifactDetails+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionType' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'atSettings' - The settings for the action type.+--+-- * 'atActionConfigurationProperties' - The configuration properties for the action type.+--+-- * 'atId' - Represents information about an action type.+--+-- * 'atInputArtifactDetails' - The details of the input artifact for the action, such as its commit ID.+--+-- * 'atOutputArtifactDetails' - The details of the output artifact of the action, such as its commit ID.+actionType+    :: ActionTypeId -- ^ 'atId'+    -> ArtifactDetails -- ^ 'atInputArtifactDetails'+    -> ArtifactDetails -- ^ 'atOutputArtifactDetails'+    -> ActionType+actionType pId_ pInputArtifactDetails_ pOutputArtifactDetails_ =+  ActionType'+  { _atSettings = Nothing+  , _atActionConfigurationProperties = Nothing+  , _atId = pId_+  , _atInputArtifactDetails = pInputArtifactDetails_+  , _atOutputArtifactDetails = pOutputArtifactDetails_+  }+++-- | The settings for the action type.+atSettings :: Lens' ActionType (Maybe ActionTypeSettings)+atSettings = lens _atSettings (\ s a -> s{_atSettings = a});++-- | The configuration properties for the action type.+atActionConfigurationProperties :: Lens' ActionType [ActionConfigurationProperty]+atActionConfigurationProperties = lens _atActionConfigurationProperties (\ s a -> s{_atActionConfigurationProperties = a}) . _Default . _Coerce;++-- | Represents information about an action type.+atId :: Lens' ActionType ActionTypeId+atId = lens _atId (\ s a -> s{_atId = a});++-- | The details of the input artifact for the action, such as its commit ID.+atInputArtifactDetails :: Lens' ActionType ArtifactDetails+atInputArtifactDetails = lens _atInputArtifactDetails (\ s a -> s{_atInputArtifactDetails = a});++-- | The details of the output artifact of the action, such as its commit ID.+atOutputArtifactDetails :: Lens' ActionType ArtifactDetails+atOutputArtifactDetails = lens _atOutputArtifactDetails (\ s a -> s{_atOutputArtifactDetails = a});++instance FromJSON ActionType where+        parseJSON+          = withObject "ActionType"+              (\ x ->+                 ActionType' <$>+                   (x .:? "settings") <*>+                     (x .:? "actionConfigurationProperties" .!= mempty)+                     <*> (x .: "id")+                     <*> (x .: "inputArtifactDetails")+                     <*> (x .: "outputArtifactDetails"))++instance Hashable ActionType where++instance NFData ActionType where++-- | Represents information about an action type.+--+--+--+-- /See:/ 'actionTypeId' smart constructor.+data ActionTypeId = ActionTypeId'+  { _atiCategory :: !ActionCategory+  , _atiOwner    :: !ActionOwner+  , _atiProvider :: !Text+  , _atiVersion  :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionTypeId' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'atiCategory' - A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the values below.+--+-- * 'atiOwner' - The creator of the action being called.+--+-- * 'atiProvider' - The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy.+--+-- * 'atiVersion' - A string that identifies the action type.+actionTypeId+    :: ActionCategory -- ^ 'atiCategory'+    -> ActionOwner -- ^ 'atiOwner'+    -> Text -- ^ 'atiProvider'+    -> Text -- ^ 'atiVersion'+    -> ActionTypeId+actionTypeId pCategory_ pOwner_ pProvider_ pVersion_ =+  ActionTypeId'+  { _atiCategory = pCategory_+  , _atiOwner = pOwner_+  , _atiProvider = pProvider_+  , _atiVersion = pVersion_+  }+++-- | A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the values below.+atiCategory :: Lens' ActionTypeId ActionCategory+atiCategory = lens _atiCategory (\ s a -> s{_atiCategory = a});++-- | The creator of the action being called.+atiOwner :: Lens' ActionTypeId ActionOwner+atiOwner = lens _atiOwner (\ s a -> s{_atiOwner = a});++-- | The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy.+atiProvider :: Lens' ActionTypeId Text+atiProvider = lens _atiProvider (\ s a -> s{_atiProvider = a});++-- | A string that identifies the action type.+atiVersion :: Lens' ActionTypeId Text+atiVersion = lens _atiVersion (\ s a -> s{_atiVersion = a});++instance FromJSON ActionTypeId where+        parseJSON+          = withObject "ActionTypeId"+              (\ x ->+                 ActionTypeId' <$>+                   (x .: "category") <*> (x .: "owner") <*>+                     (x .: "provider")+                     <*> (x .: "version"))++instance Hashable ActionTypeId where++instance NFData ActionTypeId where++instance ToJSON ActionTypeId where+        toJSON ActionTypeId'{..}+          = object+              (catMaybes+                 [Just ("category" .= _atiCategory),+                  Just ("owner" .= _atiOwner),+                  Just ("provider" .= _atiProvider),+                  Just ("version" .= _atiVersion)])++-- | Returns information about the settings for an action type.+--+--+--+-- /See:/ 'actionTypeSettings' smart constructor.+data ActionTypeSettings = ActionTypeSettings'+  { _atsThirdPartyConfigurationURL :: !(Maybe Text)+  , _atsExecutionURLTemplate       :: !(Maybe Text)+  , _atsRevisionURLTemplate        :: !(Maybe Text)+  , _atsEntityURLTemplate          :: !(Maybe Text)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ActionTypeSettings' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'atsThirdPartyConfigurationURL' - The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.+--+-- * 'atsExecutionURLTemplate' - The URL returned to the AWS CodePipeline console that contains a link to the top-level landing page for the external system, such as console page for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS CodePipeline console and provides a link to the execution entity of the external action.+--+-- * 'atsRevisionURLTemplate' - The URL returned to the AWS CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.+--+-- * 'atsEntityURLTemplate' - The URL returned to the AWS CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for an AWS CodeDeploy deployment group. This link is provided as part of the action display within the pipeline.+actionTypeSettings+    :: ActionTypeSettings+actionTypeSettings =+  ActionTypeSettings'+  { _atsThirdPartyConfigurationURL = Nothing+  , _atsExecutionURLTemplate = Nothing+  , _atsRevisionURLTemplate = Nothing+  , _atsEntityURLTemplate = Nothing+  }+++-- | The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.+atsThirdPartyConfigurationURL :: Lens' ActionTypeSettings (Maybe Text)+atsThirdPartyConfigurationURL = lens _atsThirdPartyConfigurationURL (\ s a -> s{_atsThirdPartyConfigurationURL = a});++-- | The URL returned to the AWS CodePipeline console that contains a link to the top-level landing page for the external system, such as console page for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS CodePipeline console and provides a link to the execution entity of the external action.+atsExecutionURLTemplate :: Lens' ActionTypeSettings (Maybe Text)+atsExecutionURLTemplate = lens _atsExecutionURLTemplate (\ s a -> s{_atsExecutionURLTemplate = a});++-- | The URL returned to the AWS CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.+atsRevisionURLTemplate :: Lens' ActionTypeSettings (Maybe Text)+atsRevisionURLTemplate = lens _atsRevisionURLTemplate (\ s a -> s{_atsRevisionURLTemplate = a});++-- | The URL returned to the AWS CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for an AWS CodeDeploy deployment group. This link is provided as part of the action display within the pipeline.+atsEntityURLTemplate :: Lens' ActionTypeSettings (Maybe Text)+atsEntityURLTemplate = lens _atsEntityURLTemplate (\ s a -> s{_atsEntityURLTemplate = a});++instance FromJSON ActionTypeSettings where+        parseJSON+          = withObject "ActionTypeSettings"+              (\ x ->+                 ActionTypeSettings' <$>+                   (x .:? "thirdPartyConfigurationUrl") <*>+                     (x .:? "executionUrlTemplate")+                     <*> (x .:? "revisionUrlTemplate")+                     <*> (x .:? "entityUrlTemplate"))++instance Hashable ActionTypeSettings where++instance NFData ActionTypeSettings where++instance ToJSON ActionTypeSettings where+        toJSON ActionTypeSettings'{..}+          = object+              (catMaybes+                 [("thirdPartyConfigurationUrl" .=) <$>+                    _atsThirdPartyConfigurationURL,+                  ("executionUrlTemplate" .=) <$>+                    _atsExecutionURLTemplate,+                  ("revisionUrlTemplate" .=) <$>+                    _atsRevisionURLTemplate,+                  ("entityUrlTemplate" .=) <$> _atsEntityURLTemplate])++-- | Represents information about the result of an approval request.+--+--+--+-- /See:/ 'approvalResult' smart constructor.+data ApprovalResult = ApprovalResult'+  { _arSummary :: !Text+  , _arStatus  :: !ApprovalStatus+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ApprovalResult' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'arSummary' - The summary of the current status of the approval request.+--+-- * 'arStatus' - The response submitted by a reviewer assigned to an approval action request.+approvalResult+    :: Text -- ^ 'arSummary'+    -> ApprovalStatus -- ^ 'arStatus'+    -> ApprovalResult+approvalResult pSummary_ pStatus_ =+  ApprovalResult' {_arSummary = pSummary_, _arStatus = pStatus_}+++-- | The summary of the current status of the approval request.+arSummary :: Lens' ApprovalResult Text+arSummary = lens _arSummary (\ s a -> s{_arSummary = a});++-- | The response submitted by a reviewer assigned to an approval action request.+arStatus :: Lens' ApprovalResult ApprovalStatus+arStatus = lens _arStatus (\ s a -> s{_arStatus = a});++instance Hashable ApprovalResult where++instance NFData ApprovalResult where++instance ToJSON ApprovalResult where+        toJSON ApprovalResult'{..}+          = object+              (catMaybes+                 [Just ("summary" .= _arSummary),+                  Just ("status" .= _arStatus)])++-- | Represents information about an artifact that will be worked upon by actions in the pipeline.+--+--+--+-- /See:/ 'artifact' smart constructor.+data Artifact = Artifact'+  { _aLocation :: !(Maybe ArtifactLocation)+  , _aName     :: !(Maybe Text)+  , _aRevision :: !(Maybe Text)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Artifact' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aLocation' - The location of an artifact.+--+-- * 'aName' - The artifact's name.+--+-- * 'aRevision' - The artifact's revision ID. Depending on the type of object, this could be a commit ID (GitHub) or a revision ID (Amazon S3).+artifact+    :: Artifact+artifact =+  Artifact' {_aLocation = Nothing, _aName = Nothing, _aRevision = Nothing}+++-- | The location of an artifact.+aLocation :: Lens' Artifact (Maybe ArtifactLocation)+aLocation = lens _aLocation (\ s a -> s{_aLocation = a});++-- | The artifact's name.+aName :: Lens' Artifact (Maybe Text)+aName = lens _aName (\ s a -> s{_aName = a});++-- | The artifact's revision ID. Depending on the type of object, this could be a commit ID (GitHub) or a revision ID (Amazon S3).+aRevision :: Lens' Artifact (Maybe Text)+aRevision = lens _aRevision (\ s a -> s{_aRevision = a});++instance FromJSON Artifact where+        parseJSON+          = withObject "Artifact"+              (\ x ->+                 Artifact' <$>+                   (x .:? "location") <*> (x .:? "name") <*>+                     (x .:? "revision"))++instance Hashable Artifact where++instance NFData Artifact where++-- | Returns information about the details of an artifact.+--+--+--+-- /See:/ 'artifactDetails' smart constructor.+data ArtifactDetails = ArtifactDetails'+  { _adMinimumCount :: !Nat+  , _adMaximumCount :: !Nat+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ArtifactDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'adMinimumCount' - The minimum number of artifacts allowed for the action type.+--+-- * 'adMaximumCount' - The maximum number of artifacts allowed for the action type.+artifactDetails+    :: Natural -- ^ 'adMinimumCount'+    -> Natural -- ^ 'adMaximumCount'+    -> ArtifactDetails+artifactDetails pMinimumCount_ pMaximumCount_ =+  ArtifactDetails'+  { _adMinimumCount = _Nat # pMinimumCount_+  , _adMaximumCount = _Nat # pMaximumCount_+  }+++-- | The minimum number of artifacts allowed for the action type.+adMinimumCount :: Lens' ArtifactDetails Natural+adMinimumCount = lens _adMinimumCount (\ s a -> s{_adMinimumCount = a}) . _Nat;++-- | The maximum number of artifacts allowed for the action type.+adMaximumCount :: Lens' ArtifactDetails Natural+adMaximumCount = lens _adMaximumCount (\ s a -> s{_adMaximumCount = a}) . _Nat;++instance FromJSON ArtifactDetails where+        parseJSON+          = withObject "ArtifactDetails"+              (\ x ->+                 ArtifactDetails' <$>+                   (x .: "minimumCount") <*> (x .: "maximumCount"))++instance Hashable ArtifactDetails where++instance NFData ArtifactDetails where++instance ToJSON ArtifactDetails where+        toJSON ArtifactDetails'{..}+          = object+              (catMaybes+                 [Just ("minimumCount" .= _adMinimumCount),+                  Just ("maximumCount" .= _adMaximumCount)])++-- | Represents information about the location of an artifact.+--+--+--+-- /See:/ 'artifactLocation' smart constructor.+data ArtifactLocation = ArtifactLocation'+  { _alS3Location :: !(Maybe S3ArtifactLocation)+  , _alType       :: !(Maybe ArtifactLocationType)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ArtifactLocation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'alS3Location' - The Amazon S3 bucket that contains the artifact.+--+-- * 'alType' - The type of artifact in the location.+artifactLocation+    :: ArtifactLocation+artifactLocation =+  ArtifactLocation' {_alS3Location = Nothing, _alType = Nothing}+++-- | The Amazon S3 bucket that contains the artifact.+alS3Location :: Lens' ArtifactLocation (Maybe S3ArtifactLocation)+alS3Location = lens _alS3Location (\ s a -> s{_alS3Location = a});++-- | The type of artifact in the location.+alType :: Lens' ArtifactLocation (Maybe ArtifactLocationType)+alType = lens _alType (\ s a -> s{_alType = a});++instance FromJSON ArtifactLocation where+        parseJSON+          = withObject "ArtifactLocation"+              (\ x ->+                 ArtifactLocation' <$>+                   (x .:? "s3Location") <*> (x .:? "type"))++instance Hashable ArtifactLocation where++instance NFData ArtifactLocation where++-- | Represents revision details of an artifact.+--+--+--+-- /See:/ 'artifactRevision' smart constructor.+data ArtifactRevision = ArtifactRevision'+  { _arRevisionSummary          :: !(Maybe Text)+  , _arRevisionURL              :: !(Maybe Text)+  , _arCreated                  :: !(Maybe POSIX)+  , _arName                     :: !(Maybe Text)+  , _arRevisionId               :: !(Maybe Text)+  , _arRevisionChangeIdentifier :: !(Maybe Text)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ArtifactRevision' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'arRevisionSummary' - Summary information about the most recent revision of the artifact. For GitHub and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets or actions, the user-provided content of a @codepipeline-artifact-revision-summary@ key specified in the object metadata.+--+-- * 'arRevisionURL' - The commit ID for the artifact revision. For artifacts stored in GitHub or AWS CodeCommit repositories, the commit ID is linked to a commit details page.+--+-- * 'arCreated' - The date and time when the most recent revision of the artifact was created, in timestamp format.+--+-- * 'arName' - The name of an artifact. This name might be system-generated, such as "MyApp", or might be defined by the user when an action is created.+--+-- * 'arRevisionId' - The revision ID of the artifact.+--+-- * 'arRevisionChangeIdentifier' - An additional identifier for a revision, such as a commit date or, for artifacts stored in Amazon S3 buckets, the ETag value.+artifactRevision+    :: ArtifactRevision+artifactRevision =+  ArtifactRevision'+  { _arRevisionSummary = Nothing+  , _arRevisionURL = Nothing+  , _arCreated = Nothing+  , _arName = Nothing+  , _arRevisionId = Nothing+  , _arRevisionChangeIdentifier = Nothing+  }+++-- | Summary information about the most recent revision of the artifact. For GitHub and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets or actions, the user-provided content of a @codepipeline-artifact-revision-summary@ key specified in the object metadata.+arRevisionSummary :: Lens' ArtifactRevision (Maybe Text)+arRevisionSummary = lens _arRevisionSummary (\ s a -> s{_arRevisionSummary = a});++-- | The commit ID for the artifact revision. For artifacts stored in GitHub or AWS CodeCommit repositories, the commit ID is linked to a commit details page.+arRevisionURL :: Lens' ArtifactRevision (Maybe Text)+arRevisionURL = lens _arRevisionURL (\ s a -> s{_arRevisionURL = a});++-- | The date and time when the most recent revision of the artifact was created, in timestamp format.+arCreated :: Lens' ArtifactRevision (Maybe UTCTime)+arCreated = lens _arCreated (\ s a -> s{_arCreated = a}) . mapping _Time;++-- | The name of an artifact. This name might be system-generated, such as "MyApp", or might be defined by the user when an action is created.+arName :: Lens' ArtifactRevision (Maybe Text)+arName = lens _arName (\ s a -> s{_arName = a});++-- | The revision ID of the artifact.+arRevisionId :: Lens' ArtifactRevision (Maybe Text)+arRevisionId = lens _arRevisionId (\ s a -> s{_arRevisionId = a});++-- | An additional identifier for a revision, such as a commit date or, for artifacts stored in Amazon S3 buckets, the ETag value.+arRevisionChangeIdentifier :: Lens' ArtifactRevision (Maybe Text)+arRevisionChangeIdentifier = lens _arRevisionChangeIdentifier (\ s a -> s{_arRevisionChangeIdentifier = a});++instance FromJSON ArtifactRevision where+        parseJSON+          = withObject "ArtifactRevision"+              (\ x ->+                 ArtifactRevision' <$>+                   (x .:? "revisionSummary") <*> (x .:? "revisionUrl")+                     <*> (x .:? "created")+                     <*> (x .:? "name")+                     <*> (x .:? "revisionId")+                     <*> (x .:? "revisionChangeIdentifier"))++instance Hashable ArtifactRevision where++instance NFData ArtifactRevision where++-- | The Amazon S3 bucket where artifacts are stored for the pipeline.+--+--+--+-- /See:/ 'artifactStore' smart constructor.+data ArtifactStore = ArtifactStore'+  { _asEncryptionKey :: !(Maybe EncryptionKey)+  , _asType          :: !ArtifactStoreType+  , _asLocation      :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ArtifactStore' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asEncryptionKey' - The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.+--+-- * 'asType' - The type of the artifact store, such as S3.+--+-- * 'asLocation' - The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder within the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.+artifactStore+    :: ArtifactStoreType -- ^ 'asType'+    -> Text -- ^ 'asLocation'+    -> ArtifactStore+artifactStore pType_ pLocation_ =+  ArtifactStore'+  {_asEncryptionKey = Nothing, _asType = pType_, _asLocation = pLocation_}+++-- | The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.+asEncryptionKey :: Lens' ArtifactStore (Maybe EncryptionKey)+asEncryptionKey = lens _asEncryptionKey (\ s a -> s{_asEncryptionKey = a});++-- | The type of the artifact store, such as S3.+asType :: Lens' ArtifactStore ArtifactStoreType+asType = lens _asType (\ s a -> s{_asType = a});++-- | The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder within the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.+asLocation :: Lens' ArtifactStore Text+asLocation = lens _asLocation (\ s a -> s{_asLocation = a});++instance FromJSON ArtifactStore where+        parseJSON+          = withObject "ArtifactStore"+              (\ x ->+                 ArtifactStore' <$>+                   (x .:? "encryptionKey") <*> (x .: "type") <*>+                     (x .: "location"))++instance Hashable ArtifactStore where++instance NFData ArtifactStore where++instance ToJSON ArtifactStore where+        toJSON ArtifactStore'{..}+          = object+              (catMaybes+                 [("encryptionKey" .=) <$> _asEncryptionKey,+                  Just ("type" .= _asType),+                  Just ("location" .= _asLocation)])++-- | Reserved for future use.+--+--+--+-- /See:/ 'blockerDeclaration' smart constructor.+data BlockerDeclaration = BlockerDeclaration'+  { _bdName :: !Text+  , _bdType :: !BlockerType+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'BlockerDeclaration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bdName' - Reserved for future use.+--+-- * 'bdType' - Reserved for future use.+blockerDeclaration+    :: Text -- ^ 'bdName'+    -> BlockerType -- ^ 'bdType'+    -> BlockerDeclaration+blockerDeclaration pName_ pType_ =+  BlockerDeclaration' {_bdName = pName_, _bdType = pType_}+++-- | Reserved for future use.+bdName :: Lens' BlockerDeclaration Text+bdName = lens _bdName (\ s a -> s{_bdName = a});++-- | Reserved for future use.+bdType :: Lens' BlockerDeclaration BlockerType+bdType = lens _bdType (\ s a -> s{_bdType = a});++instance FromJSON BlockerDeclaration where+        parseJSON+          = withObject "BlockerDeclaration"+              (\ x ->+                 BlockerDeclaration' <$>+                   (x .: "name") <*> (x .: "type"))++instance Hashable BlockerDeclaration where++instance NFData BlockerDeclaration where++instance ToJSON BlockerDeclaration where+        toJSON BlockerDeclaration'{..}+          = object+              (catMaybes+                 [Just ("name" .= _bdName), Just ("type" .= _bdType)])++-- | Represents information about a current revision.+--+--+--+-- /See:/ 'currentRevision' smart constructor.+data CurrentRevision = CurrentRevision'+  { _crRevisionSummary  :: !(Maybe Text)+  , _crCreated          :: !(Maybe POSIX)+  , _crRevision         :: !Text+  , _crChangeIdentifier :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CurrentRevision' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crRevisionSummary' - The summary of the most recent revision of the artifact.+--+-- * 'crCreated' - The date and time when the most recent revision of the artifact was created, in timestamp format.+--+-- * 'crRevision' - The revision ID of the current version of an artifact.+--+-- * 'crChangeIdentifier' - The change identifier for the current revision.+currentRevision+    :: Text -- ^ 'crRevision'+    -> Text -- ^ 'crChangeIdentifier'+    -> CurrentRevision+currentRevision pRevision_ pChangeIdentifier_ =+  CurrentRevision'+  { _crRevisionSummary = Nothing+  , _crCreated = Nothing+  , _crRevision = pRevision_+  , _crChangeIdentifier = pChangeIdentifier_+  }+++-- | The summary of the most recent revision of the artifact.+crRevisionSummary :: Lens' CurrentRevision (Maybe Text)+crRevisionSummary = lens _crRevisionSummary (\ s a -> s{_crRevisionSummary = a});++-- | The date and time when the most recent revision of the artifact was created, in timestamp format.+crCreated :: Lens' CurrentRevision (Maybe UTCTime)+crCreated = lens _crCreated (\ s a -> s{_crCreated = a}) . mapping _Time;++-- | The revision ID of the current version of an artifact.+crRevision :: Lens' CurrentRevision Text+crRevision = lens _crRevision (\ s a -> s{_crRevision = a});++-- | The change identifier for the current revision.+crChangeIdentifier :: Lens' CurrentRevision Text+crChangeIdentifier = lens _crChangeIdentifier (\ s a -> s{_crChangeIdentifier = a});++instance Hashable CurrentRevision where++instance NFData CurrentRevision where++instance ToJSON CurrentRevision where+        toJSON CurrentRevision'{..}+          = object+              (catMaybes+                 [("revisionSummary" .=) <$> _crRevisionSummary,+                  ("created" .=) <$> _crCreated,+                  Just ("revision" .= _crRevision),+                  Just ("changeIdentifier" .= _crChangeIdentifier)])++-- | Represents information about the key used to encrypt data in the artifact store, such as an AWS Key Management Service (AWS KMS) key.+--+--+--+-- /See:/ 'encryptionKey' smart constructor.+data EncryptionKey = EncryptionKey'+  { _ekId   :: !Text+  , _ekType :: !EncryptionKeyType+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EncryptionKey' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ekId' - The ID used to identify the key. For an AWS KMS key, this is the key ID or key ARN.+--+-- * 'ekType' - The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.+encryptionKey+    :: Text -- ^ 'ekId'+    -> EncryptionKeyType -- ^ 'ekType'+    -> EncryptionKey+encryptionKey pId_ pType_ = EncryptionKey' {_ekId = pId_, _ekType = pType_}+++-- | The ID used to identify the key. For an AWS KMS key, this is the key ID or key ARN.+ekId :: Lens' EncryptionKey Text+ekId = lens _ekId (\ s a -> s{_ekId = a});++-- | The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.+ekType :: Lens' EncryptionKey EncryptionKeyType+ekType = lens _ekType (\ s a -> s{_ekType = a});++instance FromJSON EncryptionKey where+        parseJSON+          = withObject "EncryptionKey"+              (\ x ->+                 EncryptionKey' <$> (x .: "id") <*> (x .: "type"))++instance Hashable EncryptionKey where++instance NFData EncryptionKey where++instance ToJSON EncryptionKey where+        toJSON EncryptionKey'{..}+          = object+              (catMaybes+                 [Just ("id" .= _ekId), Just ("type" .= _ekType)])++-- | Represents information about an error in AWS CodePipeline.+--+--+--+-- /See:/ 'errorDetails' smart constructor.+data ErrorDetails = ErrorDetails'+  { _edCode    :: !(Maybe Text)+  , _edMessage :: !(Maybe Text)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ErrorDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'edCode' - The system ID or error number code of the error.+--+-- * 'edMessage' - The text of the error message.+errorDetails+    :: ErrorDetails+errorDetails = ErrorDetails' {_edCode = Nothing, _edMessage = Nothing}+++-- | The system ID or error number code of the error.+edCode :: Lens' ErrorDetails (Maybe Text)+edCode = lens _edCode (\ s a -> s{_edCode = a});++-- | The text of the error message.+edMessage :: Lens' ErrorDetails (Maybe Text)+edMessage = lens _edMessage (\ s a -> s{_edMessage = a});++instance FromJSON ErrorDetails where+        parseJSON+          = withObject "ErrorDetails"+              (\ x ->+                 ErrorDetails' <$>+                   (x .:? "code") <*> (x .:? "message"))++instance Hashable ErrorDetails where++instance NFData ErrorDetails where++-- | The details of the actions taken and results produced on an artifact as it passes through stages in the pipeline.+--+--+--+-- /See:/ 'executionDetails' smart constructor.+data ExecutionDetails = ExecutionDetails'+  { _edSummary             :: !(Maybe Text)+  , _edExternalExecutionId :: !(Maybe Text)+  , _edPercentComplete     :: !(Maybe Nat)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ExecutionDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'edSummary' - The summary of the current status of the actions.+--+-- * 'edExternalExecutionId' - The system-generated unique ID of this action used to identify this job worker in any external systems, such as AWS CodeDeploy.+--+-- * 'edPercentComplete' - The percentage of work completed on the action, represented on a scale of zero to one hundred percent.+executionDetails+    :: ExecutionDetails+executionDetails =+  ExecutionDetails'+  { _edSummary = Nothing+  , _edExternalExecutionId = Nothing+  , _edPercentComplete = Nothing+  }+++-- | The summary of the current status of the actions.+edSummary :: Lens' ExecutionDetails (Maybe Text)+edSummary = lens _edSummary (\ s a -> s{_edSummary = a});++-- | The system-generated unique ID of this action used to identify this job worker in any external systems, such as AWS CodeDeploy.+edExternalExecutionId :: Lens' ExecutionDetails (Maybe Text)+edExternalExecutionId = lens _edExternalExecutionId (\ s a -> s{_edExternalExecutionId = a});++-- | The percentage of work completed on the action, represented on a scale of zero to one hundred percent.+edPercentComplete :: Lens' ExecutionDetails (Maybe Natural)+edPercentComplete = lens _edPercentComplete (\ s a -> s{_edPercentComplete = a}) . mapping _Nat;++instance Hashable ExecutionDetails where++instance NFData ExecutionDetails where++instance ToJSON ExecutionDetails where+        toJSON ExecutionDetails'{..}+          = object+              (catMaybes+                 [("summary" .=) <$> _edSummary,+                  ("externalExecutionId" .=) <$>+                    _edExternalExecutionId,+                  ("percentComplete" .=) <$> _edPercentComplete])++-- | Represents information about failure details.+--+--+--+-- /See:/ 'failureDetails' smart constructor.+data FailureDetails = FailureDetails'+  { _fdExternalExecutionId :: !(Maybe Text)+  , _fdType                :: !FailureType+  , _fdMessage             :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FailureDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fdExternalExecutionId' - The external ID of the run of the action that failed.+--+-- * 'fdType' - The type of the failure.+--+-- * 'fdMessage' - The message about the failure.+failureDetails+    :: FailureType -- ^ 'fdType'+    -> Text -- ^ 'fdMessage'+    -> FailureDetails+failureDetails pType_ pMessage_ =+  FailureDetails'+  {_fdExternalExecutionId = Nothing, _fdType = pType_, _fdMessage = pMessage_}+++-- | The external ID of the run of the action that failed.+fdExternalExecutionId :: Lens' FailureDetails (Maybe Text)+fdExternalExecutionId = lens _fdExternalExecutionId (\ s a -> s{_fdExternalExecutionId = a});++-- | The type of the failure.+fdType :: Lens' FailureDetails FailureType+fdType = lens _fdType (\ s a -> s{_fdType = a});++-- | The message about the failure.+fdMessage :: Lens' FailureDetails Text+fdMessage = lens _fdMessage (\ s a -> s{_fdMessage = a});++instance Hashable FailureDetails where++instance NFData FailureDetails where++instance ToJSON FailureDetails where+        toJSON FailureDetails'{..}+          = object+              (catMaybes+                 [("externalExecutionId" .=) <$>+                    _fdExternalExecutionId,+                  Just ("type" .= _fdType),+                  Just ("message" .= _fdMessage)])++-- | Represents information about an artifact to be worked on, such as a test or build artifact.+--+--+--+-- /See:/ 'inputArtifact' smart constructor.+newtype InputArtifact = InputArtifact'+  { _iaName :: Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'InputArtifact' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'iaName' - The name of the artifact to be worked on, for example, "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.+inputArtifact+    :: Text -- ^ 'iaName'+    -> InputArtifact+inputArtifact pName_ = InputArtifact' {_iaName = pName_}+++-- | The name of the artifact to be worked on, for example, "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.+iaName :: Lens' InputArtifact Text+iaName = lens _iaName (\ s a -> s{_iaName = a});++instance FromJSON InputArtifact where+        parseJSON+          = withObject "InputArtifact"+              (\ x -> InputArtifact' <$> (x .: "name"))++instance Hashable InputArtifact where++instance NFData InputArtifact where++instance ToJSON InputArtifact where+        toJSON InputArtifact'{..}+          = object (catMaybes [Just ("name" .= _iaName)])++-- | Represents information about a job.+--+--+--+-- /See:/ 'job' smart constructor.+data Job = Job'+  { _jData      :: !(Maybe JobData)+  , _jAccountId :: !(Maybe Text)+  , _jId        :: !(Maybe Text)+  , _jNonce     :: !(Maybe Text)+  } deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Job' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jData' - Additional data about a job.+--+-- * 'jAccountId' - The ID of the AWS account to use when performing the job.+--+-- * 'jId' - The unique system-generated ID of the job.+--+-- * 'jNonce' - A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. Use this number in an 'AcknowledgeJob' request.+job+    :: Job+job =+  Job'+  {_jData = Nothing, _jAccountId = Nothing, _jId = Nothing, _jNonce = Nothing}+++-- | Additional data about a job.+jData :: Lens' Job (Maybe JobData)+jData = lens _jData (\ s a -> s{_jData = a});++-- | The ID of the AWS account to use when performing the job.+jAccountId :: Lens' Job (Maybe Text)+jAccountId = lens _jAccountId (\ s a -> s{_jAccountId = a});++-- | The unique system-generated ID of the job.+jId :: Lens' Job (Maybe Text)+jId = lens _jId (\ s a -> s{_jId = a});++-- | A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. Use this number in an 'AcknowledgeJob' request.+jNonce :: Lens' Job (Maybe Text)+jNonce = lens _jNonce (\ s a -> s{_jNonce = a});++instance FromJSON Job where+        parseJSON+          = withObject "Job"+              (\ x ->+                 Job' <$>+                   (x .:? "data") <*> (x .:? "accountId") <*>+                     (x .:? "id")+                     <*> (x .:? "nonce"))++instance Hashable Job where++instance NFData Job where++-- | Represents additional information about a job required for a job worker to complete the job.+--+--+--+-- /See:/ 'jobData' smart constructor.+data JobData = JobData'+  { _jdContinuationToken   :: !(Maybe Text)+  , _jdOutputArtifacts     :: !(Maybe [Artifact])+  , _jdArtifactCredentials :: !(Maybe (Sensitive AWSSessionCredentials))+  , _jdPipelineContext     :: !(Maybe PipelineContext)+  , _jdEncryptionKey       :: !(Maybe EncryptionKey)+  , _jdActionTypeId        :: !(Maybe ActionTypeId)+  , _jdInputArtifacts      :: !(Maybe [Artifact])+  , _jdActionConfiguration :: !(Maybe ActionConfiguration)+  } deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'JobData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jdContinuationToken' - A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.+--+-- * 'jdOutputArtifacts' - The output of the job.+--+-- * 'jdArtifactCredentials' - Represents an AWS session credentials object. These credentials are temporary credentials that are issued by AWS Secure Token Service (STS). They can be used to access input and output artifacts in the Amazon S3 bucket used to store artifact for the pipeline in AWS CodePipeline.+--+-- * 'jdPipelineContext' - Represents information about a pipeline to a job worker.+--+-- * 'jdEncryptionKey' - Represents information about the key used to encrypt data in the artifact store, such as an AWS Key Management Service (AWS KMS) key.+--+-- * 'jdActionTypeId' - Represents information about an action type.+--+-- * 'jdInputArtifacts' - The artifact supplied to the job.+--+-- * 'jdActionConfiguration' - Represents information about an action configuration.+jobData+    :: JobData+jobData =+  JobData'+  { _jdContinuationToken = Nothing+  , _jdOutputArtifacts = Nothing+  , _jdArtifactCredentials = Nothing+  , _jdPipelineContext = Nothing+  , _jdEncryptionKey = Nothing+  , _jdActionTypeId = Nothing+  , _jdInputArtifacts = Nothing+  , _jdActionConfiguration = Nothing+  }+++-- | A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.+jdContinuationToken :: Lens' JobData (Maybe Text)+jdContinuationToken = lens _jdContinuationToken (\ s a -> s{_jdContinuationToken = a});++-- | The output of the job.+jdOutputArtifacts :: Lens' JobData [Artifact]+jdOutputArtifacts = lens _jdOutputArtifacts (\ s a -> s{_jdOutputArtifacts = a}) . _Default . _Coerce;++-- | Represents an AWS session credentials object. These credentials are temporary credentials that are issued by AWS Secure Token Service (STS). They can be used to access input and output artifacts in the Amazon S3 bucket used to store artifact for the pipeline in AWS CodePipeline.+jdArtifactCredentials :: Lens' JobData (Maybe AWSSessionCredentials)+jdArtifactCredentials = lens _jdArtifactCredentials (\ s a -> s{_jdArtifactCredentials = a}) . mapping _Sensitive;++-- | Represents information about a pipeline to a job worker.+jdPipelineContext :: Lens' JobData (Maybe PipelineContext)+jdPipelineContext = lens _jdPipelineContext (\ s a -> s{_jdPipelineContext = a});++-- | Represents information about the key used to encrypt data in the artifact store, such as an AWS Key Management Service (AWS KMS) key.+jdEncryptionKey :: Lens' JobData (Maybe EncryptionKey)+jdEncryptionKey = lens _jdEncryptionKey (\ s a -> s{_jdEncryptionKey = a});++-- | Represents information about an action type.+jdActionTypeId :: Lens' JobData (Maybe ActionTypeId)+jdActionTypeId = lens _jdActionTypeId (\ s a -> s{_jdActionTypeId = a});++-- | The artifact supplied to the job.+jdInputArtifacts :: Lens' JobData [Artifact]+jdInputArtifacts = lens _jdInputArtifacts (\ s a -> s{_jdInputArtifacts = a}) . _Default . _Coerce;++-- | Represents information about an action configuration.+jdActionConfiguration :: Lens' JobData (Maybe ActionConfiguration)+jdActionConfiguration = lens _jdActionConfiguration (\ s a -> s{_jdActionConfiguration = a});++instance FromJSON JobData where+        parseJSON+          = withObject "JobData"+              (\ x ->+                 JobData' <$>+                   (x .:? "continuationToken") <*>+                     (x .:? "outputArtifacts" .!= mempty)+                     <*> (x .:? "artifactCredentials")+                     <*> (x .:? "pipelineContext")+                     <*> (x .:? "encryptionKey")+                     <*> (x .:? "actionTypeId")+                     <*> (x .:? "inputArtifacts" .!= mempty)+                     <*> (x .:? "actionConfiguration"))++instance Hashable JobData where++instance NFData JobData where++-- | Represents information about the details of a job.+--+--+--+-- /See:/ 'jobDetails' smart constructor.+data JobDetails = JobDetails'+  { _jdData      :: !(Maybe JobData)+  , _jdAccountId :: !(Maybe Text)+  , _jdId        :: !(Maybe Text)+  } deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'JobDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jdData' - Represents additional information about a job required for a job worker to complete the job.+--+-- * 'jdAccountId' - The AWS account ID associated with the job.+--+-- * 'jdId' - The unique system-generated ID of the job.+jobDetails+    :: JobDetails+jobDetails =+  JobDetails' {_jdData = Nothing, _jdAccountId = Nothing, _jdId = Nothing}+++-- | Represents additional information about a job required for a job worker to complete the job.+jdData :: Lens' JobDetails (Maybe JobData)+jdData = lens _jdData (\ s a -> s{_jdData = a});++-- | The AWS account ID associated with the job.+jdAccountId :: Lens' JobDetails (Maybe Text)+jdAccountId = lens _jdAccountId (\ s a -> s{_jdAccountId = a});++-- | The unique system-generated ID of the job.+jdId :: Lens' JobDetails (Maybe Text)+jdId = lens _jdId (\ s a -> s{_jdId = a});++instance FromJSON JobDetails where+        parseJSON+          = withObject "JobDetails"+              (\ x ->+                 JobDetails' <$>+                   (x .:? "data") <*> (x .:? "accountId") <*>+                     (x .:? "id"))++instance Hashable JobDetails where++instance NFData JobDetails where++-- | Represents information about the output of an action.+--+--+--+-- /See:/ 'outputArtifact' smart constructor.+newtype OutputArtifact = OutputArtifact'+  { _oaName :: Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'OutputArtifact' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oaName' - The name of the output of an artifact, such as "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions. Output artifact names must be unique within a pipeline.+outputArtifact+    :: Text -- ^ 'oaName'+    -> OutputArtifact+outputArtifact pName_ = OutputArtifact' {_oaName = pName_}+++-- | The name of the output of an artifact, such as "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions. Output artifact names must be unique within a pipeline.+oaName :: Lens' OutputArtifact Text+oaName = lens _oaName (\ s a -> s{_oaName = a});++instance FromJSON OutputArtifact where+        parseJSON+          = withObject "OutputArtifact"+              (\ x -> OutputArtifact' <$> (x .: "name"))++instance Hashable OutputArtifact where++instance NFData OutputArtifact where++instance ToJSON OutputArtifact where+        toJSON OutputArtifact'{..}+          = object (catMaybes [Just ("name" .= _oaName)])++-- | Represents information about a pipeline to a job worker.+--+--+--+-- /See:/ 'pipelineContext' smart constructor.+data PipelineContext = PipelineContext'+  { _pcStage        :: !(Maybe StageContext)+  , _pcPipelineName :: !(Maybe Text)+  , _pcAction       :: !(Maybe ActionContext)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PipelineContext' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pcStage' - The stage of the pipeline.+--+-- * 'pcPipelineName' - The name of the pipeline. This is a user-specified value. Pipeline names must be unique across all pipeline names under an Amazon Web Services account.+--+-- * 'pcAction' - The context of an action to a job worker within the stage of a pipeline.+pipelineContext+    :: PipelineContext+pipelineContext =+  PipelineContext'+  {_pcStage = Nothing, _pcPipelineName = Nothing, _pcAction = Nothing}+++-- | The stage of the pipeline.+pcStage :: Lens' PipelineContext (Maybe StageContext)+pcStage = lens _pcStage (\ s a -> s{_pcStage = a});++-- | The name of the pipeline. This is a user-specified value. Pipeline names must be unique across all pipeline names under an Amazon Web Services account.+pcPipelineName :: Lens' PipelineContext (Maybe Text)+pcPipelineName = lens _pcPipelineName (\ s a -> s{_pcPipelineName = a});++-- | The context of an action to a job worker within the stage of a pipeline.+pcAction :: Lens' PipelineContext (Maybe ActionContext)+pcAction = lens _pcAction (\ s a -> s{_pcAction = a});++instance FromJSON PipelineContext where+        parseJSON+          = withObject "PipelineContext"+              (\ x ->+                 PipelineContext' <$>+                   (x .:? "stage") <*> (x .:? "pipelineName") <*>+                     (x .:? "action"))++instance Hashable PipelineContext where++instance NFData PipelineContext where++-- | Represents the structure of actions and stages to be performed in the pipeline.+--+--+--+-- /See:/ 'pipelineDeclaration' smart constructor.+data PipelineDeclaration = PipelineDeclaration'+  { _pdVersion       :: !(Maybe Nat)+  , _pdName          :: !Text+  , _pdRoleARN       :: !Text+  , _pdArtifactStore :: !ArtifactStore+  , _pdStages        :: ![StageDeclaration]+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PipelineDeclaration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pdVersion' - The version number of the pipeline. A new pipeline always has a version number of 1. This number is automatically incremented when a pipeline is updated.+--+-- * 'pdName' - The name of the action to be performed.+--+-- * 'pdRoleARN' - The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform actions with no actionRoleArn, or to use to assume roles for actions with an actionRoleArn.+--+-- * 'pdArtifactStore' - Represents information about the Amazon S3 bucket where artifacts are stored for the pipeline.+--+-- * 'pdStages' - The stage in which to perform the action.+pipelineDeclaration+    :: Text -- ^ 'pdName'+    -> Text -- ^ 'pdRoleARN'+    -> ArtifactStore -- ^ 'pdArtifactStore'+    -> PipelineDeclaration+pipelineDeclaration pName_ pRoleARN_ pArtifactStore_ =+  PipelineDeclaration'+  { _pdVersion = Nothing+  , _pdName = pName_+  , _pdRoleARN = pRoleARN_+  , _pdArtifactStore = pArtifactStore_+  , _pdStages = mempty+  }+++-- | The version number of the pipeline. A new pipeline always has a version number of 1. This number is automatically incremented when a pipeline is updated.+pdVersion :: Lens' PipelineDeclaration (Maybe Natural)+pdVersion = lens _pdVersion (\ s a -> s{_pdVersion = a}) . mapping _Nat;++-- | The name of the action to be performed.+pdName :: Lens' PipelineDeclaration Text+pdName = lens _pdName (\ s a -> s{_pdName = a});++-- | The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform actions with no actionRoleArn, or to use to assume roles for actions with an actionRoleArn.+pdRoleARN :: Lens' PipelineDeclaration Text+pdRoleARN = lens _pdRoleARN (\ s a -> s{_pdRoleARN = a});++-- | Represents information about the Amazon S3 bucket where artifacts are stored for the pipeline.+pdArtifactStore :: Lens' PipelineDeclaration ArtifactStore+pdArtifactStore = lens _pdArtifactStore (\ s a -> s{_pdArtifactStore = a});++-- | The stage in which to perform the action.+pdStages :: Lens' PipelineDeclaration [StageDeclaration]+pdStages = lens _pdStages (\ s a -> s{_pdStages = a}) . _Coerce;++instance FromJSON PipelineDeclaration where+        parseJSON+          = withObject "PipelineDeclaration"+              (\ x ->+                 PipelineDeclaration' <$>+                   (x .:? "version") <*> (x .: "name") <*>+                     (x .: "roleArn")+                     <*> (x .: "artifactStore")+                     <*> (x .:? "stages" .!= mempty))++instance Hashable PipelineDeclaration where++instance NFData PipelineDeclaration where++instance ToJSON PipelineDeclaration where+        toJSON PipelineDeclaration'{..}+          = object+              (catMaybes+                 [("version" .=) <$> _pdVersion,+                  Just ("name" .= _pdName),+                  Just ("roleArn" .= _pdRoleARN),+                  Just ("artifactStore" .= _pdArtifactStore),+                  Just ("stages" .= _pdStages)])++-- | Represents information about an execution of a pipeline.+--+--+--+-- /See:/ 'pipelineExecution' smart constructor.+data PipelineExecution = PipelineExecution'+  { _peStatus              :: !(Maybe PipelineExecutionStatus)+  , _pePipelineName        :: !(Maybe Text)+  , _pePipelineVersion     :: !(Maybe Nat)+  , _pePipelineExecutionId :: !(Maybe Text)+  , _peArtifactRevisions   :: !(Maybe [ArtifactRevision])+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PipelineExecution' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'peStatus' - The status of the pipeline execution.     * InProgress: The pipeline execution is currently running.     * Succeeded: The pipeline execution was completed successfully.      * Superseded: While this pipeline execution was waiting for the next stage to be completed, a newer pipeline execution advanced and continued through the pipeline instead.      * Failed: The pipeline execution was not completed successfully.+--+-- * 'pePipelineName' - The name of the pipeline that was executed.+--+-- * 'pePipelineVersion' - The version number of the pipeline that was executed.+--+-- * 'pePipelineExecutionId' - The ID of the pipeline execution.+--+-- * 'peArtifactRevisions' - A list of ArtifactRevision objects included in a pipeline execution.+pipelineExecution+    :: PipelineExecution+pipelineExecution =+  PipelineExecution'+  { _peStatus = Nothing+  , _pePipelineName = Nothing+  , _pePipelineVersion = Nothing+  , _pePipelineExecutionId = Nothing+  , _peArtifactRevisions = Nothing+  }+++-- | The status of the pipeline execution.     * InProgress: The pipeline execution is currently running.     * Succeeded: The pipeline execution was completed successfully.      * Superseded: While this pipeline execution was waiting for the next stage to be completed, a newer pipeline execution advanced and continued through the pipeline instead.      * Failed: The pipeline execution was not completed successfully.+peStatus :: Lens' PipelineExecution (Maybe PipelineExecutionStatus)+peStatus = lens _peStatus (\ s a -> s{_peStatus = a});++-- | The name of the pipeline that was executed.+pePipelineName :: Lens' PipelineExecution (Maybe Text)+pePipelineName = lens _pePipelineName (\ s a -> s{_pePipelineName = a});++-- | The version number of the pipeline that was executed.+pePipelineVersion :: Lens' PipelineExecution (Maybe Natural)+pePipelineVersion = lens _pePipelineVersion (\ s a -> s{_pePipelineVersion = a}) . mapping _Nat;++-- | The ID of the pipeline execution.+pePipelineExecutionId :: Lens' PipelineExecution (Maybe Text)+pePipelineExecutionId = lens _pePipelineExecutionId (\ s a -> s{_pePipelineExecutionId = a});++-- | A list of ArtifactRevision objects included in a pipeline execution.+peArtifactRevisions :: Lens' PipelineExecution [ArtifactRevision]+peArtifactRevisions = lens _peArtifactRevisions (\ s a -> s{_peArtifactRevisions = a}) . _Default . _Coerce;++instance FromJSON PipelineExecution where+        parseJSON+          = withObject "PipelineExecution"+              (\ x ->+                 PipelineExecution' <$>+                   (x .:? "status") <*> (x .:? "pipelineName") <*>+                     (x .:? "pipelineVersion")+                     <*> (x .:? "pipelineExecutionId")+                     <*> (x .:? "artifactRevisions" .!= mempty))++instance Hashable PipelineExecution where++instance NFData PipelineExecution where++-- | Summary information about a pipeline execution.+--+--+--+-- /See:/ 'pipelineExecutionSummary' smart constructor.+data PipelineExecutionSummary = PipelineExecutionSummary'+  { _pesStatus              :: !(Maybe PipelineExecutionStatus)+  , _pesStartTime           :: !(Maybe POSIX)+  , _pesPipelineExecutionId :: !(Maybe Text)+  , _pesLastUpdateTime      :: !(Maybe POSIX)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PipelineExecutionSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pesStatus' - The status of the pipeline execution.     * InProgress: The pipeline execution is currently running.     * Succeeded: The pipeline execution was completed successfully.      * Superseded: While this pipeline execution was waiting for the next stage to be completed, a newer pipeline execution advanced and continued through the pipeline instead.      * Failed: The pipeline execution was not completed successfully.+--+-- * 'pesStartTime' - The date and time when the pipeline execution began, in timestamp format.+--+-- * 'pesPipelineExecutionId' - The ID of the pipeline execution.+--+-- * 'pesLastUpdateTime' - The date and time of the last change to the pipeline execution, in timestamp format.+pipelineExecutionSummary+    :: PipelineExecutionSummary+pipelineExecutionSummary =+  PipelineExecutionSummary'+  { _pesStatus = Nothing+  , _pesStartTime = Nothing+  , _pesPipelineExecutionId = Nothing+  , _pesLastUpdateTime = Nothing+  }+++-- | The status of the pipeline execution.     * InProgress: The pipeline execution is currently running.     * Succeeded: The pipeline execution was completed successfully.      * Superseded: While this pipeline execution was waiting for the next stage to be completed, a newer pipeline execution advanced and continued through the pipeline instead.      * Failed: The pipeline execution was not completed successfully.+pesStatus :: Lens' PipelineExecutionSummary (Maybe PipelineExecutionStatus)+pesStatus = lens _pesStatus (\ s a -> s{_pesStatus = a});++-- | The date and time when the pipeline execution began, in timestamp format.+pesStartTime :: Lens' PipelineExecutionSummary (Maybe UTCTime)+pesStartTime = lens _pesStartTime (\ s a -> s{_pesStartTime = a}) . mapping _Time;++-- | The ID of the pipeline execution.+pesPipelineExecutionId :: Lens' PipelineExecutionSummary (Maybe Text)+pesPipelineExecutionId = lens _pesPipelineExecutionId (\ s a -> s{_pesPipelineExecutionId = a});++-- | The date and time of the last change to the pipeline execution, in timestamp format.+pesLastUpdateTime :: Lens' PipelineExecutionSummary (Maybe UTCTime)+pesLastUpdateTime = lens _pesLastUpdateTime (\ s a -> s{_pesLastUpdateTime = a}) . mapping _Time;++instance FromJSON PipelineExecutionSummary where+        parseJSON+          = withObject "PipelineExecutionSummary"+              (\ x ->+                 PipelineExecutionSummary' <$>+                   (x .:? "status") <*> (x .:? "startTime") <*>+                     (x .:? "pipelineExecutionId")+                     <*> (x .:? "lastUpdateTime"))++instance Hashable PipelineExecutionSummary where++instance NFData PipelineExecutionSummary where++-- | Information about a pipeline.+--+--+--+-- /See:/ 'pipelineMetadata' smart constructor.+data PipelineMetadata = PipelineMetadata'+  { _pmCreated     :: !(Maybe POSIX)+  , _pmPipelineARN :: !(Maybe Text)+  , _pmUpdated     :: !(Maybe POSIX)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PipelineMetadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pmCreated' - The date and time the pipeline was created, in timestamp format.+--+-- * 'pmPipelineARN' - The Amazon Resource Name (ARN) of the pipeline.+--+-- * 'pmUpdated' - The date and time the pipeline was last updated, in timestamp format.+pipelineMetadata+    :: PipelineMetadata+pipelineMetadata =+  PipelineMetadata'+  {_pmCreated = Nothing, _pmPipelineARN = Nothing, _pmUpdated = Nothing}+++-- | The date and time the pipeline was created, in timestamp format.+pmCreated :: Lens' PipelineMetadata (Maybe UTCTime)+pmCreated = lens _pmCreated (\ s a -> s{_pmCreated = a}) . mapping _Time;++-- | The Amazon Resource Name (ARN) of the pipeline.+pmPipelineARN :: Lens' PipelineMetadata (Maybe Text)+pmPipelineARN = lens _pmPipelineARN (\ s a -> s{_pmPipelineARN = a});++-- | The date and time the pipeline was last updated, in timestamp format.+pmUpdated :: Lens' PipelineMetadata (Maybe UTCTime)+pmUpdated = lens _pmUpdated (\ s a -> s{_pmUpdated = a}) . mapping _Time;++instance FromJSON PipelineMetadata where+        parseJSON+          = withObject "PipelineMetadata"+              (\ x ->+                 PipelineMetadata' <$>+                   (x .:? "created") <*> (x .:? "pipelineArn") <*>+                     (x .:? "updated"))++instance Hashable PipelineMetadata where++instance NFData PipelineMetadata where++-- | Returns a summary of a pipeline.+--+--+--+-- /See:/ 'pipelineSummary' smart constructor.+data PipelineSummary = PipelineSummary'+  { _psCreated :: !(Maybe POSIX)+  , _psName    :: !(Maybe Text)+  , _psVersion :: !(Maybe Nat)+  , _psUpdated :: !(Maybe POSIX)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PipelineSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'psCreated' - The date and time the pipeline was created, in timestamp format.+--+-- * 'psName' - The name of the pipeline.+--+-- * 'psVersion' - The version number of the pipeline.+--+-- * 'psUpdated' - The date and time of the last update to the pipeline, in timestamp format.+pipelineSummary+    :: PipelineSummary+pipelineSummary =+  PipelineSummary'+  { _psCreated = Nothing+  , _psName = Nothing+  , _psVersion = Nothing+  , _psUpdated = Nothing+  }+++-- | The date and time the pipeline was created, in timestamp format.+psCreated :: Lens' PipelineSummary (Maybe UTCTime)+psCreated = lens _psCreated (\ s a -> s{_psCreated = a}) . mapping _Time;++-- | The name of the pipeline.+psName :: Lens' PipelineSummary (Maybe Text)+psName = lens _psName (\ s a -> s{_psName = a});++-- | The version number of the pipeline.+psVersion :: Lens' PipelineSummary (Maybe Natural)+psVersion = lens _psVersion (\ s a -> s{_psVersion = a}) . mapping _Nat;++-- | The date and time of the last update to the pipeline, in timestamp format.+psUpdated :: Lens' PipelineSummary (Maybe UTCTime)+psUpdated = lens _psUpdated (\ s a -> s{_psUpdated = a}) . mapping _Time;++instance FromJSON PipelineSummary where+        parseJSON+          = withObject "PipelineSummary"+              (\ x ->+                 PipelineSummary' <$>+                   (x .:? "created") <*> (x .:? "name") <*>+                     (x .:? "version")+                     <*> (x .:? "updated"))++instance Hashable PipelineSummary where++instance NFData PipelineSummary where++-- | The location of the Amazon S3 bucket that contains a revision.+--+--+--+-- /See:/ 's3ArtifactLocation' smart constructor.+data S3ArtifactLocation = S3ArtifactLocation'+  { _salBucketName :: !Text+  , _salObjectKey  :: !Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'S3ArtifactLocation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'salBucketName' - The name of the Amazon S3 bucket.+--+-- * 'salObjectKey' - The key of the object in the Amazon S3 bucket, which uniquely identifies the object in the bucket.+s3ArtifactLocation+    :: Text -- ^ 'salBucketName'+    -> Text -- ^ 'salObjectKey'+    -> S3ArtifactLocation+s3ArtifactLocation pBucketName_ pObjectKey_ =+  S3ArtifactLocation'+  {_salBucketName = pBucketName_, _salObjectKey = pObjectKey_}+++-- | The name of the Amazon S3 bucket.+salBucketName :: Lens' S3ArtifactLocation Text+salBucketName = lens _salBucketName (\ s a -> s{_salBucketName = a});++-- | The key of the object in the Amazon S3 bucket, which uniquely identifies the object in the bucket.+salObjectKey :: Lens' S3ArtifactLocation Text+salObjectKey = lens _salObjectKey (\ s a -> s{_salObjectKey = a});++instance FromJSON S3ArtifactLocation where+        parseJSON+          = withObject "S3ArtifactLocation"+              (\ x ->+                 S3ArtifactLocation' <$>+                   (x .: "bucketName") <*> (x .: "objectKey"))++instance Hashable S3ArtifactLocation where++instance NFData S3ArtifactLocation where++-- | Represents information about a stage to a job worker.+--+--+--+-- /See:/ 'stageContext' smart constructor.+newtype StageContext = StageContext'+  { _scName :: Maybe Text+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'StageContext' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'scName' - The name of the stage.+stageContext+    :: StageContext+stageContext = StageContext' {_scName = Nothing}+++-- | The name of the stage.+scName :: Lens' StageContext (Maybe Text)+scName = lens _scName (\ s a -> s{_scName = a});++instance FromJSON StageContext where+        parseJSON+          = withObject "StageContext"+              (\ x -> StageContext' <$> (x .:? "name"))++instance Hashable StageContext where++instance NFData StageContext where++-- | Represents information about a stage and its definition.+--+--+--+-- /See:/ 'stageDeclaration' smart constructor.+data StageDeclaration = StageDeclaration'+  { _sdBlockers :: !(Maybe [BlockerDeclaration])+  , _sdName     :: !Text+  , _sdActions  :: ![ActionDeclaration]+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'StageDeclaration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdBlockers' - Reserved for future use.+--+-- * 'sdName' - The name of the stage.+--+-- * 'sdActions' - The actions included in a stage.+stageDeclaration+    :: Text -- ^ 'sdName'+    -> StageDeclaration+stageDeclaration pName_ =+  StageDeclaration'+  {_sdBlockers = Nothing, _sdName = pName_, _sdActions = mempty}+++-- | Reserved for future use.+sdBlockers :: Lens' StageDeclaration [BlockerDeclaration]+sdBlockers = lens _sdBlockers (\ s a -> s{_sdBlockers = a}) . _Default . _Coerce;++-- | The name of the stage.+sdName :: Lens' StageDeclaration Text+sdName = lens _sdName (\ s a -> s{_sdName = a});++-- | The actions included in a stage.+sdActions :: Lens' StageDeclaration [ActionDeclaration]+sdActions = lens _sdActions (\ s a -> s{_sdActions = a}) . _Coerce;++instance FromJSON StageDeclaration where+        parseJSON+          = withObject "StageDeclaration"+              (\ x ->+                 StageDeclaration' <$>+                   (x .:? "blockers" .!= mempty) <*> (x .: "name") <*>+                     (x .:? "actions" .!= mempty))++instance Hashable StageDeclaration where++instance NFData StageDeclaration where++instance ToJSON StageDeclaration where+        toJSON StageDeclaration'{..}+          = object+              (catMaybes+                 [("blockers" .=) <$> _sdBlockers,+                  Just ("name" .= _sdName),+                  Just ("actions" .= _sdActions)])++-- | Represents information about the run of a stage.+--+--+--+-- /See:/ 'stageExecution' smart constructor.+data StageExecution = StageExecution'+  { _sePipelineExecutionId :: !Text+  , _seStatus              :: !StageExecutionStatus+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'StageExecution' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sePipelineExecutionId' - The ID of the pipeline execution associated with the stage.+--+-- * 'seStatus' - The status of the stage, or for a completed stage, the last status of the stage.+stageExecution+    :: Text -- ^ 'sePipelineExecutionId'+    -> StageExecutionStatus -- ^ 'seStatus'+    -> StageExecution+stageExecution pPipelineExecutionId_ pStatus_ =+  StageExecution'+  {_sePipelineExecutionId = pPipelineExecutionId_, _seStatus = pStatus_}+++-- | The ID of the pipeline execution associated with the stage.+sePipelineExecutionId :: Lens' StageExecution Text+sePipelineExecutionId = lens _sePipelineExecutionId (\ s a -> s{_sePipelineExecutionId = a});++-- | The status of the stage, or for a completed stage, the last status of the stage.+seStatus :: Lens' StageExecution StageExecutionStatus+seStatus = lens _seStatus (\ s a -> s{_seStatus = a});++instance FromJSON StageExecution where+        parseJSON+          = withObject "StageExecution"+              (\ x ->+                 StageExecution' <$>+                   (x .: "pipelineExecutionId") <*> (x .: "status"))++instance Hashable StageExecution where++instance NFData StageExecution where++-- | Represents information about the state of the stage.+--+--+--+-- /See:/ 'stageState' smart constructor.+data StageState = StageState'+  { _ssInboundTransitionState :: !(Maybe TransitionState)+  , _ssActionStates           :: !(Maybe [ActionState])+  , _ssStageName              :: !(Maybe Text)+  , _ssLatestExecution        :: !(Maybe StageExecution)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'StageState' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ssInboundTransitionState' - The state of the inbound transition, which is either enabled or disabled.+--+-- * 'ssActionStates' - The state of the stage.+--+-- * 'ssStageName' - The name of the stage.+--+-- * 'ssLatestExecution' - Information about the latest execution in the stage, including its ID and status.+stageState+    :: StageState+stageState =+  StageState'+  { _ssInboundTransitionState = Nothing+  , _ssActionStates = Nothing+  , _ssStageName = Nothing+  , _ssLatestExecution = Nothing+  }+++-- | The state of the inbound transition, which is either enabled or disabled.+ssInboundTransitionState :: Lens' StageState (Maybe TransitionState)+ssInboundTransitionState = lens _ssInboundTransitionState (\ s a -> s{_ssInboundTransitionState = a});++-- | The state of the stage.+ssActionStates :: Lens' StageState [ActionState]+ssActionStates = lens _ssActionStates (\ s a -> s{_ssActionStates = a}) . _Default . _Coerce;++-- | The name of the stage.+ssStageName :: Lens' StageState (Maybe Text)+ssStageName = lens _ssStageName (\ s a -> s{_ssStageName = a});++-- | Information about the latest execution in the stage, including its ID and status.+ssLatestExecution :: Lens' StageState (Maybe StageExecution)+ssLatestExecution = lens _ssLatestExecution (\ s a -> s{_ssLatestExecution = a});++instance FromJSON StageState where+        parseJSON+          = withObject "StageState"+              (\ x ->+                 StageState' <$>+                   (x .:? "inboundTransitionState") <*>+                     (x .:? "actionStates" .!= mempty)+                     <*> (x .:? "stageName")+                     <*> (x .:? "latestExecution"))++instance Hashable StageState where++instance NFData StageState where++-- | A response to a PollForThirdPartyJobs request returned by AWS CodePipeline when there is a job to be worked upon by a partner action.+--+--+--+-- /See:/ 'thirdPartyJob' smart constructor.+data ThirdPartyJob = ThirdPartyJob'+  { _tpjClientId :: !(Maybe Text)+  , _tpjJobId    :: !(Maybe Text)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ThirdPartyJob' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tpjClientId' - The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.+--+-- * 'tpjJobId' - The identifier used to identify the job in AWS CodePipeline.+thirdPartyJob+    :: ThirdPartyJob+thirdPartyJob = ThirdPartyJob' {_tpjClientId = Nothing, _tpjJobId = Nothing}+++-- | The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.+tpjClientId :: Lens' ThirdPartyJob (Maybe Text)+tpjClientId = lens _tpjClientId (\ s a -> s{_tpjClientId = a});++-- | The identifier used to identify the job in AWS CodePipeline.+tpjJobId :: Lens' ThirdPartyJob (Maybe Text)+tpjJobId = lens _tpjJobId (\ s a -> s{_tpjJobId = a});++instance FromJSON ThirdPartyJob where+        parseJSON+          = withObject "ThirdPartyJob"+              (\ x ->+                 ThirdPartyJob' <$>+                   (x .:? "clientId") <*> (x .:? "jobId"))++instance Hashable ThirdPartyJob where++instance NFData ThirdPartyJob where++-- | Represents information about the job data for a partner action.+--+--+--+-- /See:/ 'thirdPartyJobData' smart constructor.+data ThirdPartyJobData = ThirdPartyJobData'+  { _tpjdContinuationToken   :: !(Maybe Text)+  , _tpjdOutputArtifacts     :: !(Maybe [Artifact])+  , _tpjdArtifactCredentials :: !(Maybe (Sensitive AWSSessionCredentials))+  , _tpjdPipelineContext     :: !(Maybe PipelineContext)+  , _tpjdEncryptionKey       :: !(Maybe EncryptionKey)+  , _tpjdActionTypeId        :: !(Maybe ActionTypeId)+  , _tpjdInputArtifacts      :: !(Maybe [Artifact])+  , _tpjdActionConfiguration :: !(Maybe ActionConfiguration)+  } deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ThirdPartyJobData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tpjdContinuationToken' - A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.+--+-- * 'tpjdOutputArtifacts' - The name of the artifact that will be the result of the action, if any. This name might be system-generated, such as "MyBuiltApp", or might be defined by the user when the action is created.+--+-- * 'tpjdArtifactCredentials' - Represents an AWS session credentials object. These credentials are temporary credentials that are issued by AWS Secure Token Service (STS). They can be used to access input and output artifacts in the Amazon S3 bucket used to store artifact for the pipeline in AWS CodePipeline.+--+-- * 'tpjdPipelineContext' - Represents information about a pipeline to a job worker.+--+-- * 'tpjdEncryptionKey' - The encryption key used to encrypt and decrypt data in the artifact store for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This is optional and might not be present.+--+-- * 'tpjdActionTypeId' - Represents information about an action type.+--+-- * 'tpjdInputArtifacts' - The name of the artifact that will be worked upon by the action, if any. This name might be system-generated, such as "MyApp", or might be defined by the user when the action is created. The input artifact name must match the name of an output artifact generated by an action in an earlier action or stage of the pipeline.+--+-- * 'tpjdActionConfiguration' - Represents information about an action configuration.+thirdPartyJobData+    :: ThirdPartyJobData+thirdPartyJobData =+  ThirdPartyJobData'+  { _tpjdContinuationToken = Nothing+  , _tpjdOutputArtifacts = Nothing+  , _tpjdArtifactCredentials = Nothing+  , _tpjdPipelineContext = Nothing+  , _tpjdEncryptionKey = Nothing+  , _tpjdActionTypeId = Nothing+  , _tpjdInputArtifacts = Nothing+  , _tpjdActionConfiguration = Nothing+  }+++-- | A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.+tpjdContinuationToken :: Lens' ThirdPartyJobData (Maybe Text)+tpjdContinuationToken = lens _tpjdContinuationToken (\ s a -> s{_tpjdContinuationToken = a});++-- | The name of the artifact that will be the result of the action, if any. This name might be system-generated, such as "MyBuiltApp", or might be defined by the user when the action is created.+tpjdOutputArtifacts :: Lens' ThirdPartyJobData [Artifact]+tpjdOutputArtifacts = lens _tpjdOutputArtifacts (\ s a -> s{_tpjdOutputArtifacts = a}) . _Default . _Coerce;++-- | Represents an AWS session credentials object. These credentials are temporary credentials that are issued by AWS Secure Token Service (STS). They can be used to access input and output artifacts in the Amazon S3 bucket used to store artifact for the pipeline in AWS CodePipeline.+tpjdArtifactCredentials :: Lens' ThirdPartyJobData (Maybe AWSSessionCredentials)+tpjdArtifactCredentials = lens _tpjdArtifactCredentials (\ s a -> s{_tpjdArtifactCredentials = a}) . mapping _Sensitive;++-- | Represents information about a pipeline to a job worker.+tpjdPipelineContext :: Lens' ThirdPartyJobData (Maybe PipelineContext)+tpjdPipelineContext = lens _tpjdPipelineContext (\ s a -> s{_tpjdPipelineContext = a});++-- | The encryption key used to encrypt and decrypt data in the artifact store for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This is optional and might not be present.+tpjdEncryptionKey :: Lens' ThirdPartyJobData (Maybe EncryptionKey)+tpjdEncryptionKey = lens _tpjdEncryptionKey (\ s a -> s{_tpjdEncryptionKey = a});++-- | Represents information about an action type.+tpjdActionTypeId :: Lens' ThirdPartyJobData (Maybe ActionTypeId)+tpjdActionTypeId = lens _tpjdActionTypeId (\ s a -> s{_tpjdActionTypeId = a});++-- | The name of the artifact that will be worked upon by the action, if any. This name might be system-generated, such as "MyApp", or might be defined by the user when the action is created. The input artifact name must match the name of an output artifact generated by an action in an earlier action or stage of the pipeline.+tpjdInputArtifacts :: Lens' ThirdPartyJobData [Artifact]+tpjdInputArtifacts = lens _tpjdInputArtifacts (\ s a -> s{_tpjdInputArtifacts = a}) . _Default . _Coerce;++-- | Represents information about an action configuration.+tpjdActionConfiguration :: Lens' ThirdPartyJobData (Maybe ActionConfiguration)+tpjdActionConfiguration = lens _tpjdActionConfiguration (\ s a -> s{_tpjdActionConfiguration = a});++instance FromJSON ThirdPartyJobData where+        parseJSON+          = withObject "ThirdPartyJobData"+              (\ x ->+                 ThirdPartyJobData' <$>+                   (x .:? "continuationToken") <*>+                     (x .:? "outputArtifacts" .!= mempty)+                     <*> (x .:? "artifactCredentials")+                     <*> (x .:? "pipelineContext")+                     <*> (x .:? "encryptionKey")+                     <*> (x .:? "actionTypeId")+                     <*> (x .:? "inputArtifacts" .!= mempty)+                     <*> (x .:? "actionConfiguration"))++instance Hashable ThirdPartyJobData where++instance NFData ThirdPartyJobData where++-- | The details of a job sent in response to a GetThirdPartyJobDetails request.+--+--+--+-- /See:/ 'thirdPartyJobDetails' smart constructor.+data ThirdPartyJobDetails = ThirdPartyJobDetails'+  { _tpjdData  :: !(Maybe ThirdPartyJobData)+  , _tpjdId    :: !(Maybe Text)+  , _tpjdNonce :: !(Maybe Text)+  } deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ThirdPartyJobDetails' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tpjdData' - The data to be returned by the third party job worker.+--+-- * 'tpjdId' - The identifier used to identify the job details in AWS CodePipeline.+--+-- * 'tpjdNonce' - A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. Use this number in an 'AcknowledgeThirdPartyJob' request.+thirdPartyJobDetails+    :: ThirdPartyJobDetails+thirdPartyJobDetails =+  ThirdPartyJobDetails'+  {_tpjdData = Nothing, _tpjdId = Nothing, _tpjdNonce = Nothing}+++-- | The data to be returned by the third party job worker.+tpjdData :: Lens' ThirdPartyJobDetails (Maybe ThirdPartyJobData)+tpjdData = lens _tpjdData (\ s a -> s{_tpjdData = a});++-- | The identifier used to identify the job details in AWS CodePipeline.+tpjdId :: Lens' ThirdPartyJobDetails (Maybe Text)+tpjdId = lens _tpjdId (\ s a -> s{_tpjdId = a});++-- | A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. Use this number in an 'AcknowledgeThirdPartyJob' request.+tpjdNonce :: Lens' ThirdPartyJobDetails (Maybe Text)+tpjdNonce = lens _tpjdNonce (\ s a -> s{_tpjdNonce = a});++instance FromJSON ThirdPartyJobDetails where+        parseJSON+          = withObject "ThirdPartyJobDetails"+              (\ x ->+                 ThirdPartyJobDetails' <$>+                   (x .:? "data") <*> (x .:? "id") <*> (x .:? "nonce"))++instance Hashable ThirdPartyJobDetails where++instance NFData ThirdPartyJobDetails where++-- | Represents information about the state of transitions between one stage and another stage.+--+--+--+-- /See:/ 'transitionState' smart constructor.+data TransitionState = TransitionState'+  { _tsEnabled        :: !(Maybe Bool)+  , _tsDisabledReason :: !(Maybe Text)+  , _tsLastChangedAt  :: !(Maybe POSIX)+  , _tsLastChangedBy  :: !(Maybe Text)+  } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'TransitionState' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tsEnabled' - Whether the transition between stages is enabled (true) or disabled (false).+--+-- * 'tsDisabledReason' - The user-specified reason why the transition between two stages of a pipeline was disabled.+--+-- * 'tsLastChangedAt' - The timestamp when the transition state was last changed.+--+-- * 'tsLastChangedBy' - The ID of the user who last changed the transition state.+transitionState+    :: TransitionState+transitionState =+  TransitionState'+  { _tsEnabled = Nothing+  , _tsDisabledReason = Nothing+  , _tsLastChangedAt = Nothing+  , _tsLastChangedBy = Nothing+  }+++-- | Whether the transition between stages is enabled (true) or disabled (false).+tsEnabled :: Lens' TransitionState (Maybe Bool)+tsEnabled = lens _tsEnabled (\ s a -> s{_tsEnabled = a});++-- | The user-specified reason why the transition between two stages of a pipeline was disabled.+tsDisabledReason :: Lens' TransitionState (Maybe Text)+tsDisabledReason = lens _tsDisabledReason (\ s a -> s{_tsDisabledReason = a});++-- | The timestamp when the transition state was last changed.+tsLastChangedAt :: Lens' TransitionState (Maybe UTCTime)+tsLastChangedAt = lens _tsLastChangedAt (\ s a -> s{_tsLastChangedAt = a}) . mapping _Time;++-- | The ID of the user who last changed the transition state.+tsLastChangedBy :: Lens' TransitionState (Maybe Text)+tsLastChangedBy = lens _tsLastChangedBy (\ s a -> s{_tsLastChangedBy = a});++instance FromJSON TransitionState where+        parseJSON+          = withObject "TransitionState"+              (\ x ->+                 TransitionState' <$>+                   (x .:? "enabled") <*> (x .:? "disabledReason") <*>+                     (x .:? "lastChangedAt")+                     <*> (x .:? "lastChangedBy"))++instance Hashable TransitionState where++instance NFData TransitionState where
gen/Network/AWS/CodePipeline/Types/Sum.hs view
@@ -9,25 +9,26 @@  -- | -- Module      : Network.AWS.CodePipeline.Types.Sum--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) -- module Network.AWS.CodePipeline.Types.Sum where -import           Network.AWS.Prelude+import Network.AWS.Prelude  data ActionCategory-    = Approval-    | Build-    | Deploy-    | Invoke-    | Source-    | Test-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = Approval+  | Build+  | Deploy+  | Invoke+  | Source+  | Test+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText ActionCategory where     parser = takeLowerText >>= \case         "approval" -> pure Approval@@ -61,11 +62,12 @@     parseJSON = parseJSONText "ActionCategory"  data ActionConfigurationPropertyType-    = Boolean-    | Number-    | String-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = Boolean+  | Number+  | String+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText ActionConfigurationPropertyType where     parser = takeLowerText >>= \case         "boolean" -> pure Boolean@@ -93,11 +95,12 @@     parseJSON = parseJSONText "ActionConfigurationPropertyType"  data ActionExecutionStatus-    = AESFailed-    | AESInProgress-    | AESSucceeded-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = AESFailed+  | AESInProgress+  | AESSucceeded+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText ActionExecutionStatus where     parser = takeLowerText >>= \case         "failed" -> pure AESFailed@@ -122,11 +125,12 @@     parseJSON = parseJSONText "ActionExecutionStatus"  data ActionOwner-    = AWS-    | Custom-    | ThirdParty-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = AWS+  | Custom+  | ThirdParty+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText ActionOwner where     parser = takeLowerText >>= \case         "aws" -> pure AWS@@ -154,10 +158,11 @@     parseJSON = parseJSONText "ActionOwner"  data ApprovalStatus-    = Approved-    | Rejected-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = Approved+  | Rejected+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText ApprovalStatus where     parser = takeLowerText >>= \case         "approved" -> pure Approved@@ -180,9 +185,10 @@     toJSON = toJSONText  data ArtifactLocationType =-    ALTS3-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  ALTS3+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText ArtifactLocationType where     parser = takeLowerText >>= \case         "s3" -> pure ALTS3@@ -203,9 +209,10 @@     parseJSON = parseJSONText "ArtifactLocationType"  data ArtifactStoreType =-    S3-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  S3+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText ArtifactStoreType where     parser = takeLowerText >>= \case         "s3" -> pure S3@@ -229,9 +236,10 @@     parseJSON = parseJSONText "ArtifactStoreType"  data BlockerType =-    Schedule-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  Schedule+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText BlockerType where     parser = takeLowerText >>= \case         "schedule" -> pure Schedule@@ -255,9 +263,10 @@     parseJSON = parseJSONText "BlockerType"  data EncryptionKeyType =-    KMS-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  KMS+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText EncryptionKeyType where     parser = takeLowerText >>= \case         "kms" -> pure KMS@@ -281,14 +290,15 @@     parseJSON = parseJSONText "EncryptionKeyType"  data FailureType-    = ConfigurationError-    | JobFailed-    | PermissionError-    | RevisionOutOfSync-    | RevisionUnavailable-    | SystemUnavailable-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = ConfigurationError+  | JobFailed+  | PermissionError+  | RevisionOutOfSync+  | RevisionUnavailable+  | SystemUnavailable+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText FailureType where     parser = takeLowerText >>= \case         "configurationerror" -> pure ConfigurationError@@ -319,15 +329,16 @@     toJSON = toJSONText  data JobStatus-    = JSCreated-    | JSDispatched-    | JSFailed-    | JSInProgress-    | JSQueued-    | JSSucceeded-    | JSTimedOut-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = JSCreated+  | JSDispatched+  | JSFailed+  | JSInProgress+  | JSQueued+  | JSSucceeded+  | JSTimedOut+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText JobStatus where     parser = takeLowerText >>= \case         "created" -> pure JSCreated@@ -360,12 +371,13 @@     parseJSON = parseJSONText "JobStatus"  data PipelineExecutionStatus-    = Failed-    | InProgress-    | Succeeded-    | Superseded-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = Failed+  | InProgress+  | Succeeded+  | Superseded+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText PipelineExecutionStatus where     parser = takeLowerText >>= \case         "failed" -> pure Failed@@ -392,11 +404,12 @@     parseJSON = parseJSONText "PipelineExecutionStatus"  data StageExecutionStatus-    = SESFailed-    | SESInProgress-    | SESSucceeded-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = SESFailed+  | SESInProgress+  | SESSucceeded+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText StageExecutionStatus where     parser = takeLowerText >>= \case         "failed" -> pure SESFailed@@ -421,9 +434,10 @@     parseJSON = parseJSONText "StageExecutionStatus"  data StageRetryMode =-    FailedActions-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  FailedActions+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) + instance FromText StageRetryMode where     parser = takeLowerText >>= \case         "failed_actions" -> pure FailedActions@@ -444,9 +458,10 @@     toJSON = toJSONText  data StageTransitionType-    = Inbound-    | Outbound-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)+  = Inbound+  | Outbound+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)+  instance FromText StageTransitionType where     parser = takeLowerText >>= \case
gen/Network/AWS/CodePipeline/UpdatePipeline.hs view
@@ -12,9 +12,9 @@  -- | -- Module      : Network.AWS.CodePipeline.UpdatePipeline--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --@@ -37,22 +37,23 @@     , uprsResponseStatus     ) where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.CodePipeline.Types.Product-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Request-import           Network.AWS.Response+import Network.AWS.CodePipeline.Types+import Network.AWS.CodePipeline.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | Represents the input of an update pipeline action.+-- | Represents the input of an UpdatePipeline action. -- -- -- -- /See:/ 'updatePipeline' smart constructor. newtype UpdatePipeline = UpdatePipeline'-    { _upPipeline :: PipelineDeclaration-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _upPipeline :: PipelineDeclaration+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'UpdatePipeline' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -61,11 +62,9 @@ updatePipeline     :: PipelineDeclaration -- ^ 'upPipeline'     -> UpdatePipeline-updatePipeline pPipeline_ =-    UpdatePipeline'-    { _upPipeline = pPipeline_-    }+updatePipeline pPipeline_ = UpdatePipeline' {_upPipeline = pPipeline_} + -- | The name of the pipeline to be updated. upPipeline :: Lens' UpdatePipeline PipelineDeclaration upPipeline = lens _upPipeline (\ s a -> s{_upPipeline = a});@@ -79,9 +78,9 @@                  UpdatePipelineResponse' <$>                    (x .?> "pipeline") <*> (pure (fromEnum s))) -instance Hashable UpdatePipeline+instance Hashable UpdatePipeline where -instance NFData UpdatePipeline+instance NFData UpdatePipeline where  instance ToHeaders UpdatePipeline where         toHeaders@@ -104,16 +103,17 @@ instance ToQuery UpdatePipeline where         toQuery = const mempty --- | Represents the output of an update pipeline action.+-- | Represents the output of an UpdatePipeline action. -- -- -- -- /See:/ 'updatePipelineResponse' smart constructor. data UpdatePipelineResponse = UpdatePipelineResponse'-    { _uprsPipeline       :: !(Maybe PipelineDeclaration)-    , _uprsResponseStatus :: !Int-    } deriving (Eq,Read,Show,Data,Typeable,Generic)+  { _uprsPipeline       :: !(Maybe PipelineDeclaration)+  , _uprsResponseStatus :: !Int+  } deriving (Eq, Read, Show, Data, Typeable, Generic) + -- | Creates a value of 'UpdatePipelineResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -125,11 +125,10 @@     :: Int -- ^ 'uprsResponseStatus'     -> UpdatePipelineResponse updatePipelineResponse pResponseStatus_ =-    UpdatePipelineResponse'-    { _uprsPipeline = Nothing-    , _uprsResponseStatus = pResponseStatus_-    }+  UpdatePipelineResponse'+  {_uprsPipeline = Nothing, _uprsResponseStatus = pResponseStatus_} + -- | The structure of the updated pipeline. uprsPipeline :: Lens' UpdatePipelineResponse (Maybe PipelineDeclaration) uprsPipeline = lens _uprsPipeline (\ s a -> s{_uprsPipeline = a});@@ -138,4 +137,4 @@ uprsResponseStatus :: Lens' UpdatePipelineResponse Int uprsResponseStatus = lens _uprsResponseStatus (\ s a -> s{_uprsResponseStatus = a}); -instance NFData UpdatePipelineResponse+instance NFData UpdatePipelineResponse where
gen/Network/AWS/CodePipeline/Waiters.hs view
@@ -7,15 +7,15 @@  -- | -- Module      : Network.AWS.CodePipeline.Waiters--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) -- module Network.AWS.CodePipeline.Waiters where -import           Network.AWS.CodePipeline.Types-import           Network.AWS.Lens-import           Network.AWS.Prelude-import           Network.AWS.Waiter+import Network.AWS.CodePipeline.Types+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Waiter
test/Main.hs view
@@ -2,9 +2,9 @@  -- | -- Module      : Main--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) --
test/Test/AWS/Gen/CodePipeline.hs view
@@ -5,20 +5,20 @@  -- | -- Module      : Test.AWS.Gen.CodePipeline--- Copyright   : (c) 2013-2016 Brendan Hay+-- Copyright   : (c) 2013-2017 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability   : auto-generated -- Portability : non-portable (GHC extensions) -- module Test.AWS.Gen.CodePipeline where  import Data.Proxy+import Network.AWS.CodePipeline+import Test.AWS.CodePipeline.Internal import Test.AWS.Fixture import Test.AWS.Prelude import Test.Tasty-import Network.AWS.CodePipeline-import Test.AWS.CodePipeline.Internal  -- Auto-generated: the actual test selection needs to be manually placed into -- the top-level so that real test data can be incrementally added.@@ -106,6 +106,9 @@ --         , requestCreateCustomActionType $ --             createCustomActionType --+--         , requestListPipelineExecutions $+--             listPipelineExecutions+-- --           ]  --     , testGroup "response"@@ -187,6 +190,9 @@ --         , responseCreateCustomActionType $ --             createCustomActionTypeResponse --+--         , responseListPipelineExecutions $+--             listPipelineExecutionsResponse+-- --           ] --     ] @@ -322,6 +328,11 @@     "CreateCustomActionType"     "fixture/CreateCustomActionType.yaml" +requestListPipelineExecutions :: ListPipelineExecutions -> TestTree+requestListPipelineExecutions = req+    "ListPipelineExecutions"+    "fixture/ListPipelineExecutions.yaml"+ -- Responses  responseGetPipeline :: GetPipelineResponse -> TestTree@@ -505,3 +516,10 @@     "fixture/CreateCustomActionTypeResponse.proto"     codePipeline     (Proxy :: Proxy CreateCustomActionType)++responseListPipelineExecutions :: ListPipelineExecutionsResponse -> TestTree+responseListPipelineExecutions = res+    "ListPipelineExecutionsResponse"+    "fixture/ListPipelineExecutionsResponse.proto"+    codePipeline+    (Proxy :: Proxy ListPipelineExecutions)