stratosphere 0.24.0 → 0.24.1
raw patch · 5 files changed
+134/−2 lines, 5 files
Files
- CHANGELOG.md +4/−0
- library-gen/Stratosphere/ResourceProperties/EKSClusterResourcesVpcConfig.hs +52/−0
- library-gen/Stratosphere/Resources.hs +6/−0
- library-gen/Stratosphere/Resources/EKSCluster.hs +68/−0
- stratosphere.cabal +4/−2
CHANGELOG.md view
@@ -1,5 +1,9 @@ # Change Log +## 0.24.1++* Update resource specification document to support EKS+ ## 0.24.0 * Update resource specification document to version 2.4.0
+ library-gen/Stratosphere/ResourceProperties/EKSClusterResourcesVpcConfig.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TupleSections #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html++module Stratosphere.ResourceProperties.EKSClusterResourcesVpcConfig where++import Stratosphere.ResourceImports+++-- | Full data type definition for EKSClusterResourcesVpcConfig. See+-- 'eksClusterResourcesVpcConfig' for a more convenient constructor.+data EKSClusterResourcesVpcConfig =+ EKSClusterResourcesVpcConfig+ { _eKSClusterResourcesVpcConfigSecurityGroupIds :: Maybe (ValList Text)+ , _eKSClusterResourcesVpcConfigSubnetIds :: ValList Text+ } deriving (Show, Eq)++instance ToJSON EKSClusterResourcesVpcConfig where+ toJSON EKSClusterResourcesVpcConfig{..} =+ object $+ catMaybes+ [ fmap (("SecurityGroupIds",) . toJSON) _eKSClusterResourcesVpcConfigSecurityGroupIds+ , (Just . ("SubnetIds",) . toJSON) _eKSClusterResourcesVpcConfigSubnetIds+ ]++instance FromJSON EKSClusterResourcesVpcConfig where+ parseJSON (Object obj) =+ EKSClusterResourcesVpcConfig <$>+ (obj .:? "SecurityGroupIds") <*>+ (obj .: "SubnetIds")+ parseJSON _ = mempty++-- | Constructor for 'EKSClusterResourcesVpcConfig' containing required fields+-- as arguments.+eksClusterResourcesVpcConfig+ :: ValList Text -- ^ 'ekscrvcSubnetIds'+ -> EKSClusterResourcesVpcConfig+eksClusterResourcesVpcConfig subnetIdsarg =+ EKSClusterResourcesVpcConfig+ { _eKSClusterResourcesVpcConfigSecurityGroupIds = Nothing+ , _eKSClusterResourcesVpcConfigSubnetIds = subnetIdsarg+ }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-securitygroupids+ekscrvcSecurityGroupIds :: Lens' EKSClusterResourcesVpcConfig (Maybe (ValList Text))+ekscrvcSecurityGroupIds = lens _eKSClusterResourcesVpcConfigSecurityGroupIds (\s a -> s { _eKSClusterResourcesVpcConfigSecurityGroupIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-subnetids+ekscrvcSubnetIds :: Lens' EKSClusterResourcesVpcConfig (ValList Text)+ekscrvcSubnetIds = lens _eKSClusterResourcesVpcConfigSubnetIds (\s a -> s { _eKSClusterResourcesVpcConfigSubnetIds = a })
library-gen/Stratosphere/Resources.hs view
@@ -172,6 +172,7 @@ import Stratosphere.Resources.ECSTaskDefinition as X import Stratosphere.Resources.EFSFileSystem as X import Stratosphere.Resources.EFSMountTarget as X+import Stratosphere.Resources.EKSCluster as X import Stratosphere.Resources.EMRCluster as X import Stratosphere.Resources.EMRInstanceFleetConfig as X import Stratosphere.Resources.EMRInstanceGroupConfig as X@@ -567,6 +568,7 @@ import Stratosphere.ResourceProperties.ECSTaskDefinitionVolume as X import Stratosphere.ResourceProperties.ECSTaskDefinitionVolumeFrom as X import Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag as X+import Stratosphere.ResourceProperties.EKSClusterResourcesVpcConfig as X import Stratosphere.ResourceProperties.EMRClusterApplication as X import Stratosphere.ResourceProperties.EMRClusterAutoScalingPolicy as X import Stratosphere.ResourceProperties.EMRClusterBootstrapActionConfig as X@@ -1026,6 +1028,7 @@ | ECSTaskDefinitionProperties ECSTaskDefinition | EFSFileSystemProperties EFSFileSystem | EFSMountTargetProperties EFSMountTarget+ | EKSClusterProperties EKSCluster | EMRClusterProperties EMRCluster | EMRInstanceFleetConfigProperties EMRInstanceFleetConfig | EMRInstanceGroupConfigProperties EMRInstanceGroupConfig@@ -1489,6 +1492,8 @@ [ "Type" .= ("AWS::EFS::FileSystem" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (EFSMountTargetProperties x) = [ "Type" .= ("AWS::EFS::MountTarget" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EKSClusterProperties x) =+ [ "Type" .= ("AWS::EKS::Cluster" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (EMRClusterProperties x) = [ "Type" .= ("AWS::EMR::Cluster" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (EMRInstanceFleetConfigProperties x) =@@ -1936,6 +1941,7 @@ "AWS::ECS::TaskDefinition" -> ECSTaskDefinitionProperties <$> (o .: "Properties") "AWS::EFS::FileSystem" -> EFSFileSystemProperties <$> (o .: "Properties") "AWS::EFS::MountTarget" -> EFSMountTargetProperties <$> (o .: "Properties")+ "AWS::EKS::Cluster" -> EKSClusterProperties <$> (o .: "Properties") "AWS::EMR::Cluster" -> EMRClusterProperties <$> (o .: "Properties") "AWS::EMR::InstanceFleetConfig" -> EMRInstanceFleetConfigProperties <$> (o .: "Properties") "AWS::EMR::InstanceGroupConfig" -> EMRInstanceGroupConfigProperties <$> (o .: "Properties")
+ library-gen/Stratosphere/Resources/EKSCluster.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TupleSections #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html++module Stratosphere.Resources.EKSCluster where++import Stratosphere.ResourceImports+import Stratosphere.ResourceProperties.EKSClusterResourcesVpcConfig++-- | Full data type definition for EKSCluster. See 'eksCluster' for a more+-- convenient constructor.+data EKSCluster =+ EKSCluster+ { _eKSClusterName :: Maybe (Val Text)+ , _eKSClusterResourcesVpcConfig :: EKSClusterResourcesVpcConfig+ , _eKSClusterRoleArn :: Val Text+ , _eKSClusterVersion :: Maybe (Val Text)+ } deriving (Show, Eq)++instance ToJSON EKSCluster where+ toJSON EKSCluster{..} =+ object $+ catMaybes+ [ fmap (("Name",) . toJSON) _eKSClusterName+ , (Just . ("ResourcesVpcConfig",) . toJSON) _eKSClusterResourcesVpcConfig+ , (Just . ("RoleArn",) . toJSON) _eKSClusterRoleArn+ , fmap (("Version",) . toJSON) _eKSClusterVersion+ ]++instance FromJSON EKSCluster where+ parseJSON (Object obj) =+ EKSCluster <$>+ (obj .:? "Name") <*>+ (obj .: "ResourcesVpcConfig") <*>+ (obj .: "RoleArn") <*>+ (obj .:? "Version")+ parseJSON _ = mempty++-- | Constructor for 'EKSCluster' containing required fields as arguments.+eksCluster+ :: EKSClusterResourcesVpcConfig -- ^ 'ekscResourcesVpcConfig'+ -> Val Text -- ^ 'ekscRoleArn'+ -> EKSCluster+eksCluster resourcesVpcConfigarg roleArnarg =+ EKSCluster+ { _eKSClusterName = Nothing+ , _eKSClusterResourcesVpcConfig = resourcesVpcConfigarg+ , _eKSClusterRoleArn = roleArnarg+ , _eKSClusterVersion = Nothing+ }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-name+ekscName :: Lens' EKSCluster (Maybe (Val Text))+ekscName = lens _eKSClusterName (\s a -> s { _eKSClusterName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-resourcesvpcconfig+ekscResourcesVpcConfig :: Lens' EKSCluster EKSClusterResourcesVpcConfig+ekscResourcesVpcConfig = lens _eKSClusterResourcesVpcConfig (\s a -> s { _eKSClusterResourcesVpcConfig = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-rolearn+ekscRoleArn :: Lens' EKSCluster (Val Text)+ekscRoleArn = lens _eKSClusterRoleArn (\s a -> s { _eKSClusterRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-version+ekscVersion :: Lens' EKSCluster (Maybe (Val Text))+ekscVersion = lens _eKSClusterVersion (\s a -> s { _eKSClusterVersion = a })
stratosphere.cabal view
@@ -2,10 +2,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: 022f0189a0f205833c775f6ab3297da52a97aa3de6c111dfbd7bbbb2406ead91+-- hash: 327d2d239b5f7eb6db4c43d0f6b9e8acf9f150bb492aa64b7fc3375d385a517b name: stratosphere-version: 0.24.0+version: 0.24.1 synopsis: EDSL for AWS CloudFormation description: EDSL for AWS CloudFormation category: AWS, Cloud@@ -299,6 +299,7 @@ Stratosphere.ResourceProperties.ECSTaskDefinitionVolume Stratosphere.ResourceProperties.ECSTaskDefinitionVolumeFrom Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag+ Stratosphere.ResourceProperties.EKSClusterResourcesVpcConfig Stratosphere.ResourceProperties.ElastiCacheReplicationGroupNodeGroupConfiguration Stratosphere.ResourceProperties.ElasticBeanstalkApplicationApplicationResourceLifecycleConfig Stratosphere.ResourceProperties.ElasticBeanstalkApplicationApplicationVersionLifecycleConfig@@ -748,6 +749,7 @@ Stratosphere.Resources.ECSTaskDefinition Stratosphere.Resources.EFSFileSystem Stratosphere.Resources.EFSMountTarget+ Stratosphere.Resources.EKSCluster Stratosphere.Resources.ElastiCacheCacheCluster Stratosphere.Resources.ElastiCacheParameterGroup Stratosphere.Resources.ElastiCacheReplicationGroup