amazonka-emr 0.2.1 → 0.2.2
raw patch · 19 files changed
+246/−134 lines, 19 filesdep ~amazonka-corePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: amazonka-core
API changes (from Hackage documentation)
+ Network.AWS.EMR.AddInstanceGroups: instance Read AddInstanceGroups
+ Network.AWS.EMR.AddInstanceGroups: instance Read AddInstanceGroupsResponse
+ Network.AWS.EMR.AddJobFlowSteps: instance Read AddJobFlowSteps
+ Network.AWS.EMR.AddJobFlowSteps: instance Read AddJobFlowStepsResponse
+ Network.AWS.EMR.AddTags: instance Read AddTags
+ Network.AWS.EMR.AddTags: instance Read AddTagsResponse
+ Network.AWS.EMR.DescribeCluster: instance Read DescribeCluster
+ Network.AWS.EMR.DescribeCluster: instance Read DescribeClusterResponse
+ Network.AWS.EMR.DescribeJobFlows: instance Read DescribeJobFlows
+ Network.AWS.EMR.DescribeJobFlows: instance Read DescribeJobFlowsResponse
+ Network.AWS.EMR.DescribeStep: instance Read DescribeStep
+ Network.AWS.EMR.DescribeStep: instance Read DescribeStepResponse
+ Network.AWS.EMR.ListBootstrapActions: instance Read ListBootstrapActions
+ Network.AWS.EMR.ListBootstrapActions: instance Read ListBootstrapActionsResponse
+ Network.AWS.EMR.ListClusters: instance Read ListClusters
+ Network.AWS.EMR.ListClusters: instance Read ListClustersResponse
+ Network.AWS.EMR.ListInstanceGroups: instance Read ListInstanceGroups
+ Network.AWS.EMR.ListInstanceGroups: instance Read ListInstanceGroupsResponse
+ Network.AWS.EMR.ListInstances: instance Read ListInstances
+ Network.AWS.EMR.ListInstances: instance Read ListInstancesResponse
+ Network.AWS.EMR.ListSteps: instance Read ListSteps
+ Network.AWS.EMR.ListSteps: instance Read ListStepsResponse
+ Network.AWS.EMR.ModifyInstanceGroups: instance Read ModifyInstanceGroups
+ Network.AWS.EMR.ModifyInstanceGroups: instance Read ModifyInstanceGroupsResponse
+ Network.AWS.EMR.RemoveTags: instance Read RemoveTags
+ Network.AWS.EMR.RemoveTags: instance Read RemoveTagsResponse
+ Network.AWS.EMR.RunJobFlow: instance Read RunJobFlow
+ Network.AWS.EMR.RunJobFlow: instance Read RunJobFlowResponse
+ Network.AWS.EMR.SetTerminationProtection: instance Read SetTerminationProtection
+ Network.AWS.EMR.SetTerminationProtection: instance Read SetTerminationProtectionResponse
+ Network.AWS.EMR.SetVisibleToAllUsers: instance Read SetVisibleToAllUsers
+ Network.AWS.EMR.SetVisibleToAllUsers: instance Read SetVisibleToAllUsersResponse
+ Network.AWS.EMR.TerminateJobFlows: instance Read TerminateJobFlows
+ Network.AWS.EMR.TerminateJobFlows: instance Read TerminateJobFlowsResponse
+ Network.AWS.EMR.Types: eiaAdditionalMasterSecurityGroups :: Lens' Ec2InstanceAttributes [Text]
+ Network.AWS.EMR.Types: eiaAdditionalSlaveSecurityGroups :: Lens' Ec2InstanceAttributes [Text]
+ Network.AWS.EMR.Types: eiaEmrManagedMasterSecurityGroup :: Lens' Ec2InstanceAttributes (Maybe Text)
+ Network.AWS.EMR.Types: eiaEmrManagedSlaveSecurityGroup :: Lens' Ec2InstanceAttributes (Maybe Text)
+ Network.AWS.EMR.Types: instance Read ActionOnFailure
+ Network.AWS.EMR.Types: instance Read Application
+ Network.AWS.EMR.Types: instance Read BootstrapActionConfig
+ Network.AWS.EMR.Types: instance Read BootstrapActionDetail
+ Network.AWS.EMR.Types: instance Read Cluster
+ Network.AWS.EMR.Types: instance Read ClusterState
+ Network.AWS.EMR.Types: instance Read ClusterStateChangeReason
+ Network.AWS.EMR.Types: instance Read ClusterStateChangeReasonCode
+ Network.AWS.EMR.Types: instance Read ClusterStatus
+ Network.AWS.EMR.Types: instance Read ClusterSummary
+ Network.AWS.EMR.Types: instance Read ClusterTimeline
+ Network.AWS.EMR.Types: instance Read Command
+ Network.AWS.EMR.Types: instance Read Ec2InstanceAttributes
+ Network.AWS.EMR.Types: instance Read HadoopJarStepConfig
+ Network.AWS.EMR.Types: instance Read HadoopStepConfig
+ Network.AWS.EMR.Types: instance Read Instance
+ Network.AWS.EMR.Types: instance Read InstanceGroup
+ Network.AWS.EMR.Types: instance Read InstanceGroupConfig
+ Network.AWS.EMR.Types: instance Read InstanceGroupDetail
+ Network.AWS.EMR.Types: instance Read InstanceGroupModifyConfig
+ Network.AWS.EMR.Types: instance Read InstanceGroupState
+ Network.AWS.EMR.Types: instance Read InstanceGroupStateChangeReason
+ Network.AWS.EMR.Types: instance Read InstanceGroupStateChangeReasonCode
+ Network.AWS.EMR.Types: instance Read InstanceGroupStatus
+ Network.AWS.EMR.Types: instance Read InstanceGroupTimeline
+ Network.AWS.EMR.Types: instance Read InstanceGroupType
+ Network.AWS.EMR.Types: instance Read InstanceRoleType
+ Network.AWS.EMR.Types: instance Read InstanceState
+ Network.AWS.EMR.Types: instance Read InstanceStateChangeReason
+ Network.AWS.EMR.Types: instance Read InstanceStateChangeReasonCode
+ Network.AWS.EMR.Types: instance Read InstanceStatus
+ Network.AWS.EMR.Types: instance Read InstanceTimeline
+ Network.AWS.EMR.Types: instance Read JobFlowDetail
+ Network.AWS.EMR.Types: instance Read JobFlowExecutionState
+ Network.AWS.EMR.Types: instance Read JobFlowExecutionStatusDetail
+ Network.AWS.EMR.Types: instance Read JobFlowInstancesConfig
+ Network.AWS.EMR.Types: instance Read JobFlowInstancesDetail
+ Network.AWS.EMR.Types: instance Read KeyValue
+ Network.AWS.EMR.Types: instance Read MarketType
+ Network.AWS.EMR.Types: instance Read PlacementType
+ Network.AWS.EMR.Types: instance Read ScriptBootstrapActionConfig
+ Network.AWS.EMR.Types: instance Read Step
+ Network.AWS.EMR.Types: instance Read StepConfig
+ Network.AWS.EMR.Types: instance Read StepDetail
+ Network.AWS.EMR.Types: instance Read StepExecutionState
+ Network.AWS.EMR.Types: instance Read StepExecutionStatusDetail
+ Network.AWS.EMR.Types: instance Read StepState
+ Network.AWS.EMR.Types: instance Read StepStateChangeReason
+ Network.AWS.EMR.Types: instance Read StepStateChangeReasonCode
+ Network.AWS.EMR.Types: instance Read StepStatus
+ Network.AWS.EMR.Types: instance Read StepSummary
+ Network.AWS.EMR.Types: instance Read StepTimeline
+ Network.AWS.EMR.Types: instance Read SupportedProductConfig
+ Network.AWS.EMR.Types: instance Read Tag
+ Network.AWS.EMR.Types: jficAdditionalMasterSecurityGroups :: Lens' JobFlowInstancesConfig [Text]
+ Network.AWS.EMR.Types: jficAdditionalSlaveSecurityGroups :: Lens' JobFlowInstancesConfig [Text]
+ Network.AWS.EMR.Types: jficEmrManagedMasterSecurityGroup :: Lens' JobFlowInstancesConfig (Maybe Text)
+ Network.AWS.EMR.Types: jficEmrManagedSlaveSecurityGroup :: Lens' JobFlowInstancesConfig (Maybe Text)
Files
- amazonka-emr.cabal +2/−2
- gen/Network/AWS/EMR/AddInstanceGroups.hs +2/−2
- gen/Network/AWS/EMR/AddJobFlowSteps.hs +2/−2
- gen/Network/AWS/EMR/AddTags.hs +2/−2
- gen/Network/AWS/EMR/DescribeCluster.hs +2/−2
- gen/Network/AWS/EMR/DescribeJobFlows.hs +2/−2
- gen/Network/AWS/EMR/DescribeStep.hs +2/−2
- gen/Network/AWS/EMR/ListBootstrapActions.hs +2/−2
- gen/Network/AWS/EMR/ListClusters.hs +2/−2
- gen/Network/AWS/EMR/ListInstanceGroups.hs +2/−2
- gen/Network/AWS/EMR/ListInstances.hs +2/−2
- gen/Network/AWS/EMR/ListSteps.hs +2/−2
- gen/Network/AWS/EMR/ModifyInstanceGroups.hs +2/−2
- gen/Network/AWS/EMR/RemoveTags.hs +2/−2
- gen/Network/AWS/EMR/RunJobFlow.hs +2/−2
- gen/Network/AWS/EMR/SetTerminationProtection.hs +2/−2
- gen/Network/AWS/EMR/SetVisibleToAllUsers.hs +2/−2
- gen/Network/AWS/EMR/TerminateJobFlows.hs +2/−2
- gen/Network/AWS/EMR/Types.hs +210/−98
amazonka-emr.cabal view
@@ -1,5 +1,5 @@ name: amazonka-emr-version: 0.2.1+version: 0.2.2 synopsis: Amazon Elastic MapReduce SDK. homepage: https://github.com/brendanhay/amazonka license: OtherLicense@@ -60,5 +60,5 @@ other-modules: build-depends:- amazonka-core == 0.2.1.*+ amazonka-core == 0.2.2.* , base >= 4.7 && < 5
gen/Network/AWS/EMR/AddInstanceGroups.hs view
@@ -52,7 +52,7 @@ data AddInstanceGroups = AddInstanceGroups { _aigInstanceGroups :: List "InstanceGroups" InstanceGroupConfig , _aigJobFlowId :: Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'AddInstanceGroups' constructor. --@@ -82,7 +82,7 @@ data AddInstanceGroupsResponse = AddInstanceGroupsResponse { _aigrInstanceGroupIds :: List "InstanceGroupIds" Text , _aigrJobFlowId :: Maybe Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'AddInstanceGroupsResponse' constructor. --
gen/Network/AWS/EMR/AddJobFlowSteps.hs view
@@ -73,7 +73,7 @@ data AddJobFlowSteps = AddJobFlowSteps { _ajfsJobFlowId :: Text , _ajfsSteps :: List "Steps" StepConfig- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'AddJobFlowSteps' constructor. --@@ -101,7 +101,7 @@ newtype AddJobFlowStepsResponse = AddJobFlowStepsResponse { _ajfsrStepIds :: List "StepIds" Text- } deriving (Eq, Ord, Show, Monoid, Semigroup)+ } deriving (Eq, Ord, Read, Show, Monoid, Semigroup) instance GHC.Exts.IsList AddJobFlowStepsResponse where type Item AddJobFlowStepsResponse = Text
gen/Network/AWS/EMR/AddTags.hs view
@@ -51,7 +51,7 @@ data AddTags = AddTags { _atResourceId :: Text , _atTags :: List "Tags" Tag- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'AddTags' constructor. --@@ -81,7 +81,7 @@ atTags = lens _atTags (\s a -> s { _atTags = a }) . _List data AddTagsResponse = AddTagsResponse- deriving (Eq, Ord, Show, Generic)+ deriving (Eq, Ord, Read, Show, Generic) -- | 'AddTagsResponse' constructor. addTagsResponse :: AddTagsResponse
gen/Network/AWS/EMR/DescribeCluster.hs view
@@ -51,7 +51,7 @@ newtype DescribeCluster = DescribeCluster { _dcClusterId :: Text- } deriving (Eq, Ord, Show, Monoid, IsString)+ } deriving (Eq, Ord, Read, Show, Monoid, IsString) -- | 'DescribeCluster' constructor. --@@ -71,7 +71,7 @@ newtype DescribeClusterResponse = DescribeClusterResponse { _dcrCluster :: Cluster- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'DescribeClusterResponse' constructor. --
gen/Network/AWS/EMR/DescribeJobFlows.hs view
@@ -70,7 +70,7 @@ , _djfCreatedBefore :: Maybe POSIX , _djfJobFlowIds :: List "JobFlowIds" Text , _djfJobFlowStates :: List "JobFlowStates" JobFlowExecutionState- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'DescribeJobFlows' constructor. --@@ -110,7 +110,7 @@ newtype DescribeJobFlowsResponse = DescribeJobFlowsResponse { _djfrJobFlows :: List "JobFlows" JobFlowDetail- } deriving (Eq, Show, Monoid, Semigroup)+ } deriving (Eq, Read, Show, Monoid, Semigroup) instance GHC.Exts.IsList DescribeJobFlowsResponse where type Item DescribeJobFlowsResponse = JobFlowDetail
gen/Network/AWS/EMR/DescribeStep.hs view
@@ -51,7 +51,7 @@ data DescribeStep = DescribeStep { _dsClusterId :: Text , _dsStepId :: Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'DescribeStep' constructor. --@@ -79,7 +79,7 @@ newtype DescribeStepResponse = DescribeStepResponse { _dsrStep :: Maybe Step- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'DescribeStepResponse' constructor. --
gen/Network/AWS/EMR/ListBootstrapActions.hs view
@@ -52,7 +52,7 @@ data ListBootstrapActions = ListBootstrapActions { _lbaClusterId :: Text , _lbaMarker :: Maybe Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'ListBootstrapActions' constructor. --@@ -80,7 +80,7 @@ data ListBootstrapActionsResponse = ListBootstrapActionsResponse { _lbarBootstrapActions :: List "BootstrapActions" Command , _lbarMarker :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ListBootstrapActionsResponse' constructor. --
gen/Network/AWS/EMR/ListClusters.hs view
@@ -60,7 +60,7 @@ , _lcCreatedAfter :: Maybe POSIX , _lcCreatedBefore :: Maybe POSIX , _lcMarker :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ListClusters' constructor. --@@ -101,7 +101,7 @@ data ListClustersResponse = ListClustersResponse { _lcrClusters :: List "Clusters" ClusterSummary , _lcrMarker :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ListClustersResponse' constructor. --
gen/Network/AWS/EMR/ListInstanceGroups.hs view
@@ -52,7 +52,7 @@ data ListInstanceGroups = ListInstanceGroups { _ligClusterId :: Text , _ligMarker :: Maybe Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'ListInstanceGroups' constructor. --@@ -80,7 +80,7 @@ data ListInstanceGroupsResponse = ListInstanceGroupsResponse { _ligrInstanceGroups :: List "InstanceGroups" InstanceGroup , _ligrMarker :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ListInstanceGroupsResponse' constructor. --
gen/Network/AWS/EMR/ListInstances.hs view
@@ -60,7 +60,7 @@ , _liInstanceGroupId :: Maybe Text , _liInstanceGroupTypes :: List "InstanceGroupTypes" InstanceGroupType , _liMarker :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ListInstances' constructor. --@@ -105,7 +105,7 @@ data ListInstancesResponse = ListInstancesResponse { _lirInstances :: List "Instances" Instance , _lirMarker :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ListInstancesResponse' constructor. --
gen/Network/AWS/EMR/ListSteps.hs view
@@ -56,7 +56,7 @@ , _lsMarker :: Maybe Text , _lsStepIds :: List "StepIds" Text , _lsStepStates :: List "StepStates" StepState- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ListSteps' constructor. --@@ -98,7 +98,7 @@ data ListStepsResponse = ListStepsResponse { _lsrMarker :: Maybe Text , _lsrSteps :: List "Steps" StepSummary- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ListStepsResponse' constructor. --
gen/Network/AWS/EMR/ModifyInstanceGroups.hs view
@@ -50,7 +50,7 @@ newtype ModifyInstanceGroups = ModifyInstanceGroups { _migInstanceGroups :: List "InstanceGroups" InstanceGroupModifyConfig- } deriving (Eq, Show, Monoid, Semigroup)+ } deriving (Eq, Read, Show, Monoid, Semigroup) instance GHC.Exts.IsList ModifyInstanceGroups where type Item ModifyInstanceGroups = InstanceGroupModifyConfig@@ -76,7 +76,7 @@ . _List data ModifyInstanceGroupsResponse = ModifyInstanceGroupsResponse- deriving (Eq, Ord, Show, Generic)+ deriving (Eq, Ord, Read, Show, Generic) -- | 'ModifyInstanceGroupsResponse' constructor. modifyInstanceGroupsResponse :: ModifyInstanceGroupsResponse
gen/Network/AWS/EMR/RemoveTags.hs view
@@ -53,7 +53,7 @@ data RemoveTags = RemoveTags { _rtResourceId :: Text , _rtTagKeys :: List "TagKeys" Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'RemoveTags' constructor. --@@ -80,7 +80,7 @@ rtTagKeys = lens _rtTagKeys (\s a -> s { _rtTagKeys = a }) . _List data RemoveTagsResponse = RemoveTagsResponse- deriving (Eq, Ord, Show, Generic)+ deriving (Eq, Ord, Read, Show, Generic) -- | 'RemoveTagsResponse' constructor. removeTagsResponse :: RemoveTagsResponse
gen/Network/AWS/EMR/RunJobFlow.hs view
@@ -92,7 +92,7 @@ , _rjfSupportedProducts :: List "SupportedProducts" Text , _rjfTags :: List "Tags" Tag , _rjfVisibleToAllUsers :: Maybe Bool- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'RunJobFlow' constructor. --@@ -238,7 +238,7 @@ newtype RunJobFlowResponse = RunJobFlowResponse { _rjfrJobFlowId :: Maybe Text- } deriving (Eq, Ord, Show, Monoid)+ } deriving (Eq, Ord, Read, Show, Monoid) -- | 'RunJobFlowResponse' constructor. --
gen/Network/AWS/EMR/SetTerminationProtection.hs view
@@ -64,7 +64,7 @@ data SetTerminationProtection = SetTerminationProtection { _stpJobFlowIds :: List "JobFlowIds" Text , _stpTerminationProtected :: Bool- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'SetTerminationProtection' constructor. --@@ -94,7 +94,7 @@ lens _stpTerminationProtected (\s a -> s { _stpTerminationProtected = a }) data SetTerminationProtectionResponse = SetTerminationProtectionResponse- deriving (Eq, Ord, Show, Generic)+ deriving (Eq, Ord, Read, Show, Generic) -- | 'SetTerminationProtectionResponse' constructor. setTerminationProtectionResponse :: SetTerminationProtectionResponse
gen/Network/AWS/EMR/SetVisibleToAllUsers.hs view
@@ -54,7 +54,7 @@ data SetVisibleToAllUsers = SetVisibleToAllUsers { _svtauJobFlowIds :: List "JobFlowIds" Text , _svtauVisibleToAllUsers :: Bool- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'SetVisibleToAllUsers' constructor. --@@ -85,7 +85,7 @@ lens _svtauVisibleToAllUsers (\s a -> s { _svtauVisibleToAllUsers = a }) data SetVisibleToAllUsersResponse = SetVisibleToAllUsersResponse- deriving (Eq, Ord, Show, Generic)+ deriving (Eq, Ord, Read, Show, Generic) -- | 'SetVisibleToAllUsersResponse' constructor. setVisibleToAllUsersResponse :: SetVisibleToAllUsersResponse
gen/Network/AWS/EMR/TerminateJobFlows.hs view
@@ -56,7 +56,7 @@ newtype TerminateJobFlows = TerminateJobFlows { _tjfJobFlowIds :: List "JobFlowIds" Text- } deriving (Eq, Ord, Show, Monoid, Semigroup)+ } deriving (Eq, Ord, Read, Show, Monoid, Semigroup) instance GHC.Exts.IsList TerminateJobFlows where type Item TerminateJobFlows = Text@@ -80,7 +80,7 @@ tjfJobFlowIds = lens _tjfJobFlowIds (\s a -> s { _tjfJobFlowIds = a }) . _List data TerminateJobFlowsResponse = TerminateJobFlowsResponse- deriving (Eq, Ord, Show, Generic)+ deriving (Eq, Ord, Read, Show, Generic) -- | 'TerminateJobFlowsResponse' constructor. terminateJobFlowsResponse :: TerminateJobFlowsResponse
gen/Network/AWS/EMR/Types.hs view
@@ -156,9 +156,13 @@ -- * Ec2InstanceAttributes , Ec2InstanceAttributes , ec2InstanceAttributes+ , eiaAdditionalMasterSecurityGroups+ , eiaAdditionalSlaveSecurityGroups , eiaEc2AvailabilityZone , eiaEc2KeyName , eiaEc2SubnetId+ , eiaEmrManagedMasterSecurityGroup+ , eiaEmrManagedSlaveSecurityGroup , eiaIamInstanceProfile -- * StepStateChangeReasonCode@@ -315,8 +319,12 @@ -- * JobFlowInstancesConfig , JobFlowInstancesConfig , jobFlowInstancesConfig+ , jficAdditionalMasterSecurityGroups+ , jficAdditionalSlaveSecurityGroups , jficEc2KeyName , jficEc2SubnetId+ , jficEmrManagedMasterSecurityGroup+ , jficEmrManagedSlaveSecurityGroup , jficHadoopVersion , jficInstanceCount , jficInstanceGroups@@ -464,7 +472,7 @@ data MarketType = OnDemand -- ^ ON_DEMAND | Spot -- ^ SPOT- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable MarketType @@ -497,7 +505,7 @@ , _igcInstanceType :: Text , _igcMarket :: Maybe MarketType , _igcName :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'InstanceGroupConfig' constructor. --@@ -575,7 +583,7 @@ data InstanceStateChangeReason = InstanceStateChangeReason { _iscrCode :: Maybe InstanceStateChangeReasonCode , _iscrMessage :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'InstanceStateChangeReason' constructor. --@@ -623,7 +631,7 @@ , _jfdSteps :: List "Steps" StepDetail , _jfdSupportedProducts :: List "SupportedProducts" Text , _jfdVisibleToAllUsers :: Maybe Bool- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'JobFlowDetail' constructor. --@@ -773,7 +781,7 @@ data KeyValue = KeyValue { _kvKey :: Maybe Text , _kvValue :: Maybe Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'KeyValue' constructor. --@@ -811,7 +819,7 @@ data SupportedProductConfig = SupportedProductConfig { _spcArgs :: List "Args" Text , _spcName :: Maybe Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'SupportedProductConfig' constructor. --@@ -850,7 +858,7 @@ { _cArgs :: List "Args" Text , _cName :: Maybe Text , _cScriptPath :: Maybe Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'Command' constructor. --@@ -902,7 +910,7 @@ | Interrupted -- ^ INTERRUPTED | Pending -- ^ PENDING | Running -- ^ RUNNING- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable StepExecutionState @@ -943,7 +951,7 @@ | AOFContinue -- ^ CONTINUE | AOFTerminateCluster -- ^ TERMINATE_CLUSTER | AOFTerminateJobFlow -- ^ TERMINATE_JOB_FLOW- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable ActionOnFailure @@ -976,7 +984,7 @@ data ClusterStateChangeReason = ClusterStateChangeReason { _cscrCode :: Maybe ClusterStateChangeReasonCode , _cscrMessage :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ClusterStateChangeReason' constructor. --@@ -1014,7 +1022,7 @@ data Tag = Tag { _tagKey :: Maybe Text , _tagValue :: Maybe Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'Tag' constructor. --@@ -1055,7 +1063,7 @@ , _aArgs :: List "Args" Text , _aName :: Maybe Text , _aVersion :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'Application' constructor. --@@ -1116,7 +1124,7 @@ , _jfesdReadyDateTime :: Maybe POSIX , _jfesdStartDateTime :: Maybe POSIX , _jfesdState :: JobFlowExecutionState- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'JobFlowExecutionStatusDetail' constructor. --@@ -1202,7 +1210,7 @@ { _igsState :: Maybe InstanceGroupState , _igsStateChangeReason :: Maybe InstanceGroupStateChangeReason , _igsTimeline :: Maybe InstanceGroupTimeline- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'InstanceGroupStatus' constructor. --@@ -1263,7 +1271,7 @@ , _c1Tags :: List "Tags" Tag , _c1TerminationProtected :: Maybe Bool , _c1VisibleToAllUsers :: Maybe Bool- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'Cluster' constructor. --@@ -1443,7 +1451,7 @@ { _itCreationDateTime :: Maybe POSIX , _itEndDateTime :: Maybe POSIX , _itReadyDateTime :: Maybe POSIX- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'InstanceTimeline' constructor. --@@ -1490,32 +1498,62 @@ ] data Ec2InstanceAttributes = Ec2InstanceAttributes- { _eiaEc2AvailabilityZone :: Maybe Text- , _eiaEc2KeyName :: Maybe Text- , _eiaEc2SubnetId :: Maybe Text- , _eiaIamInstanceProfile :: Maybe Text- } deriving (Eq, Ord, Show)+ { _eiaAdditionalMasterSecurityGroups :: List "AdditionalMasterSecurityGroups" Text+ , _eiaAdditionalSlaveSecurityGroups :: List "AdditionalSlaveSecurityGroups" Text+ , _eiaEc2AvailabilityZone :: Maybe Text+ , _eiaEc2KeyName :: Maybe Text+ , _eiaEc2SubnetId :: Maybe Text+ , _eiaEmrManagedMasterSecurityGroup :: Maybe Text+ , _eiaEmrManagedSlaveSecurityGroup :: Maybe Text+ , _eiaIamInstanceProfile :: Maybe Text+ } deriving (Eq, Ord, Read, Show) -- | 'Ec2InstanceAttributes' constructor. -- -- The fields accessible through corresponding lenses are: --+-- * 'eiaAdditionalMasterSecurityGroups' @::@ ['Text']+--+-- * 'eiaAdditionalSlaveSecurityGroups' @::@ ['Text']+-- -- * 'eiaEc2AvailabilityZone' @::@ 'Maybe' 'Text' -- -- * 'eiaEc2KeyName' @::@ 'Maybe' 'Text' -- -- * 'eiaEc2SubnetId' @::@ 'Maybe' 'Text' --+-- * 'eiaEmrManagedMasterSecurityGroup' @::@ 'Maybe' 'Text'+--+-- * 'eiaEmrManagedSlaveSecurityGroup' @::@ 'Maybe' 'Text'+-- -- * 'eiaIamInstanceProfile' @::@ 'Maybe' 'Text' -- ec2InstanceAttributes :: Ec2InstanceAttributes ec2InstanceAttributes = Ec2InstanceAttributes- { _eiaEc2KeyName = Nothing- , _eiaEc2SubnetId = Nothing- , _eiaEc2AvailabilityZone = Nothing- , _eiaIamInstanceProfile = Nothing+ { _eiaEc2KeyName = Nothing+ , _eiaEc2SubnetId = Nothing+ , _eiaEc2AvailabilityZone = Nothing+ , _eiaIamInstanceProfile = Nothing+ , _eiaEmrManagedMasterSecurityGroup = Nothing+ , _eiaEmrManagedSlaveSecurityGroup = Nothing+ , _eiaAdditionalMasterSecurityGroups = mempty+ , _eiaAdditionalSlaveSecurityGroups = mempty } +-- | A list of additional Amazon EC2 security group IDs for the master node.+eiaAdditionalMasterSecurityGroups :: Lens' Ec2InstanceAttributes [Text]+eiaAdditionalMasterSecurityGroups =+ lens _eiaAdditionalMasterSecurityGroups+ (\s a -> s { _eiaAdditionalMasterSecurityGroups = a })+ . _List++-- | A list of additional Amazon EC2 security group IDs for the slave nodes.+eiaAdditionalSlaveSecurityGroups :: Lens' Ec2InstanceAttributes [Text]+eiaAdditionalSlaveSecurityGroups =+ lens _eiaAdditionalSlaveSecurityGroups+ (\s a -> s { _eiaAdditionalSlaveSecurityGroups = a })+ . _List+ -- | The Availability Zone in which the cluster will run. eiaEc2AvailabilityZone :: Lens' Ec2InstanceAttributes (Maybe Text) eiaEc2AvailabilityZone =@@ -1537,6 +1575,20 @@ eiaEc2SubnetId :: Lens' Ec2InstanceAttributes (Maybe Text) eiaEc2SubnetId = lens _eiaEc2SubnetId (\s a -> s { _eiaEc2SubnetId = a }) +-- | The identifier of the Amazon EC2 security group (managed by Amazon Elastic+-- MapReduce) for the master node.+eiaEmrManagedMasterSecurityGroup :: Lens' Ec2InstanceAttributes (Maybe Text)+eiaEmrManagedMasterSecurityGroup =+ lens _eiaEmrManagedMasterSecurityGroup+ (\s a -> s { _eiaEmrManagedMasterSecurityGroup = a })++-- | The identifier of the Amazon EC2 security group (managed by Amazon Elastic+-- MapReduce) for the slave nodes.+eiaEmrManagedSlaveSecurityGroup :: Lens' Ec2InstanceAttributes (Maybe Text)+eiaEmrManagedSlaveSecurityGroup =+ lens _eiaEmrManagedSlaveSecurityGroup+ (\s a -> s { _eiaEmrManagedSlaveSecurityGroup = a })+ -- | The IAM role that was specified when the job flow was launched. The EC2 -- instances of the job flow assume this role. eiaIamInstanceProfile :: Lens' Ec2InstanceAttributes (Maybe Text)@@ -1545,22 +1597,30 @@ instance FromJSON Ec2InstanceAttributes where parseJSON = withObject "Ec2InstanceAttributes" $ \o -> Ec2InstanceAttributes- <$> o .:? "Ec2AvailabilityZone"+ <$> o .:? "AdditionalMasterSecurityGroups" .!= mempty+ <*> o .:? "AdditionalSlaveSecurityGroups" .!= mempty+ <*> o .:? "Ec2AvailabilityZone" <*> o .:? "Ec2KeyName" <*> o .:? "Ec2SubnetId"+ <*> o .:? "EmrManagedMasterSecurityGroup"+ <*> o .:? "EmrManagedSlaveSecurityGroup" <*> o .:? "IamInstanceProfile" instance ToJSON Ec2InstanceAttributes where toJSON Ec2InstanceAttributes{..} = object- [ "Ec2KeyName" .= _eiaEc2KeyName- , "Ec2SubnetId" .= _eiaEc2SubnetId- , "Ec2AvailabilityZone" .= _eiaEc2AvailabilityZone- , "IamInstanceProfile" .= _eiaIamInstanceProfile+ [ "Ec2KeyName" .= _eiaEc2KeyName+ , "Ec2SubnetId" .= _eiaEc2SubnetId+ , "Ec2AvailabilityZone" .= _eiaEc2AvailabilityZone+ , "IamInstanceProfile" .= _eiaIamInstanceProfile+ , "EmrManagedMasterSecurityGroup" .= _eiaEmrManagedMasterSecurityGroup+ , "EmrManagedSlaveSecurityGroup" .= _eiaEmrManagedSlaveSecurityGroup+ , "AdditionalMasterSecurityGroups" .= _eiaAdditionalMasterSecurityGroups+ , "AdditionalSlaveSecurityGroups" .= _eiaAdditionalSlaveSecurityGroups ] data StepStateChangeReasonCode = None -- ^ NONE- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable StepStateChangeReasonCode @@ -1591,7 +1651,7 @@ | CSTerminatedWithErrors -- ^ TERMINATED_WITH_ERRORS | CSTerminating -- ^ TERMINATING | CSWaiting -- ^ WAITING- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable ClusterState @@ -1632,7 +1692,7 @@ , _hscJar :: Maybe Text , _hscMainClass :: Maybe Text , _hscProperties :: Map Text Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'HadoopStepConfig' constructor. --@@ -1697,7 +1757,7 @@ | JFESStarting -- ^ STARTING | JFESTerminated -- ^ TERMINATED | JFESWaiting -- ^ WAITING- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable JobFlowExecutionState @@ -1738,7 +1798,7 @@ data StepDetail = StepDetail { _sdExecutionStatusDetail :: StepExecutionStatusDetail , _sdStepConfig :: StepConfig- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'StepDetail' constructor. --@@ -1779,7 +1839,7 @@ data InstanceGroupStateChangeReason = InstanceGroupStateChangeReason { _igscrCode :: Maybe InstanceGroupStateChangeReasonCode , _igscrMessage :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'InstanceGroupStateChangeReason' constructor. --@@ -1818,7 +1878,7 @@ = Core -- ^ CORE | Master -- ^ MASTER | Task -- ^ TASK- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable InstanceGroupType @@ -1851,7 +1911,7 @@ | InstanceFailure -- ^ INSTANCE_FAILURE | InternalError -- ^ INTERNAL_ERROR | ValidationError -- ^ VALIDATION_ERROR- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable InstanceGroupStateChangeReasonCode @@ -1885,7 +1945,7 @@ { _ssState :: Maybe StepState , _ssStateChangeReason :: Maybe StepStateChangeReason , _ssTimeline :: Maybe StepTimeline- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'StepStatus' constructor. --@@ -1936,7 +1996,7 @@ , _ssId :: Maybe Text , _ssName :: Maybe Text , _ssStatus :: Maybe StepStatus- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'StepSummary' constructor. --@@ -2011,7 +2071,7 @@ | IGSSuspended -- ^ SUSPENDED | IGSTerminated -- ^ TERMINATED | IGSTerminating -- ^ TERMINATING- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable InstanceGroupState @@ -2057,7 +2117,7 @@ { _stCreationDateTime :: Maybe POSIX , _stEndDateTime :: Maybe POSIX , _stStartDateTime :: Maybe POSIX- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'StepTimeline' constructor. --@@ -2105,7 +2165,7 @@ newtype PlacementType = PlacementType { _ptAvailabilityZone :: Text- } deriving (Eq, Ord, Show, Monoid, IsString)+ } deriving (Eq, Ord, Read, Show, Monoid, IsString) -- | 'PlacementType' constructor. --@@ -2138,7 +2198,7 @@ , _hjscJar :: Text , _hjscMainClass :: Maybe Text , _hjscProperties :: List "Properties" KeyValue- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'HadoopJarStepConfig' constructor. --@@ -2199,7 +2259,7 @@ { _igmcEC2InstanceIdsToTerminate :: List "EC2InstanceIdsToTerminate" Text , _igmcInstanceCount :: Maybe Int , _igmcInstanceGroupId :: Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'InstanceGroupModifyConfig' constructor. --@@ -2266,7 +2326,7 @@ , _igdReadyDateTime :: Maybe POSIX , _igdStartDateTime :: Maybe POSIX , _igdState :: InstanceGroupState- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'InstanceGroupDetail' constructor. --@@ -2428,7 +2488,7 @@ data StepStateChangeReason = StepStateChangeReason { _sscrCode :: Maybe StepStateChangeReasonCode , _sscrMessage :: Maybe Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'StepStateChangeReason' constructor. --@@ -2471,7 +2531,7 @@ | CSCRCStepFailure -- ^ STEP_FAILURE | CSCRCUserRequest -- ^ USER_REQUEST | CSCRCValidationError -- ^ VALIDATION_ERROR- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable ClusterStateChangeReasonCode @@ -2513,7 +2573,7 @@ , _sId :: Maybe Text , _sName :: Maybe Text , _sStatus :: Maybe StepStatus- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'Step' constructor. --@@ -2583,7 +2643,7 @@ | SSInterrupted -- ^ INTERRUPTED | SSPending -- ^ PENDING | SSRunning -- ^ RUNNING- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable StepState @@ -2621,7 +2681,7 @@ { _igtCreationDateTime :: Maybe POSIX , _igtEndDateTime :: Maybe POSIX , _igtReadyDateTime :: Maybe POSIX- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'InstanceGroupTimeline' constructor. --@@ -2669,7 +2729,7 @@ newtype BootstrapActionDetail = BootstrapActionDetail { _badBootstrapActionConfig :: Maybe BootstrapActionConfig- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'BootstrapActionDetail' constructor. --@@ -2703,7 +2763,7 @@ , _sesdLastStateChangeReason :: Maybe Text , _sesdStartDateTime :: Maybe POSIX , _sesdState :: StepExecutionState- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'StepExecutionStatusDetail' constructor. --@@ -2777,7 +2837,7 @@ { _isState :: Maybe InstanceState , _isStateChangeReason :: Maybe InstanceStateChangeReason , _isTimeline :: Maybe InstanceTimeline- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'InstanceStatus' constructor. --@@ -2826,7 +2886,7 @@ = IRTCore -- ^ CORE | IRTMaster -- ^ MASTER | IRTTask -- ^ TASK- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable InstanceRoleType @@ -2855,26 +2915,38 @@ toJSON = toJSONText data JobFlowInstancesConfig = JobFlowInstancesConfig- { _jficEc2KeyName :: Maybe Text- , _jficEc2SubnetId :: Maybe Text- , _jficHadoopVersion :: Maybe Text- , _jficInstanceCount :: Maybe Int- , _jficInstanceGroups :: List "InstanceGroups" InstanceGroupConfig- , _jficKeepJobFlowAliveWhenNoSteps :: Maybe Bool- , _jficMasterInstanceType :: Maybe Text- , _jficPlacement :: Maybe PlacementType- , _jficSlaveInstanceType :: Maybe Text- , _jficTerminationProtected :: Maybe Bool- } deriving (Eq, Show)+ { _jficAdditionalMasterSecurityGroups :: List "AdditionalMasterSecurityGroups" Text+ , _jficAdditionalSlaveSecurityGroups :: List "AdditionalSlaveSecurityGroups" Text+ , _jficEc2KeyName :: Maybe Text+ , _jficEc2SubnetId :: Maybe Text+ , _jficEmrManagedMasterSecurityGroup :: Maybe Text+ , _jficEmrManagedSlaveSecurityGroup :: Maybe Text+ , _jficHadoopVersion :: Maybe Text+ , _jficInstanceCount :: Maybe Int+ , _jficInstanceGroups :: List "InstanceGroups" InstanceGroupConfig+ , _jficKeepJobFlowAliveWhenNoSteps :: Maybe Bool+ , _jficMasterInstanceType :: Maybe Text+ , _jficPlacement :: Maybe PlacementType+ , _jficSlaveInstanceType :: Maybe Text+ , _jficTerminationProtected :: Maybe Bool+ } deriving (Eq, Read, Show) -- | 'JobFlowInstancesConfig' constructor. -- -- The fields accessible through corresponding lenses are: --+-- * 'jficAdditionalMasterSecurityGroups' @::@ ['Text']+--+-- * 'jficAdditionalSlaveSecurityGroups' @::@ ['Text']+-- -- * 'jficEc2KeyName' @::@ 'Maybe' 'Text' -- -- * 'jficEc2SubnetId' @::@ 'Maybe' 'Text' --+-- * 'jficEmrManagedMasterSecurityGroup' @::@ 'Maybe' 'Text'+--+-- * 'jficEmrManagedSlaveSecurityGroup' @::@ 'Maybe' 'Text'+-- -- * 'jficHadoopVersion' @::@ 'Maybe' 'Text' -- -- * 'jficInstanceCount' @::@ 'Maybe' 'Int'@@ -2893,18 +2965,36 @@ -- jobFlowInstancesConfig :: JobFlowInstancesConfig jobFlowInstancesConfig = JobFlowInstancesConfig- { _jficMasterInstanceType = Nothing- , _jficSlaveInstanceType = Nothing- , _jficInstanceCount = Nothing- , _jficInstanceGroups = mempty- , _jficEc2KeyName = Nothing- , _jficPlacement = Nothing- , _jficKeepJobFlowAliveWhenNoSteps = Nothing- , _jficTerminationProtected = Nothing- , _jficHadoopVersion = Nothing- , _jficEc2SubnetId = Nothing+ { _jficMasterInstanceType = Nothing+ , _jficSlaveInstanceType = Nothing+ , _jficInstanceCount = Nothing+ , _jficInstanceGroups = mempty+ , _jficEc2KeyName = Nothing+ , _jficPlacement = Nothing+ , _jficKeepJobFlowAliveWhenNoSteps = Nothing+ , _jficTerminationProtected = Nothing+ , _jficHadoopVersion = Nothing+ , _jficEc2SubnetId = Nothing+ , _jficEmrManagedMasterSecurityGroup = Nothing+ , _jficEmrManagedSlaveSecurityGroup = Nothing+ , _jficAdditionalMasterSecurityGroups = mempty+ , _jficAdditionalSlaveSecurityGroups = mempty } +-- | A list of additional Amazon EC2 security group IDs for the master node.+jficAdditionalMasterSecurityGroups :: Lens' JobFlowInstancesConfig [Text]+jficAdditionalMasterSecurityGroups =+ lens _jficAdditionalMasterSecurityGroups+ (\s a -> s { _jficAdditionalMasterSecurityGroups = a })+ . _List++-- | A list of additional Amazon EC2 security group IDs for the slave nodes.+jficAdditionalSlaveSecurityGroups :: Lens' JobFlowInstancesConfig [Text]+jficAdditionalSlaveSecurityGroups =+ lens _jficAdditionalSlaveSecurityGroups+ (\s a -> s { _jficAdditionalSlaveSecurityGroups = a })+ . _List+ -- | The name of the Amazon EC2 key pair that can be used to ssh to the master -- node as the user called "hadoop." jficEc2KeyName :: Lens' JobFlowInstancesConfig (Maybe Text)@@ -2921,6 +3011,20 @@ jficEc2SubnetId :: Lens' JobFlowInstancesConfig (Maybe Text) jficEc2SubnetId = lens _jficEc2SubnetId (\s a -> s { _jficEc2SubnetId = a }) +-- | The identifier of the Amazon EC2 security group (managed by Amazon+-- ElasticMapReduce) for the master node.+jficEmrManagedMasterSecurityGroup :: Lens' JobFlowInstancesConfig (Maybe Text)+jficEmrManagedMasterSecurityGroup =+ lens _jficEmrManagedMasterSecurityGroup+ (\s a -> s { _jficEmrManagedMasterSecurityGroup = a })++-- | The identifier of the Amazon EC2 security group (managed by Amazon+-- ElasticMapReduce) for the slave nodes.+jficEmrManagedSlaveSecurityGroup :: Lens' JobFlowInstancesConfig (Maybe Text)+jficEmrManagedSlaveSecurityGroup =+ lens _jficEmrManagedSlaveSecurityGroup+ (\s a -> s { _jficEmrManagedSlaveSecurityGroup = a })+ -- | The Hadoop version for the job flow. Valid inputs are "0.18", "0.20", -- "0.20.205", "1.0.3", "2.2.0", or "2.4.0". If you do not set this value, the -- default of 0.18 is used, unless the AmiVersion parameter is set in the@@ -2971,8 +3075,12 @@ instance FromJSON JobFlowInstancesConfig where parseJSON = withObject "JobFlowInstancesConfig" $ \o -> JobFlowInstancesConfig- <$> o .:? "Ec2KeyName"+ <$> o .:? "AdditionalMasterSecurityGroups" .!= mempty+ <*> o .:? "AdditionalSlaveSecurityGroups" .!= mempty+ <*> o .:? "Ec2KeyName" <*> o .:? "Ec2SubnetId"+ <*> o .:? "EmrManagedMasterSecurityGroup"+ <*> o .:? "EmrManagedSlaveSecurityGroup" <*> o .:? "HadoopVersion" <*> o .:? "InstanceCount" <*> o .:? "InstanceGroups" .!= mempty@@ -2984,23 +3092,27 @@ instance ToJSON JobFlowInstancesConfig where toJSON JobFlowInstancesConfig{..} = object- [ "MasterInstanceType" .= _jficMasterInstanceType- , "SlaveInstanceType" .= _jficSlaveInstanceType- , "InstanceCount" .= _jficInstanceCount- , "InstanceGroups" .= _jficInstanceGroups- , "Ec2KeyName" .= _jficEc2KeyName- , "Placement" .= _jficPlacement- , "KeepJobFlowAliveWhenNoSteps" .= _jficKeepJobFlowAliveWhenNoSteps- , "TerminationProtected" .= _jficTerminationProtected- , "HadoopVersion" .= _jficHadoopVersion- , "Ec2SubnetId" .= _jficEc2SubnetId+ [ "MasterInstanceType" .= _jficMasterInstanceType+ , "SlaveInstanceType" .= _jficSlaveInstanceType+ , "InstanceCount" .= _jficInstanceCount+ , "InstanceGroups" .= _jficInstanceGroups+ , "Ec2KeyName" .= _jficEc2KeyName+ , "Placement" .= _jficPlacement+ , "KeepJobFlowAliveWhenNoSteps" .= _jficKeepJobFlowAliveWhenNoSteps+ , "TerminationProtected" .= _jficTerminationProtected+ , "HadoopVersion" .= _jficHadoopVersion+ , "Ec2SubnetId" .= _jficEc2SubnetId+ , "EmrManagedMasterSecurityGroup" .= _jficEmrManagedMasterSecurityGroup+ , "EmrManagedSlaveSecurityGroup" .= _jficEmrManagedSlaveSecurityGroup+ , "AdditionalMasterSecurityGroups" .= _jficAdditionalMasterSecurityGroups+ , "AdditionalSlaveSecurityGroups" .= _jficAdditionalSlaveSecurityGroups ] data StepConfig = StepConfig { _scActionOnFailure :: Maybe ActionOnFailure , _scHadoopJarStep :: HadoopJarStepConfig , _scName :: Text- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'StepConfig' constructor. --@@ -3057,7 +3169,7 @@ , _igRequestedInstanceCount :: Maybe Int , _igRunningInstanceCount :: Maybe Int , _igStatus :: Maybe InstanceGroupStatus- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'InstanceGroup' constructor. --@@ -3164,7 +3276,7 @@ data BootstrapActionConfig = BootstrapActionConfig { _bacName :: Text , _bacScriptBootstrapAction :: ScriptBootstrapActionConfig- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'BootstrapActionConfig' constructor. --@@ -3208,7 +3320,7 @@ , _csName :: Maybe Text , _csNormalizedInstanceHours :: Maybe Int , _csStatus :: Maybe ClusterStatus- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ClusterSummary' constructor. --@@ -3282,7 +3394,7 @@ , _jfidPlacement :: Maybe PlacementType , _jfidSlaveInstanceType :: Text , _jfidTerminationProtected :: Maybe Bool- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'JobFlowInstancesDetail' constructor. --@@ -3449,7 +3561,7 @@ { _csState :: Maybe ClusterState , _csStateChangeReason :: Maybe ClusterStateChangeReason , _csTimeline :: Maybe ClusterTimeline- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'ClusterStatus' constructor. --@@ -3501,7 +3613,7 @@ | ISProvisioning -- ^ PROVISIONING | ISRunning -- ^ RUNNING | ISTerminated -- ^ TERMINATED- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable InstanceState @@ -3537,7 +3649,7 @@ { _ctCreationDateTime :: Maybe POSIX , _ctEndDateTime :: Maybe POSIX , _ctReadyDateTime :: Maybe POSIX- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'ClusterTimeline' constructor. --@@ -3589,7 +3701,7 @@ | ISCRCInstanceFailure -- ^ INSTANCE_FAILURE | ISCRCInternalError -- ^ INTERNAL_ERROR | ISCRCValidationError -- ^ VALIDATION_ERROR- deriving (Eq, Ord, Show, Generic, Enum)+ deriving (Eq, Ord, Read, Show, Generic, Enum) instance Hashable InstanceStateChangeReasonCode @@ -3629,7 +3741,7 @@ , _iPublicDnsName :: Maybe Text , _iPublicIpAddress :: Maybe Text , _iStatus :: Maybe InstanceStatus- } deriving (Eq, Show)+ } deriving (Eq, Read, Show) -- | 'Instance' constructor. --@@ -3713,7 +3825,7 @@ data ScriptBootstrapActionConfig = ScriptBootstrapActionConfig { _sbacArgs :: List "Args" Text , _sbacPath :: Text- } deriving (Eq, Ord, Show)+ } deriving (Eq, Ord, Read, Show) -- | 'ScriptBootstrapActionConfig' constructor. --