-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | EDSL for AWS CloudFormation -- -- EDSL for AWS CloudFormation @package stratosphere @version 0.2.2 module Stratosphere.Values -- | This type is a wrapper around any values in a template. A value can be -- a Literal, a Ref, or an intrinsic function. See: -- http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference.html data Val a Literal :: a -> Val a Ref :: Text -> Val a If :: Text -> (Val a) -> (Val a) -> Val a And :: (Val Bool') -> (Val Bool') -> Val a Equals :: (Val Bool') -> (Val Bool') -> Val a Or :: (Val Bool') -> (Val Bool') -> Val a GetAtt :: Text -> Text -> Val a Base64 :: (Val a) -> Val a Join :: Text -> [Val a] -> Val a Select :: Integer' -> (Val a) -> Val a GetAZs :: (Val a) -> Val a -- | Map name, top level key, and second level key FindInMap :: (Val a) -> (Val a) -> (Val a) -> Val a -- | The account-and-region-unique exported name of the value to import ImportValue :: Text -> Val a -- | We need to wrap integers so we can override the Aeson type-classes. -- This is necessary because CloudFront made the silly decision to -- represent numbers as JSON strings. newtype Integer' Integer' :: Integer -> Integer' [unInteger'] :: Integer' -> Integer -- | We need to wrap Bools for the same reason we need to wrap Ints. data Bool' False' :: Bool' True' :: Bool' -- | We need to wrap Doubles for the same reason we need to wrap Ints. newtype Double' Double' :: Double -> Double' [unDouble'] :: Double' -> Double -- | Class used to create a Ref from another type. class ToRef a b toRef :: ToRef a b => a -> Val b instance GHC.Num.Num Stratosphere.Values.Double' instance GHC.Classes.Eq Stratosphere.Values.Double' instance GHC.Show.Show Stratosphere.Values.Double' instance GHC.Classes.Ord Stratosphere.Values.Bool' instance GHC.Classes.Eq Stratosphere.Values.Bool' instance GHC.Enum.Enum Stratosphere.Values.Bool' instance GHC.Enum.Bounded Stratosphere.Values.Bool' instance GHC.Show.Show Stratosphere.Values.Bool' instance GHC.Num.Num Stratosphere.Values.Integer' instance GHC.Classes.Eq Stratosphere.Values.Integer' instance GHC.Show.Show Stratosphere.Values.Integer' instance GHC.Show.Show a => GHC.Show.Show (Stratosphere.Values.Val a) instance Data.String.IsString a => Data.String.IsString (Stratosphere.Values.Val a) instance Data.Aeson.Types.ToJSON.ToJSON a => Data.Aeson.Types.ToJSON.ToJSON (Stratosphere.Values.Val a) instance Data.Aeson.Types.FromJSON.FromJSON a => Data.Aeson.Types.FromJSON.FromJSON (Stratosphere.Values.Val a) instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Values.Integer' instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Values.Integer' instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Values.Bool' instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Values.Bool' instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Values.Double' instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Values.Double' -- | Module for hand-written types that are used in generated modules. module Stratosphere.Types data EnabledState ENABLED :: EnabledState DISABLED :: EnabledState data AuthorizationType NONE :: AuthorizationType AWS_IAM :: AuthorizationType CUSTOM :: AuthorizationType data HttpMethod GET :: HttpMethod POST :: HttpMethod PUT :: HttpMethod HEAD :: HttpMethod DELETE :: HttpMethod OPTIONS :: HttpMethod data LoggingLevel OFF :: LoggingLevel ERROR :: LoggingLevel INFO :: LoggingLevel data ApiBackendType HTTP :: ApiBackendType AWS :: ApiBackendType MOCK :: ApiBackendType HTTP_PROXY :: ApiBackendType AWS_PROXY :: ApiBackendType data Period DAY :: Period WEEK :: Period MONTH :: Period data AttributeType S :: AttributeType N :: AttributeType B :: AttributeType data KeyType HASH :: KeyType RANGE :: KeyType data ProjectionType ProjectKeysOnly :: ProjectionType ProjectIncluded :: ProjectionType ProjectAll :: ProjectionType data StreamViewType KEYS_ONLY :: StreamViewType NEW_IMAGE :: StreamViewType OLD_IMAGE :: StreamViewType NEW_AND_OLD_IMAGES :: StreamViewType data SNSProtocol SnsHttp :: SNSProtocol SnsHttps :: SNSProtocol SnsEmail :: SNSProtocol SnsEmailJson :: SNSProtocol SnsSms :: SNSProtocol SnsSqs :: SNSProtocol SnsApplication :: SNSProtocol SnsLambda :: SNSProtocol data Runtime NodeJS :: Runtime NodeJS43 :: Runtime Java8 :: Runtime Python27 :: Runtime -- | See: -- https://docs.aws.amazon.com/apigateway/api-reference/link-relation/integration-put/#passthroughBehavior data PassthroughBehavior WHEN_NO_MATCH :: PassthroughBehavior WHEN_NO_TEMPLATES :: PassthroughBehavior NEVER :: PassthroughBehavior -- | Amazon S3 supports a set of predefined grants, known as canned ACLs. -- Each canned ACL has a predefined a set of grantees and permissions. -- The following table lists the set of canned ACLs and the associated -- predefined grants. See: -- http://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl data CannedACL AuthenticatedRead :: CannedACL AwsExecRead :: CannedACL BucketOwnerRead :: CannedACL BucketOwnerFullControl :: CannedACL LogDeliveryWrite :: CannedACL Private :: CannedACL PublicRead :: CannedACL PublicReadWrite :: CannedACL -- | See: -- http://docs.aws.amazon.com/firehose/latest/APIReference/API_S3DestinationConfiguration.html data KinesisFirehoseS3CompressionFormat KFS3Uncompressed :: KinesisFirehoseS3CompressionFormat KFS3Gzip :: KinesisFirehoseS3CompressionFormat KFS3Zip :: KinesisFirehoseS3CompressionFormat KFS3Snappy :: KinesisFirehoseS3CompressionFormat -- | See: -- http://docs.aws.amazon.com/firehose/latest/APIReference/API_ElasticsearchDestinationConfiguration.html data KinesisFirehoseElasticsearchS3BackupMode KFS3FailedDocumentsOnly :: KinesisFirehoseElasticsearchS3BackupMode KFS3AllDocuments :: KinesisFirehoseElasticsearchS3BackupMode -- | See: -- http://docs.aws.amazon.com/firehose/latest/APIReference/API_EncryptionConfiguration.html data KinesisFirehoseNoEncryptionConfig KinesisFirehoseNoEncryptionConfig :: KinesisFirehoseNoEncryptionConfig instance GHC.Generics.Generic Stratosphere.Types.KinesisFirehoseNoEncryptionConfig instance GHC.Classes.Eq Stratosphere.Types.KinesisFirehoseNoEncryptionConfig instance GHC.Read.Read Stratosphere.Types.KinesisFirehoseNoEncryptionConfig instance GHC.Show.Show Stratosphere.Types.KinesisFirehoseNoEncryptionConfig instance GHC.Generics.Generic Stratosphere.Types.KinesisFirehoseElasticsearchS3BackupMode instance GHC.Classes.Eq Stratosphere.Types.KinesisFirehoseElasticsearchS3BackupMode instance GHC.Read.Read Stratosphere.Types.KinesisFirehoseElasticsearchS3BackupMode instance GHC.Show.Show Stratosphere.Types.KinesisFirehoseElasticsearchS3BackupMode instance GHC.Generics.Generic Stratosphere.Types.KinesisFirehoseS3CompressionFormat instance GHC.Classes.Eq Stratosphere.Types.KinesisFirehoseS3CompressionFormat instance GHC.Read.Read Stratosphere.Types.KinesisFirehoseS3CompressionFormat instance GHC.Show.Show Stratosphere.Types.KinesisFirehoseS3CompressionFormat instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.CannedACL instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.CannedACL instance GHC.Generics.Generic Stratosphere.Types.CannedACL instance GHC.Classes.Eq Stratosphere.Types.CannedACL instance GHC.Read.Read Stratosphere.Types.CannedACL instance GHC.Show.Show Stratosphere.Types.CannedACL instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.PassthroughBehavior instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.PassthroughBehavior instance GHC.Generics.Generic Stratosphere.Types.PassthroughBehavior instance GHC.Classes.Eq Stratosphere.Types.PassthroughBehavior instance GHC.Read.Read Stratosphere.Types.PassthroughBehavior instance GHC.Show.Show Stratosphere.Types.PassthroughBehavior instance GHC.Generics.Generic Stratosphere.Types.Runtime instance GHC.Classes.Eq Stratosphere.Types.Runtime instance GHC.Read.Read Stratosphere.Types.Runtime instance GHC.Show.Show Stratosphere.Types.Runtime instance GHC.Generics.Generic Stratosphere.Types.SNSProtocol instance GHC.Classes.Eq Stratosphere.Types.SNSProtocol instance GHC.Read.Read Stratosphere.Types.SNSProtocol instance GHC.Show.Show Stratosphere.Types.SNSProtocol instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.StreamViewType instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.StreamViewType instance GHC.Generics.Generic Stratosphere.Types.StreamViewType instance GHC.Classes.Eq Stratosphere.Types.StreamViewType instance GHC.Read.Read Stratosphere.Types.StreamViewType instance GHC.Show.Show Stratosphere.Types.StreamViewType instance GHC.Generics.Generic Stratosphere.Types.ProjectionType instance GHC.Classes.Eq Stratosphere.Types.ProjectionType instance GHC.Read.Read Stratosphere.Types.ProjectionType instance GHC.Show.Show Stratosphere.Types.ProjectionType instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.KeyType instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.KeyType instance GHC.Generics.Generic Stratosphere.Types.KeyType instance GHC.Classes.Eq Stratosphere.Types.KeyType instance GHC.Read.Read Stratosphere.Types.KeyType instance GHC.Show.Show Stratosphere.Types.KeyType instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.AttributeType instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.AttributeType instance GHC.Generics.Generic Stratosphere.Types.AttributeType instance GHC.Classes.Eq Stratosphere.Types.AttributeType instance GHC.Read.Read Stratosphere.Types.AttributeType instance GHC.Show.Show Stratosphere.Types.AttributeType instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.Period instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.Period instance GHC.Generics.Generic Stratosphere.Types.Period instance GHC.Classes.Eq Stratosphere.Types.Period instance GHC.Read.Read Stratosphere.Types.Period instance GHC.Show.Show Stratosphere.Types.Period instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.ApiBackendType instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.ApiBackendType instance GHC.Generics.Generic Stratosphere.Types.ApiBackendType instance GHC.Classes.Eq Stratosphere.Types.ApiBackendType instance GHC.Read.Read Stratosphere.Types.ApiBackendType instance GHC.Show.Show Stratosphere.Types.ApiBackendType instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.LoggingLevel instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.LoggingLevel instance GHC.Generics.Generic Stratosphere.Types.LoggingLevel instance GHC.Classes.Eq Stratosphere.Types.LoggingLevel instance GHC.Read.Read Stratosphere.Types.LoggingLevel instance GHC.Show.Show Stratosphere.Types.LoggingLevel instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.HttpMethod instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.HttpMethod instance GHC.Generics.Generic Stratosphere.Types.HttpMethod instance GHC.Classes.Eq Stratosphere.Types.HttpMethod instance GHC.Read.Read Stratosphere.Types.HttpMethod instance GHC.Show.Show Stratosphere.Types.HttpMethod instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.AuthorizationType instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.AuthorizationType instance GHC.Generics.Generic Stratosphere.Types.AuthorizationType instance GHC.Classes.Eq Stratosphere.Types.AuthorizationType instance GHC.Read.Read Stratosphere.Types.AuthorizationType instance GHC.Show.Show Stratosphere.Types.AuthorizationType instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.EnabledState instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.EnabledState instance GHC.Generics.Generic Stratosphere.Types.EnabledState instance GHC.Classes.Eq Stratosphere.Types.EnabledState instance GHC.Read.Read Stratosphere.Types.EnabledState instance GHC.Show.Show Stratosphere.Types.EnabledState instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.ProjectionType instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.ProjectionType instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.SNSProtocol instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.SNSProtocol instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.Runtime instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.Runtime instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.KinesisFirehoseS3CompressionFormat instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.KinesisFirehoseS3CompressionFormat instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.KinesisFirehoseElasticsearchS3BackupMode instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.KinesisFirehoseElasticsearchS3BackupMode instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Types.KinesisFirehoseNoEncryptionConfig instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Types.KinesisFirehoseNoEncryptionConfig -- | Attaches an Amazon EBS volume to a running instance and exposes it to -- the instance with the specified device name. module Stratosphere.Resources.VolumeAttachment -- | Full data type definition for VolumeAttachment. See -- volumeAttachment for a more convenient constructor. data VolumeAttachment VolumeAttachment :: Val Text -> Val Text -> Val Text -> VolumeAttachment [_volumeAttachmentDevice] :: VolumeAttachment -> Val Text [_volumeAttachmentInstanceId] :: VolumeAttachment -> Val Text [_volumeAttachmentVolumeId] :: VolumeAttachment -> Val Text -- | Constructor for VolumeAttachment containing required fields as -- arguments. volumeAttachment :: Val Text -> Val Text -> Val Text -> VolumeAttachment -- | How the device is exposed to the instance (e.g., devsdh, or -- xvdh). vaDevice :: Lens' VolumeAttachment (Val Text) -- | The ID of the instance to which the volume attaches. This value can be -- a reference to an AWS::EC2::Instance resource, or it can be the -- physical ID of an existing EC2 instance. vaInstanceId :: Lens' VolumeAttachment (Val Text) -- | The ID of the Amazon EBS volume. The volume and instance must be -- within the same Availability Zone. This value can be a reference to an -- AWS::EC2::Volume resource, or it can be the volume ID of an existing -- Amazon EBS volume. vaVolumeId :: Lens' VolumeAttachment (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.VolumeAttachment.VolumeAttachment instance GHC.Show.Show Stratosphere.Resources.VolumeAttachment.VolumeAttachment instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.VolumeAttachment.VolumeAttachment instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.VolumeAttachment.VolumeAttachment -- | Attaches a gateway to a VPC. module Stratosphere.Resources.VPCGatewayAttachment -- | Full data type definition for VPCGatewayAttachment. See -- vpcGatewayAttachment for a more convenient constructor. data VPCGatewayAttachment VPCGatewayAttachment :: Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> VPCGatewayAttachment [_vPCGatewayAttachmentInternetGatewayId] :: VPCGatewayAttachment -> Maybe (Val Text) [_vPCGatewayAttachmentVpcId] :: VPCGatewayAttachment -> Val Text [_vPCGatewayAttachmentVpnGatewayId] :: VPCGatewayAttachment -> Maybe (Val Text) -- | Constructor for VPCGatewayAttachment containing required fields -- as arguments. vpcGatewayAttachment :: Val Text -> VPCGatewayAttachment -- | The ID of the Internet gateway. vpcgaInternetGatewayId :: Lens' VPCGatewayAttachment (Maybe (Val Text)) -- | The ID of the VPC to associate with this gateway. vpcgaVpcId :: Lens' VPCGatewayAttachment (Val Text) -- | The ID of the virtual private network (VPN) gateway to attach to the -- VPC. vpcgaVpnGatewayId :: Lens' VPCGatewayAttachment (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.VPCGatewayAttachment.VPCGatewayAttachment instance GHC.Show.Show Stratosphere.Resources.VPCGatewayAttachment.VPCGatewayAttachment instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.VPCGatewayAttachment.VPCGatewayAttachment instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.VPCGatewayAttachment.VPCGatewayAttachment -- | The AWS::EC2::VPCEndpoint resource creates a VPC endpoint that you can -- use to establish a private connection between your VPC and another AWS -- service without requiring access over the Internet, a VPN connection, -- or AWS Direct Connect. module Stratosphere.Resources.VPCEndpoint -- | Full data type definition for VPCEndpoint. See vpcEndpoint for -- a more convenient constructor. data VPCEndpoint VPCEndpoint :: Maybe Object -> Maybe [Val Text] -> Val Text -> Val Text -> VPCEndpoint [_vPCEndpointPolicyDocument] :: VPCEndpoint -> Maybe Object [_vPCEndpointRouteTableIds] :: VPCEndpoint -> Maybe [Val Text] [_vPCEndpointServiceName] :: VPCEndpoint -> Val Text [_vPCEndpointVpcId] :: VPCEndpoint -> Val Text -- | Constructor for VPCEndpoint containing required fields as -- arguments. vpcEndpoint :: Val Text -> Val Text -> VPCEndpoint -- | A policy to attach to the endpoint that controls access to the -- service. The policy must be valid JSON. The default policy allows full -- access to the AWS service. For more information, see Controlling -- Access to Services in the Amazon VPC User Guide. vpcePolicyDocument :: Lens' VPCEndpoint (Maybe Object) -- | One or more route table IDs that are used by the VPC to reach the -- endpoint. vpceRouteTableIds :: Lens' VPCEndpoint (Maybe [Val Text]) -- | The AWS service to which you want to establish a connection. Specify -- the service name in the form of com.amazonaws.region.service. vpceServiceName :: Lens' VPCEndpoint (Val Text) -- | The ID of the VPC in which the endpoint is used. vpceVpcId :: Lens' VPCEndpoint (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.VPCEndpoint.VPCEndpoint instance GHC.Show.Show Stratosphere.Resources.VPCEndpoint.VPCEndpoint instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.VPCEndpoint.VPCEndpoint instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.VPCEndpoint.VPCEndpoint -- | The AWS::IAM::UserToGroupAddition type adds AWS Identity and Access -- Management (IAM) users to a group. This type supports updates. For -- more information about updating stacks, see AWS CloudFormation Stacks -- Updates. module Stratosphere.Resources.UserToGroupAddition -- | Full data type definition for UserToGroupAddition. See -- userToGroupAddition for a more convenient constructor. data UserToGroupAddition UserToGroupAddition :: Val Text -> [Val Text] -> UserToGroupAddition [_userToGroupAdditionGroupName] :: UserToGroupAddition -> Val Text [_userToGroupAdditionUsers] :: UserToGroupAddition -> [Val Text] -- | Constructor for UserToGroupAddition containing required fields -- as arguments. userToGroupAddition :: Val Text -> [Val Text] -> UserToGroupAddition -- | The name of group to add users to. utgaGroupName :: Lens' UserToGroupAddition (Val Text) utgaUsers :: Lens' UserToGroupAddition [Val Text] instance GHC.Generics.Generic Stratosphere.Resources.UserToGroupAddition.UserToGroupAddition instance GHC.Show.Show Stratosphere.Resources.UserToGroupAddition.UserToGroupAddition instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.UserToGroupAddition.UserToGroupAddition instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.UserToGroupAddition.UserToGroupAddition -- | Associates a subnet with a route table. module Stratosphere.Resources.SubnetRouteTableAssociation -- | Full data type definition for SubnetRouteTableAssociation. See -- subnetRouteTableAssociation for a more convenient constructor. data SubnetRouteTableAssociation SubnetRouteTableAssociation :: Val Text -> Val Text -> SubnetRouteTableAssociation [_subnetRouteTableAssociationRouteTableId] :: SubnetRouteTableAssociation -> Val Text [_subnetRouteTableAssociationSubnetId] :: SubnetRouteTableAssociation -> Val Text -- | Constructor for SubnetRouteTableAssociation containing required -- fields as arguments. subnetRouteTableAssociation :: Val Text -> Val Text -> SubnetRouteTableAssociation -- | The ID of the route table. This is commonly written as a reference to -- a route table declared elsewhere in the template. For example: srtaRouteTableId :: Lens' SubnetRouteTableAssociation (Val Text) -- | The ID of the subnet. This is commonly written as a reference to a -- subnet declared elsewhere in the template. For example: srtaSubnetId :: Lens' SubnetRouteTableAssociation (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.SubnetRouteTableAssociation.SubnetRouteTableAssociation instance GHC.Show.Show Stratosphere.Resources.SubnetRouteTableAssociation.SubnetRouteTableAssociation instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SubnetRouteTableAssociation.SubnetRouteTableAssociation instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SubnetRouteTableAssociation.SubnetRouteTableAssociation -- | The AWS::EC2::SecurityGroupIngress resource adds an ingress rule to an -- Amazon EC2 or Amazon VPC security group. module Stratosphere.Resources.SecurityGroupIngress -- | Full data type definition for SecurityGroupIngress. See -- securityGroupIngress for a more convenient constructor. data SecurityGroupIngress SecurityGroupIngress :: Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Integer') -> SecurityGroupIngress [_securityGroupIngressCidrIp] :: SecurityGroupIngress -> Maybe (Val Text) [_securityGroupIngressFromPort] :: SecurityGroupIngress -> Maybe (Val Integer') [_securityGroupIngressGroupId] :: SecurityGroupIngress -> Maybe (Val Text) [_securityGroupIngressGroupName] :: SecurityGroupIngress -> Maybe (Val Text) [_securityGroupIngressIpProtocol] :: SecurityGroupIngress -> Val Text [_securityGroupIngressSourceSecurityGroupId] :: SecurityGroupIngress -> Maybe (Val Text) [_securityGroupIngressSourceSecurityGroupName] :: SecurityGroupIngress -> Maybe (Val Text) [_securityGroupIngressSourceSecurityGroupOwnerId] :: SecurityGroupIngress -> Maybe (Val Text) [_securityGroupIngressToPort] :: SecurityGroupIngress -> Maybe (Val Integer') -- | Constructor for SecurityGroupIngress containing required fields -- as arguments. securityGroupIngress :: Val Text -> SecurityGroupIngress -- | Specifies a CIDR range. For an overview of CIDR ranges, go to the -- Wikipedia Tutorial. Type: String sgiCidrIp :: Lens' SecurityGroupIngress (Maybe (Val Text)) -- | Start of port range for the TCP and UDP protocols, or an ICMP type -- number. If you specify icmp for the IpProtocol property, you can -- specify -1 as a wildcard (i.e., any ICMP type number). Type: Integer sgiFromPort :: Lens' SecurityGroupIngress (Maybe (Val Integer')) -- | ID of the Amazon EC2 or VPC security group to modify. The group must -- belong to your account. Type: String sgiGroupId :: Lens' SecurityGroupIngress (Maybe (Val Text)) -- | Name of the Amazon EC2 security group (non-VPC security group) to -- modify. This value can be a reference to an AWS::EC2::SecurityGroup -- resource or the name of an existing Amazon EC2 security group. Type: -- String sgiGroupName :: Lens' SecurityGroupIngress (Maybe (Val Text)) -- | IP protocol name or number. For valid values, see the IpProtocol -- parameter in AuthorizeSecurityGroupIngress Type: String sgiIpProtocol :: Lens' SecurityGroupIngress (Val Text) -- | Specifies the ID of the source security group or uses the Ref -- intrinsic function to refer to the logical ID of a security group -- defined in the same template. Type: String sgiSourceSecurityGroupId :: Lens' SecurityGroupIngress (Maybe (Val Text)) -- | Specifies the name of the Amazon EC2 security group (non-VPC security -- group) to allow access or uses the Ref intrinsic function to refer to -- the logical name of a security group defined in the same template. For -- instances in a VPC, specify the SourceSecurityGroupId property. Type: -- String sgiSourceSecurityGroupName :: Lens' SecurityGroupIngress (Maybe (Val Text)) -- | Specifies the AWS Account ID of the owner of the Amazon EC2 security -- group specified in the SourceSecurityGroupName property. Type: String sgiSourceSecurityGroupOwnerId :: Lens' SecurityGroupIngress (Maybe (Val Text)) -- | End of port range for the TCP and UDP protocols, or an ICMP code. If -- you specify icmp for the IpProtocol property, you can specify -1 as a -- wildcard (i.e., any ICMP code). Type: Integer sgiToPort :: Lens' SecurityGroupIngress (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.Resources.SecurityGroupIngress.SecurityGroupIngress instance GHC.Show.Show Stratosphere.Resources.SecurityGroupIngress.SecurityGroupIngress instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SecurityGroupIngress.SecurityGroupIngress instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SecurityGroupIngress.SecurityGroupIngress -- | The AWS::EC2::SecurityGroupEgress resource adds an egress rule to an -- Amazon VPC security group. module Stratosphere.Resources.SecurityGroupEgress -- | Full data type definition for SecurityGroupEgress. See -- securityGroupEgress for a more convenient constructor. data SecurityGroupEgress SecurityGroupEgress :: Maybe (Val Text) -> Maybe (Val Text) -> Val Integer' -> Val Text -> Val Text -> Val Integer' -> SecurityGroupEgress [_securityGroupEgressCidrIp] :: SecurityGroupEgress -> Maybe (Val Text) [_securityGroupEgressDestinationSecurityGroupId] :: SecurityGroupEgress -> Maybe (Val Text) [_securityGroupEgressFromPort] :: SecurityGroupEgress -> Val Integer' [_securityGroupEgressGroupId] :: SecurityGroupEgress -> Val Text [_securityGroupEgressIpProtocol] :: SecurityGroupEgress -> Val Text [_securityGroupEgressToPort] :: SecurityGroupEgress -> Val Integer' -- | Constructor for SecurityGroupEgress containing required fields -- as arguments. securityGroupEgress :: Val Integer' -> Val Text -> Val Text -> Val Integer' -> SecurityGroupEgress -- | CIDR range. Type: String sgeCidrIp :: Lens' SecurityGroupEgress (Maybe (Val Text)) -- | Specifies the group ID of the destination Amazon VPC security group. -- Type: String sgeDestinationSecurityGroupId :: Lens' SecurityGroupEgress (Maybe (Val Text)) -- | Start of port range for the TCP and UDP protocols, or an ICMP type -- number. If you specify icmp for the IpProtocol property, you can -- specify -1 as a wildcard (i.e., any ICMP type number). Type: Integer sgeFromPort :: Lens' SecurityGroupEgress (Val Integer') -- | ID of the Amazon VPC security group to modify. This value can be a -- reference to an AWS::EC2::SecurityGroup resource that has a valid -- VpcId property or the ID of an existing Amazon VPC security group. -- Type: String sgeGroupId :: Lens' SecurityGroupEgress (Val Text) -- | IP protocol name or number. For valid values, see the IpProtocol -- parameter in AuthorizeSecurityGroupIngress Type: String sgeIpProtocol :: Lens' SecurityGroupEgress (Val Text) -- | End of port range for the TCP and UDP protocols, or an ICMP code. If -- you specify icmp for the IpProtocol property, you can specify -1 as a -- wildcard (i.e., any ICMP code). Type: Integer sgeToPort :: Lens' SecurityGroupEgress (Val Integer') instance GHC.Generics.Generic Stratosphere.Resources.SecurityGroupEgress.SecurityGroupEgress instance GHC.Show.Show Stratosphere.Resources.SecurityGroupEgress.SecurityGroupEgress instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SecurityGroupEgress.SecurityGroupEgress instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SecurityGroupEgress.SecurityGroupEgress -- | Creates a scheduled scaling action for an Auto Scaling group, changing -- the number of servers available for your application in response to -- predictable load changes. module Stratosphere.Resources.ScheduledAction -- | Full data type definition for ScheduledAction. See -- scheduledAction for a more convenient constructor. data ScheduledAction ScheduledAction :: Val Text -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Text) -> ScheduledAction [_scheduledActionAutoScalingGroupName] :: ScheduledAction -> Val Text [_scheduledActionDesiredCapacity] :: ScheduledAction -> Maybe (Val Integer') [_scheduledActionEndTime] :: ScheduledAction -> Maybe (Val Text) [_scheduledActionMaxSize] :: ScheduledAction -> Maybe (Val Integer') [_scheduledActionMinSize] :: ScheduledAction -> Maybe (Val Integer') [_scheduledActionRecurrence] :: ScheduledAction -> Maybe (Val Text) [_scheduledActionStartTime] :: ScheduledAction -> Maybe (Val Text) -- | Constructor for ScheduledAction containing required fields as -- arguments. scheduledAction :: Val Text -> ScheduledAction -- | The name or ARN of the Auto Scaling group. saAutoScalingGroupName :: Lens' ScheduledAction (Val Text) -- | The number of Amazon EC2 instances that should be running in the Auto -- Scaling group. saDesiredCapacity :: Lens' ScheduledAction (Maybe (Val Integer')) -- | The time in UTC for this schedule to end. For example, -- 2010-06-01T00:00:00Z. saEndTime :: Lens' ScheduledAction (Maybe (Val Text)) -- | The maximum number of Amazon EC2 instances in the Auto Scaling group. saMaxSize :: Lens' ScheduledAction (Maybe (Val Integer')) -- | The minimum number of Amazon EC2 instances in the Auto Scaling group. saMinSize :: Lens' ScheduledAction (Maybe (Val Integer')) -- | The time in UTC when recurring future actions will start. You specify -- the start time by following the Unix cron syntax format. For more -- information about cron syntax, go to -- http://en.wikipedia.org/wiki/Cron. Specifying the StartTime and -- EndTime properties with Recurrence property forms the start and stop -- boundaries of the recurring action. saRecurrence :: Lens' ScheduledAction (Maybe (Val Text)) -- | The time in UTC for this schedule to start. For example, -- 2010-06-01T00:00:00Z. saStartTime :: Lens' ScheduledAction (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.ScheduledAction.ScheduledAction instance GHC.Show.Show Stratosphere.Resources.ScheduledAction.ScheduledAction instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ScheduledAction.ScheduledAction instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ScheduledAction.ScheduledAction -- | The AWS::SQS::QueuePolicy type applies a policy to SQS queues. -- AWS::SQS::QueuePolicy Snippet: Declaring an Amazon SQS Policy module Stratosphere.Resources.SQSQueuePolicy -- | Full data type definition for SQSQueuePolicy. See -- sqsQueuePolicy for a more convenient constructor. data SQSQueuePolicy SQSQueuePolicy :: Object -> [Val Text] -> SQSQueuePolicy [_sQSQueuePolicyPolicyDocument] :: SQSQueuePolicy -> Object [_sQSQueuePolicyQueues] :: SQSQueuePolicy -> [Val Text] -- | Constructor for SQSQueuePolicy containing required fields as -- arguments. sqsQueuePolicy :: Object -> [Val Text] -> SQSQueuePolicy -- | A policy document containing permissions to add to the specified SQS -- queues. sqsqpPolicyDocument :: Lens' SQSQueuePolicy Object -- | The URLs of the queues to which you want to add the policy. You can -- use the Ref function to specify an AWS::SQS::Queue resource. sqsqpQueues :: Lens' SQSQueuePolicy [Val Text] instance GHC.Generics.Generic Stratosphere.Resources.SQSQueuePolicy.SQSQueuePolicy instance GHC.Show.Show Stratosphere.Resources.SQSQueuePolicy.SQSQueuePolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SQSQueuePolicy.SQSQueuePolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SQSQueuePolicy.SQSQueuePolicy -- | The AWS::SNS::TopicPolicy resource associates Amazon SNS topics with a -- policy. module Stratosphere.Resources.SNSTopicPolicy -- | Full data type definition for SNSTopicPolicy. See -- snsTopicPolicy for a more convenient constructor. data SNSTopicPolicy SNSTopicPolicy :: Object -> [String] -> SNSTopicPolicy [_sNSTopicPolicyPolicyDocument] :: SNSTopicPolicy -> Object [_sNSTopicPolicyTopics] :: SNSTopicPolicy -> [String] -- | Constructor for SNSTopicPolicy containing required fields as -- arguments. snsTopicPolicy :: Object -> [String] -> SNSTopicPolicy -- | A policy document that contains permissions to add to the specified -- SNS topics. snstpPolicyDocument :: Lens' SNSTopicPolicy Object -- | The Amazon Resource Names (ARN) of the topics to which you want to add -- the policy. You can use the Ref function to specify an AWS::SNS::Topic -- resource. snstpTopics :: Lens' SNSTopicPolicy [String] instance GHC.Generics.Generic Stratosphere.Resources.SNSTopicPolicy.SNSTopicPolicy instance GHC.Show.Show Stratosphere.Resources.SNSTopicPolicy.SNSTopicPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SNSTopicPolicy.SNSTopicPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SNSTopicPolicy.SNSTopicPolicy -- | The AWS::SNS::Subscription resource subscribes an endpoint to an -- Amazon Simple Notification Service (Amazon SNS) topic. The owner of -- the endpoint must confirm the subscription before Amazon SNS creates -- the subscription. module Stratosphere.Resources.SNSSubscription -- | Full data type definition for SNSSubscription. See -- snsSubscription for a more convenient constructor. data SNSSubscription SNSSubscription :: Maybe (Val Text) -> Maybe SNSProtocol -> Maybe (Val Text) -> SNSSubscription [_sNSSubscriptionEndpoint] :: SNSSubscription -> Maybe (Val Text) [_sNSSubscriptionProtocol] :: SNSSubscription -> Maybe SNSProtocol [_sNSSubscriptionTopicArn] :: SNSSubscription -> Maybe (Val Text) -- | Constructor for SNSSubscription containing required fields as -- arguments. snsSubscription :: SNSSubscription -- | The endpoint that receives notifications from the Amazon SNS topic. -- The endpoint value depends on the protocol that you specify. For more -- information, see the Subscribe Endpoint parameter in the Amazon Simple -- Notification Service API Reference. snssEndpoint :: Lens' SNSSubscription (Maybe (Val Text)) -- | The subscription's protocol. For more information, see the Subscribe -- Protocol parameter in the Amazon Simple Notification Service API -- Reference. snssProtocol :: Lens' SNSSubscription (Maybe SNSProtocol) -- | The Amazon Resource Name (ARN) of the topic to subscribe to. snssTopicArn :: Lens' SNSSubscription (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.SNSSubscription.SNSSubscription instance GHC.Show.Show Stratosphere.Resources.SNSSubscription.SNSSubscription instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SNSSubscription.SNSSubscription instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SNSSubscription.SNSSubscription -- | The AWS::S3::BucketPolicy type applies an Amazon S3 bucket policy to -- an Amazon S3 bucket. AWS::S3::BucketPolicy Snippet: Declaring an -- Amazon S3 Bucket Policy module Stratosphere.Resources.S3BucketPolicy -- | Full data type definition for S3BucketPolicy. See -- s3BucketPolicy for a more convenient constructor. data S3BucketPolicy S3BucketPolicy :: Val Text -> Object -> S3BucketPolicy [_s3BucketPolicyBucket] :: S3BucketPolicy -> Val Text [_s3BucketPolicyPolicyDocument] :: S3BucketPolicy -> Object -- | Constructor for S3BucketPolicy containing required fields as -- arguments. s3BucketPolicy :: Val Text -> Object -> S3BucketPolicy -- | The Amazon S3 bucket that the policy applies to. sbpBucket :: Lens' S3BucketPolicy (Val Text) -- | A policy document containing permissions to add to the specified -- bucket. For more information, see Access Policy Language Overview in -- the Amazon Simple Storage Service Developer Guide. sbpPolicyDocument :: Lens' S3BucketPolicy Object instance GHC.Generics.Generic Stratosphere.Resources.S3BucketPolicy.S3BucketPolicy instance GHC.Show.Show Stratosphere.Resources.S3BucketPolicy.S3BucketPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.S3BucketPolicy.S3BucketPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.S3BucketPolicy.S3BucketPolicy -- | Creates a new route in a route table within a VPC. The route's target -- can be either a gateway attached to the VPC or a NAT instance in the -- VPC. module Stratosphere.Resources.Route -- | Full data type definition for Route. See route for a more -- convenient constructor. data Route Route :: Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Route [_routeDestinationCidrBlock] :: Route -> Val Text [_routeGatewayId] :: Route -> Maybe (Val Text) [_routeInstanceId] :: Route -> Maybe (Val Text) [_routeNatGatewayId] :: Route -> Maybe (Val Text) [_routeNetworkInterfaceId] :: Route -> Maybe (Val Text) [_routeRouteTableId] :: Route -> Val Text -- | Constructor for Route containing required fields as arguments. route :: Val Text -> Val Text -> Route -- | The CIDR address block used for the destination match. For example, -- 0.0.0.0/0. Routing decisions are based on the most specific match. rDestinationCidrBlock :: Lens' Route (Val Text) -- | The ID of an Internet gateway or virtual private gateway that is -- attached to your VPC. For example: igw-eaad4883. For route entries -- that specify a gateway, you must specify a dependency on the gateway -- attachment resource. For more information, see DependsOn Attribute. rGatewayId :: Lens' Route (Maybe (Val Text)) -- | The ID of a NAT instance in your VPC. For example, i-1a2b3c4d. rInstanceId :: Lens' Route (Maybe (Val Text)) -- | The ID of a NAT gateway. For example, nat-0a12bc456789de0fg. rNatGatewayId :: Lens' Route (Maybe (Val Text)) -- | Allows the routing of network interface IDs. rNetworkInterfaceId :: Lens' Route (Maybe (Val Text)) -- | The ID of the route table where the route will be added. rRouteTableId :: Lens' Route (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.Route.Route instance GHC.Show.Show Stratosphere.Resources.Route.Route instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Route.Route instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Route.Route -- | The AWS::IAM::Policy resource associates an IAM policy with IAM users, -- roles, or groups. For more information about IAM policies, see -- Overview of IAM Policies in the IAM User Guide guide. module Stratosphere.Resources.Policy -- | Full data type definition for Policy. See policy for a more -- convenient constructor. data Policy Policy :: Maybe [Val Text] -> Object -> Val Text -> Maybe [Val Text] -> Maybe [Val Text] -> Policy [_policyGroups] :: Policy -> Maybe [Val Text] [_policyPolicyDocument] :: Policy -> Object [_policyPolicyName] :: Policy -> Val Text [_policyRoles] :: Policy -> Maybe [Val Text] [_policyUsers] :: Policy -> Maybe [Val Text] -- | Constructor for Policy containing required fields as arguments. policy :: Object -> Val Text -> Policy -- | The names of groups to which you want to add the policy. pGroups :: Lens' Policy (Maybe [Val Text]) -- | A policy document that contains permissions to add to the specified -- users or groups. pPolicyDocument :: Lens' Policy Object -- | The name of the policy. If you specify multiple policies for an -- entity, specify unique names. For example, if you specify a list of -- policies for an IAM role, each policy must have a unique name. pPolicyName :: Lens' Policy (Val Text) -- | The names of AWS::IAM::Roles to attach to this policy. Note If a -- policy has a Ref to a role and if a resource (such as -- AWS::ECS::Service) also has a Ref to the same role, add a DependsOn -- attribute to the resource so that the resource depends on the policy. -- This dependency ensures that the role's policy is available throughout -- the resource's lifecycle. For example, when you delete a stack with an -- AWS::ECS::Service resource, the DependsOn attribute ensures that the -- AWS::ECS::Service resource can complete its deletion before its role's -- policy is deleted. pRoles :: Lens' Policy (Maybe [Val Text]) -- | The names of users for whom you want to add the policy. pUsers :: Lens' Policy (Maybe [Val Text]) instance GHC.Generics.Generic Stratosphere.Resources.Policy.Policy instance GHC.Show.Show Stratosphere.Resources.Policy.Policy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Policy.Policy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Policy.Policy -- | The AWS::EC2::NatGateway resource creates a network address -- translation (NAT) gateway in the specified public subnet. Use a NAT -- gateway to allow instances in a private subnet to connect to the -- Internet or to other AWS services, but prevent the Internet from -- initiating a connection with those instances. For more information and -- a sample architectural diagram, see NAT Gateways in the Amazon VPC -- User Guide. module Stratosphere.Resources.NatGateway -- | Full data type definition for NatGateway. See natGateway for a -- more convenient constructor. data NatGateway NatGateway :: Val Text -> Val Text -> NatGateway [_natGatewayAllocationId] :: NatGateway -> Val Text [_natGatewaySubnetId] :: NatGateway -> Val Text -- | Constructor for NatGateway containing required fields as -- arguments. natGateway :: Val Text -> Val Text -> NatGateway -- | The allocation ID of an Elastic IP address to associate with the NAT -- gateway. If the Elastic IP address is associated with another -- resource, you must first disassociate it. ngAllocationId :: Lens' NatGateway (Val Text) -- | The public subnet in which to create the NAT gateway. ngSubnetId :: Lens' NatGateway (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.NatGateway.NatGateway instance GHC.Show.Show Stratosphere.Resources.NatGateway.NatGateway instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.NatGateway.NatGateway instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.NatGateway.NatGateway -- | AWS::IAM::ManagedPolicy creates an AWS Identity and Access Management -- (IAM) managed policy for your AWS account that you can use to apply -- permissions to IAM users, groups, and roles. For more information -- about managed policies, see Managed Policies and Inline Policies in -- the IAM User Guide guide. module Stratosphere.Resources.ManagedPolicy -- | Full data type definition for ManagedPolicy. See managedPolicy -- for a more convenient constructor. data ManagedPolicy ManagedPolicy :: Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Text) -> Object -> Maybe [Val Text] -> Maybe [Val Text] -> ManagedPolicy [_managedPolicyDescription] :: ManagedPolicy -> Maybe (Val Text) [_managedPolicyGroups] :: ManagedPolicy -> Maybe [Val Text] [_managedPolicyPath] :: ManagedPolicy -> Maybe (Val Text) [_managedPolicyPolicyDocument] :: ManagedPolicy -> Object [_managedPolicyRoles] :: ManagedPolicy -> Maybe [Val Text] [_managedPolicyUsers] :: ManagedPolicy -> Maybe [Val Text] -- | Constructor for ManagedPolicy containing required fields as -- arguments. managedPolicy :: Object -> ManagedPolicy -- | A description of the policy. For example, you can describe the -- permissions that are defined in the policy. mpDescription :: Lens' ManagedPolicy (Maybe (Val Text)) -- | The names of groups to attach to this policy. mpGroups :: Lens' ManagedPolicy (Maybe [Val Text]) -- | The path for the policy. By default, the path is /. For more -- information, see IAM Identifiers in the IAM User Guide guide. mpPath :: Lens' ManagedPolicy (Maybe (Val Text)) -- | Policies that define the permissions for this managed policy. For more -- information about policy syntax, see IAM Policy Elements Reference in -- IAM User Guide. mpPolicyDocument :: Lens' ManagedPolicy Object -- | The names of roles to attach to this policy. Note If a policy has a -- Ref to a role and if a resource (such as AWS::ECS::Service) also has a -- Ref to the same role, add a DependsOn attribute to the resource so -- that the resource depends on the policy. This dependency ensures that -- the role's policy is available throughout the resource's lifecycle. -- For example, when you delete a stack with an AWS::ECS::Service -- resource, the DependsOn attribute ensures that the AWS::ECS::Service -- resource can complete its deletion before its role's policy is -- deleted. mpRoles :: Lens' ManagedPolicy (Maybe [Val Text]) -- | The names of users to attach to this policy. mpUsers :: Lens' ManagedPolicy (Maybe [Val Text]) instance GHC.Generics.Generic Stratosphere.Resources.ManagedPolicy.ManagedPolicy instance GHC.Show.Show Stratosphere.Resources.ManagedPolicy.ManagedPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ManagedPolicy.ManagedPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ManagedPolicy.ManagedPolicy -- | The AWS::Logs::LogStream resource creates an Amazon CloudWatch Logs -- log stream in a log group. A log stream represents the sequence of -- events coming from an application instance or resource that you are -- monitoring. For more information, see Monitoring Log Files in the -- Amazon CloudWatch Developer Guide. module Stratosphere.Resources.LogStream -- | Full data type definition for LogStream. See logStream for a -- more convenient constructor. data LogStream LogStream :: Val Text -> Maybe (Val Text) -> LogStream [_logStreamLogGroupName] :: LogStream -> Val Text [_logStreamLogStreamName] :: LogStream -> Maybe (Val Text) -- | Constructor for LogStream containing required fields as -- arguments. logStream :: Val Text -> LogStream -- | The name of the log group where the log stream is created. lsLogGroupName :: Lens' LogStream (Val Text) -- | The name of the log stream to create. The name must be unique within -- the log group. lsLogStreamName :: Lens' LogStream (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.LogStream.LogStream instance GHC.Show.Show Stratosphere.Resources.LogStream.LogStream instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LogStream.LogStream instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LogStream.LogStream -- | The AWS::Logs::LogGroup resource creates an Amazon CloudWatch Logs log -- group that defines common properties for log streams, such as their -- retention and access control rules. Each log stream must belong to one -- log group. module Stratosphere.Resources.LogGroup -- | Full data type definition for LogGroup. See logGroup for a more -- convenient constructor. data LogGroup LogGroup :: Maybe (Val Text) -> Maybe (Val Integer') -> LogGroup [_logGroupLogGroupName] :: LogGroup -> Maybe (Val Text) [_logGroupRetentionInDays] :: LogGroup -> Maybe (Val Integer') -- | Constructor for LogGroup containing required fields as -- arguments. logGroup :: LogGroup -- | A name for the log group. If you don't specify a name, AWS -- CloudFormation generates a unique physical ID and uses that ID for the -- table name. For more information, see Name Type. Important If you -- specify a name, you cannot do updates that require this resource to be -- replaced. You can still do updates that require no or some -- interruption. If you must replace the resource, specify a new name. lgLogGroupName :: Lens' LogGroup (Maybe (Val Text)) -- | The number of days log events are kept in CloudWatch Logs. When a log -- event expires, CloudWatch Logs automatically deletes it. For valid -- values, see PutRetentionPolicy in the Amazon CloudWatch Logs API -- Reference. lgRetentionInDays :: Lens' LogGroup (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.Resources.LogGroup.LogGroup instance GHC.Show.Show Stratosphere.Resources.LogGroup.LogGroup instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LogGroup.LogGroup instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LogGroup.LogGroup -- | Use AWS::AutoScaling::LifecycleHook to control the state of an -- instance in an Auto Scaling group after it is launched or terminated. -- When you use a lifecycle hook, the Auto Scaling group either pauses -- the instance after it is launched (before it is put into service) or -- pauses the instance as it is terminated (before it is fully -- terminated). For more information, see Examples of How to Use -- Lifecycle Hooks in the Auto Scaling User Guide. module Stratosphere.Resources.LifecycleHook -- | Full data type definition for LifecycleHook. See lifecycleHook -- for a more convenient constructor. data LifecycleHook LifecycleHook :: Val Text -> Maybe (Val Text) -> Maybe (Val Integer') -> Val Text -> Maybe (Val Text) -> Val Text -> Val Text -> LifecycleHook [_lifecycleHookAutoScalingGroupName] :: LifecycleHook -> Val Text [_lifecycleHookDefaultResult] :: LifecycleHook -> Maybe (Val Text) [_lifecycleHookHeartbeatTimeout] :: LifecycleHook -> Maybe (Val Integer') [_lifecycleHookLifecycleTransition] :: LifecycleHook -> Val Text [_lifecycleHookNotificationMetadata] :: LifecycleHook -> Maybe (Val Text) [_lifecycleHookNotificationTargetARN] :: LifecycleHook -> Val Text [_lifecycleHookRoleARN] :: LifecycleHook -> Val Text -- | Constructor for LifecycleHook containing required fields as -- arguments. lifecycleHook :: Val Text -> Val Text -> Val Text -> Val Text -> LifecycleHook -- | The name of the Auto Scaling group for the lifecycle hook. lhAutoScalingGroupName :: Lens' LifecycleHook (Val Text) -- | The action the Auto Scaling group takes when the lifecycle hook -- timeout elapses or if an unexpected failure occurs. lhDefaultResult :: Lens' LifecycleHook (Maybe (Val Text)) -- | The amount of time that can elapse before the lifecycle hook times -- out. When the lifecycle hook times out, Auto Scaling performs the -- action that you specified in the DefaultResult property. lhHeartbeatTimeout :: Lens' LifecycleHook (Maybe (Val Integer')) -- | The state of the Amazon EC2 instance to which you want to attach the -- lifecycle hook. lhLifecycleTransition :: Lens' LifecycleHook (Val Text) -- | Additional information that you want to include when Auto Scaling -- sends a message to the notification target. lhNotificationMetadata :: Lens' LifecycleHook (Maybe (Val Text)) -- | The Amazon resource name (ARN) of the notification target that Auto -- Scaling uses to notify you when an instance is in the transition state -- for the lifecycle hook. You can specify an Amazon SQS queue or an -- Amazon SNS topic. The notification message includes the following -- information: lifecycle action token, user account ID, Auto Scaling -- group name, lifecycle hook name, instance ID, lifecycle transition, -- and notification metadata. lhNotificationTargetARN :: Lens' LifecycleHook (Val Text) -- | The ARN of the IAM role that allows the Auto Scaling group to publish -- to the specified notification target. The role requires permissions to -- Amazon SNS and Amazon SQS. lhRoleARN :: Lens' LifecycleHook (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.LifecycleHook.LifecycleHook instance GHC.Show.Show Stratosphere.Resources.LifecycleHook.LifecycleHook instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LifecycleHook.LifecycleHook instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LifecycleHook.LifecycleHook -- | The AWS::Lambda::Version resource publishes a specified version of an -- AWS Lambda (Lambda) function. When publishing a new version of your -- function, Lambda copies the latest version of your function. For more -- information, see Introduction to AWS Lambda Versioning in the AWS -- Lambda Developer Guide. module Stratosphere.Resources.LambdaVersion -- | Full data type definition for LambdaVersion. See lambdaVersion -- for a more convenient constructor. data LambdaVersion LambdaVersion :: Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> LambdaVersion [_lambdaVersionCodeSha256] :: LambdaVersion -> Maybe (Val Text) [_lambdaVersionDescription] :: LambdaVersion -> Maybe (Val Text) [_lambdaVersionFunctionName] :: LambdaVersion -> Val Text -- | Constructor for LambdaVersion containing required fields as -- arguments. lambdaVersion :: Val Text -> LambdaVersion -- | The SHA-256 hash of the deployment package that you want to publish. -- This value must match the SHA-256 hash of the $LATEST version of the -- function. Specify this property to validate that you are publishing -- the correct package. lvCodeSha256 :: Lens' LambdaVersion (Maybe (Val Text)) -- | A description of the version you are publishing. If you don't specify -- a value, Lambda copies the description from the $LATEST version of the -- function. lvDescription :: Lens' LambdaVersion (Maybe (Val Text)) -- | The Lambda function for which you want to publish a version. You can -- specify the function's name or its Amazon Resource Name (ARN). lvFunctionName :: Lens' LambdaVersion (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.LambdaVersion.LambdaVersion instance GHC.Show.Show Stratosphere.Resources.LambdaVersion.LambdaVersion instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LambdaVersion.LambdaVersion instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LambdaVersion.LambdaVersion -- | The AWS::Lambda::Permission resource associates a policy statement -- with a specific AWS Lambda (Lambda) function's access policy. The -- function policy grants a specific AWS service or application -- permission to invoke the function. For more information, see -- AddPermission in the AWS Lambda Developer Guide. module Stratosphere.Resources.LambdaPermission -- | Full data type definition for LambdaPermission. See -- lambdaPermission for a more convenient constructor. data LambdaPermission LambdaPermission :: Val Text -> Val Text -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> LambdaPermission [_lambdaPermissionAction] :: LambdaPermission -> Val Text [_lambdaPermissionFunctionName] :: LambdaPermission -> Val Text [_lambdaPermissionPrincipal] :: LambdaPermission -> Val Text [_lambdaPermissionSourceAccount] :: LambdaPermission -> Maybe (Val Text) [_lambdaPermissionSourceArn] :: LambdaPermission -> Maybe (Val Text) -- | Constructor for LambdaPermission containing required fields as -- arguments. lambdaPermission :: Val Text -> Val Text -> Val Text -> LambdaPermission -- | The Lambda actions that you want to allow in this statement. For -- example, you can specify lambda:CreateFunction to specify a certain -- action, or use a wildcard (lambda:*) to grant permission to all Lambda -- actions. For a list of actions, see Actions and Condition Context Keys -- for AWS Lambda in the IAM User Guide. lpAction :: Lens' LambdaPermission (Val Text) -- | The name (physical ID) or Amazon Resource Name (ARN) of the Lambda -- function that you want to associate with this statement. Lambda adds -- this statement to the function's access policy. lpFunctionName :: Lens' LambdaPermission (Val Text) -- | The entity for which you are granting permission to invoke the Lambda -- function. This entity can be any valid AWS service principal, such as -- s3.amazonaws.com or sns.amazonaws.com, or, if you are granting -- cross-account permission, an AWS account ID. For example, you might -- want to allow a custom application in another AWS account to push -- events to Lambda by invoking your function. lpPrincipal :: Lens' LambdaPermission (Val Text) -- | The AWS account ID (without hyphens) of the source owner. For example, -- if you specify an S3 bucket in the SourceArn property, this value is -- the bucket owner's account ID. You can use this property to ensure -- that all source principals are owned by a specific account. Important -- This property is not supported by all event sources. For more -- information, see the SourceAccount parameter for the AddPermission -- action in the AWS Lambda Developer Guide. lpSourceAccount :: Lens' LambdaPermission (Maybe (Val Text)) -- | The ARN of a resource that is invoking your function. When granting -- Amazon Simple Storage Service (Amazon S3) permission to invoke your -- function, specify this property with the bucket ARN as its value. This -- ensures that events generated only from the specified bucket, not just -- any bucket from any AWS account that creates a mapping to your -- function, can invoke the function. Important This property is not -- supported by all event sources. For more information, see the -- SourceArn parameter for the AddPermission action in the AWS Lambda -- Developer Guide. lpSourceArn :: Lens' LambdaPermission (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.LambdaPermission.LambdaPermission instance GHC.Show.Show Stratosphere.Resources.LambdaPermission.LambdaPermission instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LambdaPermission.LambdaPermission instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LambdaPermission.LambdaPermission -- | The AWS::Lambda::Alias resource creates an alias that points to the -- version of an AWS Lambda (Lambda) function that you specify. Use -- aliases when you want to control which version of your function other -- services or applications invoke. Those services or applications can -- use your function's alias so that they don't need to be updated -- whenever you release a new version of your function. For more -- information, see Introduction to AWS Lambda Aliases in the AWS Lambda -- Developer Guide. module Stratosphere.Resources.LambdaAlias -- | Full data type definition for LambdaAlias. See lambdaAlias for -- a more convenient constructor. data LambdaAlias LambdaAlias :: Maybe (Val Text) -> Val Text -> Val Text -> Val Text -> LambdaAlias [_lambdaAliasDescription] :: LambdaAlias -> Maybe (Val Text) [_lambdaAliasFunctionName] :: LambdaAlias -> Val Text [_lambdaAliasFunctionVersion] :: LambdaAlias -> Val Text [_lambdaAliasName] :: LambdaAlias -> Val Text -- | Constructor for LambdaAlias containing required fields as -- arguments. lambdaAlias :: Val Text -> Val Text -> Val Text -> LambdaAlias -- | Information about the alias, such as its purpose or the Lambda -- function that is associated with it. laDescription :: Lens' LambdaAlias (Maybe (Val Text)) -- | The Lambda function that you want to associate with this alias. You -- can specify the function's name or its Amazon Resource Name (ARN). laFunctionName :: Lens' LambdaAlias (Val Text) -- | The version of the Lambda function that you want to associate with -- this alias. laFunctionVersion :: Lens' LambdaAlias (Val Text) -- | A name for the alias. laName :: Lens' LambdaAlias (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.LambdaAlias.LambdaAlias instance GHC.Show.Show Stratosphere.Resources.LambdaAlias.LambdaAlias instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LambdaAlias.LambdaAlias instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LambdaAlias.LambdaAlias -- | Creates an AWS Identity and Access Management (IAM) Instance Profile -- that can be used with IAM Roles for EC2 Instances. For more -- information about IAM roles, see Working with Roles in the AWS -- Identity and Access Management User Guide. module Stratosphere.Resources.InstanceProfile -- | Full data type definition for InstanceProfile. See -- instanceProfile for a more convenient constructor. data InstanceProfile InstanceProfile :: Val Text -> [Val Text] -> InstanceProfile [_instanceProfilePath] :: InstanceProfile -> Val Text [_instanceProfileRoles] :: InstanceProfile -> [Val Text] -- | Constructor for InstanceProfile containing required fields as -- arguments. instanceProfile :: Val Text -> [Val Text] -> InstanceProfile -- | The path associated with this IAM instance profile. For information -- about IAM paths, see Friendly Names and Paths in the AWS Identity and -- Access Management User Guide. ipPath :: Lens' InstanceProfile (Val Text) -- | The roles associated with this IAM instance profile. ipRoles :: Lens' InstanceProfile [Val Text] instance GHC.Generics.Generic Stratosphere.Resources.InstanceProfile.InstanceProfile instance GHC.Show.Show Stratosphere.Resources.InstanceProfile.InstanceProfile instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.InstanceProfile.InstanceProfile instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.InstanceProfile.InstanceProfile -- | The AWS::Events::Rule resource creates a rule that matches incoming -- Amazon CloudWatch Events (CloudWatch Events) events and routes them to -- one or more targets for processing. For more information, see Using -- CloudWatch Events in the Amazon CloudWatch User Guide. module Stratosphere.Resources.EventsRule -- | Full data type definition for EventsRule. See eventsRule for a -- more convenient constructor. data EventsRule EventsRule :: Maybe (Val Text) -> Maybe Object -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe EnabledState -> Maybe [Object] -> EventsRule [_eventsRuleDescription] :: EventsRule -> Maybe (Val Text) [_eventsRuleEventPattern] :: EventsRule -> Maybe Object [_eventsRuleName] :: EventsRule -> Maybe (Val Text) [_eventsRuleRoleArn] :: EventsRule -> Maybe (Val Text) [_eventsRuleScheduleExpression] :: EventsRule -> Maybe (Val Text) [_eventsRuleState] :: EventsRule -> Maybe EnabledState [_eventsRuleTargets] :: EventsRule -> Maybe [Object] -- | Constructor for EventsRule containing required fields as -- arguments. eventsRule :: EventsRule -- | A description of the rule's purpose. erDescription :: Lens' EventsRule (Maybe (Val Text)) -- | Describes which events CloudWatch Events routes to the specified -- target. These routed events are matched events. For more information, -- see Events and Event Patterns in the Amazon CloudWatch User Guide. erEventPattern :: Lens' EventsRule (Maybe Object) -- | A name for the rule. If you don't specify a name, AWS CloudFormation -- generates a unique physical ID and uses that ID for the rule name. For -- more information, see Name Type. Important If you specify a name, you -- cannot do updates that require this resource to be replaced. You can -- still do updates that require no or some interruption. If you must -- replace the resource, specify a new name. erName :: Lens' EventsRule (Maybe (Val Text)) -- | The Amazon Resource Name (ARN) of the AWS Identity and Access -- Management (IAM) role that grants CloudWatch Events permission to make -- calls to target services, such as AWS Lambda (Lambda) or Amazon -- Kinesis streams. erRoleArn :: Lens' EventsRule (Maybe (Val Text)) -- | The schedule or rate (frequency) that determines when CloudWatch -- Events runs the rule. For more information, see Schedule Expression -- Syntax for Rules in the Amazon CloudWatch User Guide. erScheduleExpression :: Lens' EventsRule (Maybe (Val Text)) -- | Indicates whether the rule is enabled. For valid values, see the State -- parameter for the PutRule action in the Amazon CloudWatch Events API -- Reference. erState :: Lens' EventsRule (Maybe EnabledState) -- | The resources, such as Lambda functions or Amazon Kinesis streams, -- that CloudWatch Events routes events to and invokes when the rule is -- triggered. For information about valid targets, see the PutTargets -- action in the Amazon CloudWatch Events API Reference. erTargets :: Lens' EventsRule (Maybe [Object]) instance GHC.Generics.Generic Stratosphere.Resources.EventsRule.EventsRule instance GHC.Show.Show Stratosphere.Resources.EventsRule.EventsRule instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.EventsRule.EventsRule instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.EventsRule.EventsRule -- | The AWS::EC2::EIPAssociation resource type associates an Elastic IP -- address with an Amazon EC2 instance. The Elastic IP address can be an -- existing Elastic IP address or an Elastic IP address allocated through -- an AWS::EC2::EIP resource. This type supports updates. For more -- information about updating stacks, see AWS CloudFormation Stacks -- Updates. module Stratosphere.Resources.EIPAssociation -- | Full data type definition for EIPAssociation. See -- eipAssociation for a more convenient constructor. data EIPAssociation EIPAssociation :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> EIPAssociation [_eIPAssociationAllocationId] :: EIPAssociation -> Maybe (Val Text) [_eIPAssociationEIP] :: EIPAssociation -> Maybe (Val Text) [_eIPAssociationInstanceId] :: EIPAssociation -> Maybe (Val Text) [_eIPAssociationNetworkInterfaceId] :: EIPAssociation -> Maybe (Val Text) [_eIPAssociationPrivateIpAddress] :: EIPAssociation -> Maybe (Val Text) -- | Constructor for EIPAssociation containing required fields as -- arguments. eipAssociation :: EIPAssociation -- | Allocation ID for the VPC Elastic IP address you want to associate -- with an Amazon EC2 instance in your VPC. eipaAllocationId :: Lens' EIPAssociation (Maybe (Val Text)) -- | Elastic IP address that you want to associate with the Amazon EC2 -- instance specified by the InstanceId property. You can specify an -- existing Elastic IP address or a reference to an Elastic IP address -- allocated with a AWS::EC2::EIP resource. eipaEIP :: Lens' EIPAssociation (Maybe (Val Text)) -- | Instance ID of the Amazon EC2 instance that you want to associate with -- the Elastic IP address specified by the EIP property. eipaInstanceId :: Lens' EIPAssociation (Maybe (Val Text)) -- | The ID of the network interface to associate with the Elastic IP -- address (VPC only). eipaNetworkInterfaceId :: Lens' EIPAssociation (Maybe (Val Text)) -- | The private IP address that you want to associate with the Elastic IP -- address. The private IP address is restricted to the primary and -- secondary private IP addresses that are associated with the network -- interface. By default, the private IP address that is associated with -- the EIP is the primary private IP address of the network interface. eipaPrivateIpAddress :: Lens' EIPAssociation (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.EIPAssociation.EIPAssociation instance GHC.Show.Show Stratosphere.Resources.EIPAssociation.EIPAssociation instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.EIPAssociation.EIPAssociation instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.EIPAssociation.EIPAssociation -- | The AWS::EC2::EIP resource allocates an Elastic IP (EIP) address and -- can, optionally, associate it with an Amazon EC2 instance. module Stratosphere.Resources.EIP -- | Full data type definition for EIP. See eip for a more -- convenient constructor. data EIP EIP :: Maybe (Val Text) -> Maybe (Val Text) -> EIP [_eIPInstanceId] :: EIP -> Maybe (Val Text) [_eIPDomain] :: EIP -> Maybe (Val Text) -- | Constructor for EIP containing required fields as arguments. eip :: EIP -- | The Instance ID of the Amazon EC2 instance that you want to associate -- with this Elastic IP address. eipInstanceId :: Lens' EIP (Maybe (Val Text)) -- | Set to vpc to allocate the address to your Virtual Private Cloud -- (VPC). No other values are supported. Note If you define an Elastic IP -- address and associate it with a VPC that is defined in the same -- template, you must declare a dependency on the VPC-gateway attachment -- by using the DependsOn attribute on this resource. For more -- information, see DependsOn Attribute. For more information, see -- AllocateAddress in the Amazon EC2 API Reference. For more information -- about Elastic IP Addresses in VPC, go to IP Addressing in Your VPC in -- the Amazon VPC User Guide. eipDomain :: Lens' EIP (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.EIP.EIP instance GHC.Show.Show Stratosphere.Resources.EIP.EIP instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.EIP.EIP instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.EIP.EIP -- | The AWS::RDS::DBSecurityGroupIngress type enables ingress to a -- DBSecurityGroup using one of two forms of authorization. First, EC2 or -- VPC security groups can be added to the DBSecurityGroup if the -- application using the database is running on EC2 or VPC instances. -- Second, IP ranges are available if the application accessing your -- database is running on the Internet. For more information about DB -- security groups, see Working with DB security groups This type -- supports updates. For more information about updating stacks, see AWS -- CloudFormation Stacks Updates. For details about the settings for DB -- security group ingress, see AuthorizeDBSecurityGroupIngress. module Stratosphere.Resources.DBSecurityGroupIngress -- | Full data type definition for DBSecurityGroupIngress. See -- dbSecurityGroupIngress for a more convenient constructor. data DBSecurityGroupIngress DBSecurityGroupIngress :: Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> DBSecurityGroupIngress [_dBSecurityGroupIngressCIDRIP] :: DBSecurityGroupIngress -> Maybe (Val Text) [_dBSecurityGroupIngressDBSecurityGroupName] :: DBSecurityGroupIngress -> Val Text [_dBSecurityGroupIngressEC2SecurityGroupId] :: DBSecurityGroupIngress -> Maybe (Val Text) [_dBSecurityGroupIngressEC2SecurityGroupName] :: DBSecurityGroupIngress -> Maybe (Val Text) [_dBSecurityGroupIngressEC2SecurityGroupOwnerId] :: DBSecurityGroupIngress -> Maybe (Val Text) -- | Constructor for DBSecurityGroupIngress containing required -- fields as arguments. dbSecurityGroupIngress :: Val Text -> DBSecurityGroupIngress -- | The IP range to authorize. For an overview of CIDR ranges, go to the -- Wikipedia Tutorial. Type: String Update requires: No interruption dbsgiCIDRIP :: Lens' DBSecurityGroupIngress (Maybe (Val Text)) -- | The name (ARN) of the AWS::RDS::DBSecurityGroup to which this ingress -- will be added. Type: String dbsgiDBSecurityGroupName :: Lens' DBSecurityGroupIngress (Val Text) -- | The ID of the VPC or EC2 security group to authorize. For VPC DB -- security groups, use EC2SecurityGroupId. For EC2 security groups, use -- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or -- EC2SecurityGroupId. Type: String dbsgiEC2SecurityGroupId :: Lens' DBSecurityGroupIngress (Maybe (Val Text)) -- | The name of the EC2 security group to authorize. For VPC DB security -- groups, use EC2SecurityGroupId. For EC2 security groups, use -- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or -- EC2SecurityGroupId. Type: String dbsgiEC2SecurityGroupName :: Lens' DBSecurityGroupIngress (Maybe (Val Text)) -- | The AWS Account Number of the owner of the EC2 security group -- specified in the EC2SecurityGroupName parameter. The AWS Access Key ID -- is not an acceptable value. For VPC DB security groups, use -- EC2SecurityGroupId. For EC2 security groups, use -- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or -- EC2SecurityGroupId. Type: String dbsgiEC2SecurityGroupOwnerId :: Lens' DBSecurityGroupIngress (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.DBSecurityGroupIngress.DBSecurityGroupIngress instance GHC.Show.Show Stratosphere.Resources.DBSecurityGroupIngress.DBSecurityGroupIngress instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.DBSecurityGroupIngress.DBSecurityGroupIngress instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.DBSecurityGroupIngress.DBSecurityGroupIngress -- | Creates a cache subnet group. For more information about cache subnet -- groups, go to Cache Subnet Groups in the Amazon ElastiCache User Guide -- or go to CreateCacheSubnetGroup in the Amazon ElastiCache API -- Reference Guide. When you specify an AWS::ElastiCache::SubnetGroup -- type as an argument to the Ref function, AWS CloudFormation returns -- the name of the cache subnet group. module Stratosphere.Resources.CacheSubnetGroup -- | Full data type definition for CacheSubnetGroup. See -- cacheSubnetGroup for a more convenient constructor. data CacheSubnetGroup CacheSubnetGroup :: Val Text -> [Val Text] -> CacheSubnetGroup [_cacheSubnetGroupDescription] :: CacheSubnetGroup -> Val Text [_cacheSubnetGroupSubnetIds] :: CacheSubnetGroup -> [Val Text] -- | Constructor for CacheSubnetGroup containing required fields as -- arguments. cacheSubnetGroup :: Val Text -> [Val Text] -> CacheSubnetGroup -- | The description for the cache subnet group. csgDescription :: Lens' CacheSubnetGroup (Val Text) -- | The Amazon EC2 subnet IDs for the cache subnet group. csgSubnetIds :: Lens' CacheSubnetGroup [Val Text] instance GHC.Generics.Generic Stratosphere.Resources.CacheSubnetGroup.CacheSubnetGroup instance GHC.Show.Show Stratosphere.Resources.CacheSubnetGroup.CacheSubnetGroup instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.CacheSubnetGroup.CacheSubnetGroup instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.CacheSubnetGroup.CacheSubnetGroup -- | The AWS::ApiGateway::Resource resource creates a resource in an Amazon -- API Gateway (API Gateway) API. module Stratosphere.Resources.ApiGatewayResource -- | Full data type definition for ApiGatewayResource. See -- apiGatewayResource for a more convenient constructor. data ApiGatewayResource ApiGatewayResource :: Val Text -> Val Text -> Val Text -> ApiGatewayResource [_apiGatewayResourceParentId] :: ApiGatewayResource -> Val Text [_apiGatewayResourcePathPart] :: ApiGatewayResource -> Val Text [_apiGatewayResourceRestApiId] :: ApiGatewayResource -> Val Text -- | Constructor for ApiGatewayResource containing required fields -- as arguments. apiGatewayResource :: Val Text -> Val Text -> Val Text -> ApiGatewayResource -- | If you want to create a child resource, the ID of the parent resource. -- For resources without a parent, specify the RestApi root resource ID, -- such as { Fn::GetAtt: [MyRestApi, RootResourceId] -- }. agrParentId :: Lens' ApiGatewayResource (Val Text) -- | A path name for the resource. agrPathPart :: Lens' ApiGatewayResource (Val Text) -- | The ID of the RestApi resource in which you want to create this -- resource. agrRestApiId :: Lens' ApiGatewayResource (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.ApiGatewayResource.ApiGatewayResource instance GHC.Show.Show Stratosphere.Resources.ApiGatewayResource.ApiGatewayResource instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ApiGatewayResource.ApiGatewayResource instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ApiGatewayResource.ApiGatewayResource -- | The AWS::ApiGateway::Model resource defines the structure of a request -- or response payload for an Amazon API Gateway (API Gateway) method. module Stratosphere.Resources.ApiGatewayModel -- | Full data type definition for ApiGatewayModel. See -- apiGatewayModel for a more convenient constructor. data ApiGatewayModel ApiGatewayModel :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Maybe Object -> ApiGatewayModel [_apiGatewayModelContentType] :: ApiGatewayModel -> Maybe (Val Text) [_apiGatewayModelDescription] :: ApiGatewayModel -> Maybe (Val Text) [_apiGatewayModelName] :: ApiGatewayModel -> Maybe (Val Text) [_apiGatewayModelRestApiId] :: ApiGatewayModel -> Val Text [_apiGatewayModelSchema] :: ApiGatewayModel -> Maybe Object -- | Constructor for ApiGatewayModel containing required fields as -- arguments. apiGatewayModel :: Val Text -> ApiGatewayModel -- | The content type for the model. agmContentType :: Lens' ApiGatewayModel (Maybe (Val Text)) -- | A description that identifies this model. agmDescription :: Lens' ApiGatewayModel (Maybe (Val Text)) -- | A name for the mode. If you don't specify a name, AWS CloudFormation -- generates a unique physical ID and uses that ID for the model name. -- For more information, see Name Type. Important If you specify a name, -- you cannot do updates that require this resource to be replaced. You -- can still do updates that require no or some interruption. If you must -- replace the resource, specify a new name. agmName :: Lens' ApiGatewayModel (Maybe (Val Text)) -- | The ID of a REST API with which to associate this model. agmRestApiId :: Lens' ApiGatewayModel (Val Text) -- | The schema to use to transform data to one or more output formats. agmSchema :: Lens' ApiGatewayModel (Maybe Object) instance GHC.Generics.Generic Stratosphere.Resources.ApiGatewayModel.ApiGatewayModel instance GHC.Show.Show Stratosphere.Resources.ApiGatewayModel.ApiGatewayModel instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ApiGatewayModel.ApiGatewayModel instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ApiGatewayModel.ApiGatewayModel -- | The AWS::ApiGateway::Account resource specifies the AWS Identity and -- Access Management (IAM) role that Amazon API Gateway (API Gateway) -- uses to write API logs to Amazon CloudWatch Logs (CloudWatch Logs). module Stratosphere.Resources.ApiGatewayAccount -- | Full data type definition for ApiGatewayAccount. See -- apiGatewayAccount for a more convenient constructor. data ApiGatewayAccount ApiGatewayAccount :: Maybe (Val Text) -> ApiGatewayAccount [_apiGatewayAccountCloudWatchRoleArn] :: ApiGatewayAccount -> Maybe (Val Text) -- | Constructor for ApiGatewayAccount containing required fields as -- arguments. apiGatewayAccount :: ApiGatewayAccount -- | The Amazon Resource Name (ARN) of an IAM role that has write access to -- CloudWatch Logs in your account. agaCloudWatchRoleArn :: Lens' ApiGatewayAccount (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.ApiGatewayAccount.ApiGatewayAccount instance GHC.Show.Show Stratosphere.Resources.ApiGatewayAccount.ApiGatewayAccount instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ApiGatewayAccount.ApiGatewayAccount instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ApiGatewayAccount.ApiGatewayAccount -- | The AWS::IAM::AccessKey resource type generates a secret access key -- and assigns it to an IAM user or AWS account. This type supports -- updates. For more information about updating stacks, see AWS -- CloudFormation Stacks Updates. module Stratosphere.Resources.AccessKey -- | Full data type definition for AccessKey. See accessKey for a -- more convenient constructor. data AccessKey AccessKey :: Maybe (Val Integer') -> Maybe (Val Text) -> Val Text -> AccessKey [_accessKeySerial] :: AccessKey -> Maybe (Val Integer') [_accessKeyStatus] :: AccessKey -> Maybe (Val Text) [_accessKeyUserName] :: AccessKey -> Val Text -- | Constructor for AccessKey containing required fields as -- arguments. accessKey :: Val Text -> AccessKey -- | This value is specific to AWS CloudFormation and can only be -- incremented. Incrementing this value notifies AWS CloudFormation that -- you want to rotate your access key. When you update your stack, AWS -- CloudFormation will replace the existing access key with a new key. akSerial :: Lens' AccessKey (Maybe (Val Integer')) -- | The status of the access key. By default, AWS CloudFormation sets this -- property value to Active. akStatus :: Lens' AccessKey (Maybe (Val Text)) -- | The name of the user that the new key will belong to. akUserName :: Lens' AccessKey (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.AccessKey.AccessKey instance GHC.Show.Show Stratosphere.Resources.AccessKey.AccessKey instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.AccessKey.AccessKey instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.AccessKey.AccessKey -- | LoginProfile is a property of the AWS::IAM::User resource that creates -- a login profile for users so that they can access the AWS Management -- Console. module Stratosphere.ResourceProperties.UserLoginProfile -- | Full data type definition for UserLoginProfile. See -- userLoginProfile for a more convenient constructor. data UserLoginProfile UserLoginProfile :: Val Text -> Maybe (Val Bool') -> UserLoginProfile [_userLoginProfilePassword] :: UserLoginProfile -> Val Text [_userLoginProfilePasswordResetRequired] :: UserLoginProfile -> Maybe (Val Bool') -- | Constructor for UserLoginProfile containing required fields as -- arguments. userLoginProfile :: Val Text -> UserLoginProfile -- | The password for the user. ulpPassword :: Lens' UserLoginProfile (Val Text) -- | Specifies whether the user is required to set a new password the next -- time the user logs in to the AWS Management Console. ulpPasswordResetRequired :: Lens' UserLoginProfile (Maybe (Val Bool')) instance GHC.Generics.Generic Stratosphere.ResourceProperties.UserLoginProfile.UserLoginProfile instance GHC.Show.Show Stratosphere.ResourceProperties.UserLoginProfile.UserLoginProfile instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.UserLoginProfile.UserLoginProfile instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.UserLoginProfile.UserLoginProfile -- | StepAdjustments is a property of the AWS::AutoScaling::ScalingPolicy -- resource that describes a scaling adjustment based on the difference -- between the value of the aggregated CloudWatch metric and the breach -- threshold that you've defined for the alarm. For more information, see -- StepAdjustment in the Auto Scaling API Reference. module Stratosphere.ResourceProperties.StepAdjustments -- | Full data type definition for StepAdjustments. See -- stepAdjustments for a more convenient constructor. data StepAdjustments StepAdjustments :: Maybe Double' -> Maybe Double' -> Val Integer' -> StepAdjustments [_stepAdjustmentsMetricIntervalLowerBound] :: StepAdjustments -> Maybe Double' [_stepAdjustmentsMetricIntervalUpperBound] :: StepAdjustments -> Maybe Double' [_stepAdjustmentsScalingAdjustment] :: StepAdjustments -> Val Integer' -- | Constructor for StepAdjustments containing required fields as -- arguments. stepAdjustments :: Val Integer' -> StepAdjustments -- | The lower bound for the difference between the breach threshold and -- the CloudWatch metric. If the metric value exceeds the breach -- threshold, the lower bound is inclusive (the metric must be greater -- than or equal to the threshold plus the lower bound). Otherwise, it is -- exclusive (the metric must be greater than the threshold plus the -- lower bound). A null value indicates negative infinity. saMetricIntervalLowerBound :: Lens' StepAdjustments (Maybe Double') -- | The upper bound for the difference between the breach threshold and -- the CloudWatch metric. If the metric value exceeds the breach -- threshold, the upper bound is exclusive (the metric must be less than -- the threshold plus the upper bound). Otherwise, it is inclusive (the -- metric must be less than or equal to the threshold plus the upper -- bound). A null value indicates positive infinity. saMetricIntervalUpperBound :: Lens' StepAdjustments (Maybe Double') -- | The amount by which to scale, based on the value that you specified in -- the AdjustmentType property. A positive value adds to the current -- capacity and a negative number subtracts from the current capacity. saScalingAdjustment :: Lens' StepAdjustments (Val Integer') instance GHC.Generics.Generic Stratosphere.ResourceProperties.StepAdjustments.StepAdjustments instance GHC.Show.Show Stratosphere.ResourceProperties.StepAdjustments.StepAdjustments instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.StepAdjustments.StepAdjustments instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.StepAdjustments.StepAdjustments -- | The AWS::AutoScaling::ScalingPolicy resource adds a scaling policy to -- an auto scaling group. A scaling policy specifies whether to scale the -- auto scaling group up or down, and by how much. For more information -- on scaling policies, see Scaling by Policy in the Auto Scaling -- Developer Guide. You can use a scaling policy together with an -- CloudWatch alarm. An CloudWatch alarm can automatically initiate -- actions on your behalf, based on parameters you specify. A scaling -- policy is one type of action that an alarm can initiate. For a snippet -- showing how to create an Auto Scaling policy that is triggered by an -- CloudWatch alarm, see Auto Scaling Policy Triggered by CloudWatch -- Alarm. This type supports updates. For more information about updating -- this resource, see PutScalingPolicy. module Stratosphere.Resources.ScalingPolicy -- | Full data type definition for ScalingPolicy. See scalingPolicy -- for a more convenient constructor. data ScalingPolicy ScalingPolicy :: Val Text -> Val Text -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe [StepAdjustments] -> ScalingPolicy [_scalingPolicyAdjustmentType] :: ScalingPolicy -> Val Text [_scalingPolicyAutoScalingGroupName] :: ScalingPolicy -> Val Text [_scalingPolicyCooldown] :: ScalingPolicy -> Maybe (Val Text) [_scalingPolicyEstimatedInstanceWarmup] :: ScalingPolicy -> Maybe (Val Integer') [_scalingPolicyMetricAggregationType] :: ScalingPolicy -> Maybe (Val Text) [_scalingPolicyMinAdjustmentMagnitude] :: ScalingPolicy -> Maybe (Val Integer') [_scalingPolicyPolicyType] :: ScalingPolicy -> Maybe (Val Text) [_scalingPolicyScalingAdjustment] :: ScalingPolicy -> Maybe (Val Integer') [_scalingPolicyStepAdjustments] :: ScalingPolicy -> Maybe [StepAdjustments] -- | Constructor for ScalingPolicy containing required fields as -- arguments. scalingPolicy :: Val Text -> Val Text -> ScalingPolicy -- | Specifies whether the ScalingAdjustment is an absolute number or a -- percentage of the current capacity. Valid values are ChangeInCapacity, -- ExactCapacity, and PercentChangeInCapacity. spAdjustmentType :: Lens' ScalingPolicy (Val Text) -- | The name or Amazon Resource Name (ARN) of the Auto Scaling Group that -- you want to attach the policy to. spAutoScalingGroupName :: Lens' ScalingPolicy (Val Text) -- | The amount of time, in seconds, after a scaling activity completes -- before any further trigger-related scaling activities can start. Do -- not specify this property if you are using the StepScaling policy -- type. spCooldown :: Lens' ScalingPolicy (Maybe (Val Text)) -- | The estimated time, in seconds, until a newly launched instance can -- send metrics to CloudWatch. By default, Auto Scaling uses the cooldown -- period, as specified in the Cooldown property. Do not specify this -- property if you are using the SimpleScaling policy type. spEstimatedInstanceWarmup :: Lens' ScalingPolicy (Maybe (Val Integer')) -- | The aggregation type for the CloudWatch metrics. You can specify -- Minimum, Maximum, or Average. By default, AWS CloudFormation specifies -- Average. Do not specify this property if you are using the -- SimpleScaling policy type. spMetricAggregationType :: Lens' ScalingPolicy (Maybe (Val Text)) -- | For the PercentChangeInCapacity adjustment type, the minimum number of -- instances to scale. The scaling policy changes the desired capacity of -- the Auto Scaling group by a minimum of this many instances. This -- property replaces the MinAdjustmentStep property. spMinAdjustmentMagnitude :: Lens' ScalingPolicy (Maybe (Val Integer')) -- | An Auto Scaling policy type. You can specify SimpleScaling or -- StepScaling. By default, AWS CloudFormation specifies SimpleScaling. -- For more information, see Scaling Policy Types in the Auto Scaling -- User Guide. spPolicyType :: Lens' ScalingPolicy (Maybe (Val Text)) -- | The number of instances by which to scale. The AdjustmentType property -- determines whether AWS CloudFormation interprets this number as an -- absolute number (when the ExactCapacityvalue is specified) or as a -- percentage of the existing Auto Scaling group size (when the -- PercentChangeInCapacity value is specified). A positive value adds to -- the current capacity and a negative value subtracts from the current -- capacity. spScalingAdjustment :: Lens' ScalingPolicy (Maybe (Val Integer')) -- | A set of adjustments that enable you to scale based on the size of the -- alarm breach. spStepAdjustments :: Lens' ScalingPolicy (Maybe [StepAdjustments]) instance GHC.Generics.Generic Stratosphere.Resources.ScalingPolicy.ScalingPolicy instance GHC.Show.Show Stratosphere.Resources.ScalingPolicy.ScalingPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ScalingPolicy.ScalingPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ScalingPolicy.ScalingPolicy -- | The EC2 Security Group Rule is an embedded property of the -- AWS::EC2::SecurityGroup type. module Stratosphere.ResourceProperties.SecurityGroupIngressRule -- | Full data type definition for SecurityGroupIngressRule. See -- securityGroupIngressRule for a more convenient constructor. data SecurityGroupIngressRule SecurityGroupIngressRule :: Maybe (Val Text) -> Maybe (Val Integer') -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Integer') -> SecurityGroupIngressRule [_securityGroupIngressRuleCidrIp] :: SecurityGroupIngressRule -> Maybe (Val Text) [_securityGroupIngressRuleFromPort] :: SecurityGroupIngressRule -> Maybe (Val Integer') [_securityGroupIngressRuleIpProtocol] :: SecurityGroupIngressRule -> Val Text [_securityGroupIngressRuleSourceSecurityGroupId] :: SecurityGroupIngressRule -> Maybe (Val Text) [_securityGroupIngressRuleSourceSecurityGroupName] :: SecurityGroupIngressRule -> Maybe (Val Text) [_securityGroupIngressRuleSourceSecurityGroupOwnerId] :: SecurityGroupIngressRule -> Maybe (Val Text) [_securityGroupIngressRuleToPort] :: SecurityGroupIngressRule -> Maybe (Val Integer') -- | Constructor for SecurityGroupIngressRule containing required -- fields as arguments. securityGroupIngressRule :: Val Text -> SecurityGroupIngressRule -- | Specifies a CIDR range. sgirCidrIp :: Lens' SecurityGroupIngressRule (Maybe (Val Text)) -- | The start of port range for the TCP and UDP protocols, or an ICMP type -- number. An ICMP type number of -1 indicates a wildcard (i.e., any ICMP -- type number). Type: Integer sgirFromPort :: Lens' SecurityGroupIngressRule (Maybe (Val Integer')) -- | An IP protocol name or number. For valid values, go to the IpProtocol -- parameter in AuthorizeSecurityGroupIngress sgirIpProtocol :: Lens' SecurityGroupIngressRule (Val Text) -- | For VPC security groups only. Specifies the ID of the Amazon EC2 -- Security Group to allow access. You can use the Ref intrinsic function -- to refer to the logical ID of a security group defined in the same -- template. sgirSourceSecurityGroupId :: Lens' SecurityGroupIngressRule (Maybe (Val Text)) -- | For non-VPC security groups only. Specifies the name of the Amazon EC2 -- Security Group to use for access. You can use the Ref intrinsic -- function to refer to the logical name of a security group that is -- defined in the same template. sgirSourceSecurityGroupName :: Lens' SecurityGroupIngressRule (Maybe (Val Text)) -- | Specifies the AWS Account ID of the owner of the Amazon EC2 Security -- Group that is specified in the SourceSecurityGroupName property. sgirSourceSecurityGroupOwnerId :: Lens' SecurityGroupIngressRule (Maybe (Val Text)) -- | The end of port range for the TCP and UDP protocols, or an ICMP code. -- An ICMP code of -1 indicates a wildcard (i.e., any ICMP code). sgirToPort :: Lens' SecurityGroupIngressRule (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.ResourceProperties.SecurityGroupIngressRule.SecurityGroupIngressRule instance GHC.Show.Show Stratosphere.ResourceProperties.SecurityGroupIngressRule.SecurityGroupIngressRule instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.SecurityGroupIngressRule.SecurityGroupIngressRule instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.SecurityGroupIngressRule.SecurityGroupIngressRule -- | The EC2 Security Group Rule is an embedded property of the -- AWS::EC2::SecurityGroup type. module Stratosphere.ResourceProperties.SecurityGroupEgressRule -- | Full data type definition for SecurityGroupEgressRule. See -- securityGroupEgressRule for a more convenient constructor. data SecurityGroupEgressRule SecurityGroupEgressRule :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Integer') -> Val Text -> Maybe (Val Integer') -> SecurityGroupEgressRule [_securityGroupEgressRuleCidrIp] :: SecurityGroupEgressRule -> Maybe (Val Text) [_securityGroupEgressRuleDestinationSecurityGroupId] :: SecurityGroupEgressRule -> Maybe (Val Text) [_securityGroupEgressRuleFromPort] :: SecurityGroupEgressRule -> Maybe (Val Integer') [_securityGroupEgressRuleIpProtocol] :: SecurityGroupEgressRule -> Val Text [_securityGroupEgressRuleToPort] :: SecurityGroupEgressRule -> Maybe (Val Integer') -- | Constructor for SecurityGroupEgressRule containing required -- fields as arguments. securityGroupEgressRule :: Val Text -> SecurityGroupEgressRule -- | Specifies a CIDR range. sgerCidrIp :: Lens' SecurityGroupEgressRule (Maybe (Val Text)) -- | Specifies the GroupId of the destination Amazon VPC security group. -- Type: String sgerDestinationSecurityGroupId :: Lens' SecurityGroupEgressRule (Maybe (Val Text)) -- | The start of port range for the TCP and UDP protocols, or an ICMP type -- number. An ICMP type number of -1 indicates a wildcard (i.e., any ICMP -- type number). sgerFromPort :: Lens' SecurityGroupEgressRule (Maybe (Val Integer')) -- | An IP protocol name or number. For valid values, go to the IpProtocol -- parameter in AuthorizeSecurityGroupIngress sgerIpProtocol :: Lens' SecurityGroupEgressRule (Val Text) -- | The end of port range for the TCP and UDP protocols, or an ICMP code. -- An ICMP code of -1 indicates a wildcard (i.e., any ICMP code). sgerToPort :: Lens' SecurityGroupEgressRule (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.ResourceProperties.SecurityGroupEgressRule.SecurityGroupEgressRule instance GHC.Show.Show Stratosphere.ResourceProperties.SecurityGroupEgressRule.SecurityGroupEgressRule instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.SecurityGroupEgressRule.SecurityGroupEgressRule instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.SecurityGroupEgressRule.SecurityGroupEgressRule -- | The RedrivePolicy type is a property of the AWS::SQS::Queue resource. module Stratosphere.ResourceProperties.SQSRedrivePolicy -- | Full data type definition for SQSRedrivePolicy. See -- sqsRedrivePolicy for a more convenient constructor. data SQSRedrivePolicy SQSRedrivePolicy :: Val Text -> Maybe (Val Integer') -> SQSRedrivePolicy [_sQSRedrivePolicydeadLetterTargetArn] :: SQSRedrivePolicy -> Val Text [_sQSRedrivePolicymaxReceiveCount] :: SQSRedrivePolicy -> Maybe (Val Integer') -- | Constructor for SQSRedrivePolicy containing required fields as -- arguments. sqsRedrivePolicy :: Val Text -> SQSRedrivePolicy -- | The Amazon Resource Name (ARN) of the dead letter queue to which the -- messages are sent to after the maxReceiveCount value has been -- exceeded. sqsrpdeadLetterTargetArn :: Lens' SQSRedrivePolicy (Val Text) -- | The number of times a message is delivered to the source queue before -- being sent to the dead letter queue. sqsrpmaxReceiveCount :: Lens' SQSRedrivePolicy (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.ResourceProperties.SQSRedrivePolicy.SQSRedrivePolicy instance GHC.Show.Show Stratosphere.ResourceProperties.SQSRedrivePolicy.SQSRedrivePolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.SQSRedrivePolicy.SQSRedrivePolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.SQSRedrivePolicy.SQSRedrivePolicy -- | The AWS::SQS::Queue type creates an Amazon SQS queue. module Stratosphere.Resources.SQSQueue -- | Full data type definition for SQSQueue. See sqsQueue for a more -- convenient constructor. data SQSQueue SQSQueue :: Maybe (Val Integer') -> Maybe (Val Integer') -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe SQSRedrivePolicy -> Maybe (Val Integer') -> SQSQueue [_sQSQueueDelaySeconds] :: SQSQueue -> Maybe (Val Integer') [_sQSQueueMaximumMessageSize] :: SQSQueue -> Maybe (Val Integer') [_sQSQueueMessageRetentionPeriod] :: SQSQueue -> Maybe (Val Integer') [_sQSQueueQueueName] :: SQSQueue -> Maybe (Val Text) [_sQSQueueReceiveMessageWaitTimeSeconds] :: SQSQueue -> Maybe (Val Integer') [_sQSQueueRedrivePolicy] :: SQSQueue -> Maybe SQSRedrivePolicy [_sQSQueueVisibilityTimeout] :: SQSQueue -> Maybe (Val Integer') -- | Constructor for SQSQueue containing required fields as -- arguments. sqsQueue :: SQSQueue -- | The time in seconds that the delivery of all messages in the queue -- will be delayed. You can specify an integer value of 0 to 900 (15 -- minutes). The default value is 0. sqsqDelaySeconds :: Lens' SQSQueue (Maybe (Val Integer')) -- | The limit of how many bytes a message can contain before Amazon SQS -- rejects it. You can specify an integer value from 1024 bytes (1 KiB) -- to 262144 bytes (256 KiB). The default value is 262144 (256 KiB). sqsqMaximumMessageSize :: Lens' SQSQueue (Maybe (Val Integer')) -- | The number of seconds Amazon SQS retains a message. You can specify an -- integer value from 60 seconds (1 minute) to 1209600 seconds (14 days). -- The default value is 345600 seconds (4 days). sqsqMessageRetentionPeriod :: Lens' SQSQueue (Maybe (Val Integer')) -- | A name for the queue. If you don't specify a name, AWS CloudFormation -- generates a unique physical ID and uses that ID for the queue name. -- For more information, see Name Type. Important If you specify a name, -- you cannot do updates that require this resource to be replaced. You -- can still do updates that require no or some interruption. If you must -- replace the resource, specify a new name. sqsqQueueName :: Lens' SQSQueue (Maybe (Val Text)) -- | Specifies the duration, in seconds, that the ReceiveMessage action -- call waits until a message is in the queue in order to include it in -- the response, as opposed to returning an empty response if a message -- is not yet available. You can specify an integer from 1 to 20. The -- short polling is used as the default or when you specify 0 for this -- property. For more information, see Amazon SQS Long Poll. sqsqReceiveMessageWaitTimeSeconds :: Lens' SQSQueue (Maybe (Val Integer')) -- | Specifies an existing dead letter queue to receive messages after the -- source queue (this queue) fails to process a message a specified -- number of times. sqsqRedrivePolicy :: Lens' SQSQueue (Maybe SQSRedrivePolicy) -- | The length of time during which a message will be unavailable once a -- message is delivered from the queue. This blocks other components from -- receiving the same message and gives the initial component time to -- process and delete the message from the queue. Values must be from 0 -- to 43200 seconds (12 hours). If no value is specified, the default -- value of 30 seconds will be used. For more information about SQS Queue -- visibility timeouts, see Visibility Timeout in the Amazon Simple Queue -- Service Developer Guide. sqsqVisibilityTimeout :: Lens' SQSQueue (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.Resources.SQSQueue.SQSQueue instance GHC.Show.Show Stratosphere.Resources.SQSQueue.SQSQueue instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SQSQueue.SQSQueue instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SQSQueue.SQSQueue -- | Subscription is an embedded property of the AWS::SNS::Topic resource -- that describes the subscription endpoints for an Amazon Simple -- Notification Service (Amazon SNS) topic. module Stratosphere.ResourceProperties.SNSTopicSubscription -- | Full data type definition for SNSTopicSubscription. See -- snsTopicSubscription for a more convenient constructor. data SNSTopicSubscription SNSTopicSubscription :: Val Text -> SNSProtocol -> SNSTopicSubscription [_sNSTopicSubscriptionEndpoint] :: SNSTopicSubscription -> Val Text [_sNSTopicSubscriptionProtocol] :: SNSTopicSubscription -> SNSProtocol -- | Constructor for SNSTopicSubscription containing required fields -- as arguments. snsTopicSubscription :: Val Text -> SNSProtocol -> SNSTopicSubscription -- | The subscription's endpoint (format depends on the protocol). For more -- information, see the Subscribe Endpoint parameter in the Amazon Simple -- Notification Service API Reference. snstsEndpoint :: Lens' SNSTopicSubscription (Val Text) -- | The subscription's protocol. For more information, see the Subscribe -- Protocol parameter in the Amazon Simple Notification Service API -- Reference. snstsProtocol :: Lens' SNSTopicSubscription SNSProtocol instance GHC.Generics.Generic Stratosphere.ResourceProperties.SNSTopicSubscription.SNSTopicSubscription instance GHC.Show.Show Stratosphere.ResourceProperties.SNSTopicSubscription.SNSTopicSubscription instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.SNSTopicSubscription.SNSTopicSubscription instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.SNSTopicSubscription.SNSTopicSubscription -- | The AWS::SNS::Topic type creates an Amazon Simple Notification Service -- (Amazon SNS) topic. module Stratosphere.Resources.SNSTopic -- | Full data type definition for SNSTopic. See snsTopic for a more -- convenient constructor. data SNSTopic SNSTopic :: Maybe (Val Text) -> Maybe [SNSTopicSubscription] -> Maybe (Val Text) -> SNSTopic [_sNSTopicDisplayName] :: SNSTopic -> Maybe (Val Text) [_sNSTopicSubscription] :: SNSTopic -> Maybe [SNSTopicSubscription] [_sNSTopicTopicName] :: SNSTopic -> Maybe (Val Text) -- | Constructor for SNSTopic containing required fields as -- arguments. snsTopic :: SNSTopic -- | A developer-defined string that can be used to identify this SNS -- topic. snstDisplayName :: Lens' SNSTopic (Maybe (Val Text)) -- | The SNS subscriptions (endpoints) for this topic. snstSubscription :: Lens' SNSTopic (Maybe [SNSTopicSubscription]) -- | A name for the topic. If you don't specify a name, AWS CloudFormation -- generates a unique physical ID and uses that ID for the topic name. -- For more information, see Name Type. Important If you specify a name, -- you cannot do updates that require this resource to be replaced. You -- can still do updates that require no or some interruption. If you must -- replace the resource, specify a new name. snstTopicName :: Lens' SNSTopic (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.SNSTopic.SNSTopic instance GHC.Show.Show Stratosphere.Resources.SNSTopic.SNSTopic instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SNSTopic.SNSTopic instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SNSTopic.SNSTopic -- | The RoutingRuleCondition property is an embedded property of the -- Amazon S3 Website Configuration Routing Rules Property that describes -- a condition that must be met for a redirect to apply. module Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition -- | Full data type definition for S3WebsiteRoutingRuleCondition. See -- s3WebsiteRoutingRuleCondition for a more convenient -- constructor. data S3WebsiteRoutingRuleCondition S3WebsiteRoutingRuleCondition :: Maybe (Val Text) -> Maybe (Val Text) -> S3WebsiteRoutingRuleCondition [_s3WebsiteRoutingRuleConditionHttpErrorCodeReturnedEquals] :: S3WebsiteRoutingRuleCondition -> Maybe (Val Text) [_s3WebsiteRoutingRuleConditionKeyPrefixEquals] :: S3WebsiteRoutingRuleCondition -> Maybe (Val Text) -- | Constructor for S3WebsiteRoutingRuleCondition containing -- required fields as arguments. s3WebsiteRoutingRuleCondition :: S3WebsiteRoutingRuleCondition -- | Applies this redirect if the error code equals this value in the event -- of an error. swrrcHttpErrorCodeReturnedEquals :: Lens' S3WebsiteRoutingRuleCondition (Maybe (Val Text)) -- | The object key name prefix when the redirect is applied. For example, -- to redirect requests for ExamplePage.html, set the key prefix to -- ExamplePage.html. To redirect request for all pages with the prefix -- docs/, set the key prefix to docs, which identifies all objects in -- the docs folder. swrrcKeyPrefixEquals :: Lens' S3WebsiteRoutingRuleCondition (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition.S3WebsiteRoutingRuleCondition instance GHC.Show.Show Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition.S3WebsiteRoutingRuleCondition instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition.S3WebsiteRoutingRuleCondition instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition.S3WebsiteRoutingRuleCondition -- | The RedirectRule property is an embedded property of the Amazon S3 -- Website Configuration Routing Rules Property that describes how -- requests are redirected. In the event of an error, you can specify a -- different error code to return. module Stratosphere.ResourceProperties.S3WebsiteRedirectRule -- | Full data type definition for S3WebsiteRedirectRule. See -- s3WebsiteRedirectRule for a more convenient constructor. data S3WebsiteRedirectRule S3WebsiteRedirectRule :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> S3WebsiteRedirectRule [_s3WebsiteRedirectRuleHostName] :: S3WebsiteRedirectRule -> Maybe (Val Text) [_s3WebsiteRedirectRuleHttpRedirectCode] :: S3WebsiteRedirectRule -> Maybe (Val Text) [_s3WebsiteRedirectRuleProtocol] :: S3WebsiteRedirectRule -> Maybe (Val Text) [_s3WebsiteRedirectRuleReplaceKeyPrefixWith] :: S3WebsiteRedirectRule -> Maybe (Val Text) [_s3WebsiteRedirectRuleReplaceKeyWith] :: S3WebsiteRedirectRule -> Maybe (Val Text) -- | Constructor for S3WebsiteRedirectRule containing required -- fields as arguments. s3WebsiteRedirectRule :: S3WebsiteRedirectRule -- | Name of the host where requests are redirected. swrrHostName :: Lens' S3WebsiteRedirectRule (Maybe (Val Text)) -- | The HTTP redirect code to use on the response. swrrHttpRedirectCode :: Lens' S3WebsiteRedirectRule (Maybe (Val Text)) -- | The protocol to use in the redirect request. swrrProtocol :: Lens' S3WebsiteRedirectRule (Maybe (Val Text)) -- | The object key prefix to use in the redirect request. For example, to -- redirect requests for all pages with the prefix docs (objects in -- the docs folder) to the documents/ prefix, you can set the -- KeyPrefixEquals property in routing condition property to docs/, and -- set the ReplaceKeyPrefixWith property to documents/. Important If you -- specify this property, you cannot specify the ReplaceKeyWith property. swrrReplaceKeyPrefixWith :: Lens' S3WebsiteRedirectRule (Maybe (Val Text)) -- | The specific object key to use in the redirect request. For example, -- redirect request to error.html. Important If you specify this -- property, you cannot specify the ReplaceKeyPrefixWith property. swrrReplaceKeyWith :: Lens' S3WebsiteRedirectRule (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3WebsiteRedirectRule.S3WebsiteRedirectRule instance GHC.Show.Show Stratosphere.ResourceProperties.S3WebsiteRedirectRule.S3WebsiteRedirectRule instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3WebsiteRedirectRule.S3WebsiteRedirectRule instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3WebsiteRedirectRule.S3WebsiteRedirectRule -- | The RoutingRules property is an embedded property of the Amazon S3 -- Website Configuration Property property. This property describes the -- redirect behavior and when a redirect is applied. module Stratosphere.ResourceProperties.S3WebsiteRoutingRules -- | Full data type definition for S3WebsiteRoutingRules. See -- s3WebsiteRoutingRules for a more convenient constructor. data S3WebsiteRoutingRules S3WebsiteRoutingRules :: S3WebsiteRedirectRule -> Maybe S3WebsiteRoutingRuleCondition -> S3WebsiteRoutingRules [_s3WebsiteRoutingRulesRedirectRule] :: S3WebsiteRoutingRules -> S3WebsiteRedirectRule [_s3WebsiteRoutingRulesRoutingRuleCondition] :: S3WebsiteRoutingRules -> Maybe S3WebsiteRoutingRuleCondition -- | Constructor for S3WebsiteRoutingRules containing required -- fields as arguments. s3WebsiteRoutingRules :: S3WebsiteRedirectRule -> S3WebsiteRoutingRules -- | Redirect requests to another host, to another page, or with another -- protocol. swrrRedirectRule :: Lens' S3WebsiteRoutingRules S3WebsiteRedirectRule -- | Rules that define when a redirect is applied. swrrRoutingRuleCondition :: Lens' S3WebsiteRoutingRules (Maybe S3WebsiteRoutingRuleCondition) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3WebsiteRoutingRules.S3WebsiteRoutingRules instance GHC.Show.Show Stratosphere.ResourceProperties.S3WebsiteRoutingRules.S3WebsiteRoutingRules instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3WebsiteRoutingRules.S3WebsiteRoutingRules instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3WebsiteRoutingRules.S3WebsiteRoutingRules -- | The RedirectAllRequestsTo code is an embedded property of the Amazon -- S3 Website Configuration Property property that describes the redirect -- behavior of all requests to a website endpoint of an Amazon S3 bucket. module Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo -- | Full data type definition for S3WebsiteRedirectAllRequestsTo. See -- s3WebsiteRedirectAllRequestsTo for a more convenient -- constructor. data S3WebsiteRedirectAllRequestsTo S3WebsiteRedirectAllRequestsTo :: Val Text -> Maybe (Val Text) -> S3WebsiteRedirectAllRequestsTo [_s3WebsiteRedirectAllRequestsToHostName] :: S3WebsiteRedirectAllRequestsTo -> Val Text [_s3WebsiteRedirectAllRequestsToProtocol] :: S3WebsiteRedirectAllRequestsTo -> Maybe (Val Text) -- | Constructor for S3WebsiteRedirectAllRequestsTo containing -- required fields as arguments. s3WebsiteRedirectAllRequestsTo :: Val Text -> S3WebsiteRedirectAllRequestsTo -- | Name of the host where requests are redirected. swrartHostName :: Lens' S3WebsiteRedirectAllRequestsTo (Val Text) -- | Protocol to use (http or https) when redirecting requests. The default -- is the protocol that is used in the original request. swrartProtocol :: Lens' S3WebsiteRedirectAllRequestsTo (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo.S3WebsiteRedirectAllRequestsTo instance GHC.Show.Show Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo.S3WebsiteRedirectAllRequestsTo instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo.S3WebsiteRedirectAllRequestsTo instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo.S3WebsiteRedirectAllRequestsTo -- | WebsiteConfiguration is an embedded property of the AWS::S3::Bucket -- resource. module Stratosphere.ResourceProperties.S3WebsiteConfiguration -- | Full data type definition for S3WebsiteConfiguration. See -- s3WebsiteConfiguration for a more convenient constructor. data S3WebsiteConfiguration S3WebsiteConfiguration :: Maybe (Val Text) -> Val Text -> Maybe S3WebsiteRedirectAllRequestsTo -> Maybe S3WebsiteRoutingRules -> S3WebsiteConfiguration [_s3WebsiteConfigurationErrorDocument] :: S3WebsiteConfiguration -> Maybe (Val Text) [_s3WebsiteConfigurationIndexDocument] :: S3WebsiteConfiguration -> Val Text [_s3WebsiteConfigurationRedirectAllRequestsTo] :: S3WebsiteConfiguration -> Maybe S3WebsiteRedirectAllRequestsTo [_s3WebsiteConfigurationRoutingRules] :: S3WebsiteConfiguration -> Maybe S3WebsiteRoutingRules -- | Constructor for S3WebsiteConfiguration containing required -- fields as arguments. s3WebsiteConfiguration :: Val Text -> S3WebsiteConfiguration -- | The name of the error document for the website. swcErrorDocument :: Lens' S3WebsiteConfiguration (Maybe (Val Text)) -- | The name of the index document for the website. swcIndexDocument :: Lens' S3WebsiteConfiguration (Val Text) -- | The redirect behavior for every request to this bucket's website -- endpoint. Important If you specify this property, you cannot specify -- any other property. swcRedirectAllRequestsTo :: Lens' S3WebsiteConfiguration (Maybe S3WebsiteRedirectAllRequestsTo) -- | Rules that define when a redirect is applied and the redirect -- behavior. swcRoutingRules :: Lens' S3WebsiteConfiguration (Maybe S3WebsiteRoutingRules) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3WebsiteConfiguration.S3WebsiteConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3WebsiteConfiguration.S3WebsiteConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3WebsiteConfiguration.S3WebsiteConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3WebsiteConfiguration.S3WebsiteConfiguration -- | Describes the versioning state of an AWS::S3::Bucket resource. For -- more information, see PUT Bucket versioning in the Amazon Simple -- Storage Service API Reference. module Stratosphere.ResourceProperties.S3VersioningConfiguration -- | Full data type definition for S3VersioningConfiguration. See -- s3VersioningConfiguration for a more convenient constructor. data S3VersioningConfiguration S3VersioningConfiguration :: Val Text -> S3VersioningConfiguration [_s3VersioningConfigurationStatus] :: S3VersioningConfiguration -> Val Text -- | Constructor for S3VersioningConfiguration containing required -- fields as arguments. s3VersioningConfiguration :: Val Text -> S3VersioningConfiguration -- | The versioning state of an Amazon S3 bucket. If you enable versioning, -- you must suspend versioning to disable it. svcStatus :: Lens' S3VersioningConfiguration (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3VersioningConfiguration.S3VersioningConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3VersioningConfiguration.S3VersioningConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3VersioningConfiguration.S3VersioningConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3VersioningConfiguration.S3VersioningConfiguration -- | Destination is a property of the Amazon S3 ReplicationConfiguration -- Rules property that specifies which Amazon Simple Storage Service -- (Amazon S3) bucket to store replicated objects and their storage -- class. module Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination -- | Full data type definition for -- S3ReplicationConfigurationRulesDestination. See -- s3ReplicationConfigurationRulesDestination for a more -- convenient constructor. data S3ReplicationConfigurationRulesDestination S3ReplicationConfigurationRulesDestination :: Val Text -> Maybe (Val Text) -> S3ReplicationConfigurationRulesDestination [_s3ReplicationConfigurationRulesDestinationBucket] :: S3ReplicationConfigurationRulesDestination -> Val Text [_s3ReplicationConfigurationRulesDestinationStorageClass] :: S3ReplicationConfigurationRulesDestination -> Maybe (Val Text) -- | Constructor for S3ReplicationConfigurationRulesDestination -- containing required fields as arguments. s3ReplicationConfigurationRulesDestination :: Val Text -> S3ReplicationConfigurationRulesDestination -- | The Amazon resource name (ARN) of an S3 bucket where Amazon S3 stores -- replicated objects. This destination bucket must be in a different -- region than your source bucket. If you have multiple rules in your -- replication configuration, specify the same destination bucket for all -- of the rules. srcrdBucket :: Lens' S3ReplicationConfigurationRulesDestination (Val Text) -- | The storage class to use when replicating objects, such as standard or -- reduced redundancy. By default, Amazon S3 uses the storage class of -- the source object to create object replica. For valid values, see the -- StorageClass element of the PUT Bucket replication action in the -- Amazon Simple Storage Service API Reference. srcrdStorageClass :: Lens' S3ReplicationConfigurationRulesDestination (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination.S3ReplicationConfigurationRulesDestination instance GHC.Show.Show Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination.S3ReplicationConfigurationRulesDestination instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination.S3ReplicationConfigurationRulesDestination instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination.S3ReplicationConfigurationRulesDestination -- | Rules is a property of the Amazon S3 ReplicationConfiguration property -- that specifies which Amazon Simple Storage Service (Amazon S3) objects -- to replicate and where to store them. module Stratosphere.ResourceProperties.S3ReplicationConfigurationRule -- | Full data type definition for S3ReplicationConfigurationRule. See -- s3ReplicationConfigurationRule for a more convenient -- constructor. data S3ReplicationConfigurationRule S3ReplicationConfigurationRule :: S3ReplicationConfigurationRulesDestination -> Maybe (Val Text) -> Val Text -> Val Text -> S3ReplicationConfigurationRule [_s3ReplicationConfigurationRuleDestination] :: S3ReplicationConfigurationRule -> S3ReplicationConfigurationRulesDestination [_s3ReplicationConfigurationRuleId] :: S3ReplicationConfigurationRule -> Maybe (Val Text) [_s3ReplicationConfigurationRulePrefix] :: S3ReplicationConfigurationRule -> Val Text [_s3ReplicationConfigurationRuleStatus] :: S3ReplicationConfigurationRule -> Val Text -- | Constructor for S3ReplicationConfigurationRule containing -- required fields as arguments. s3ReplicationConfigurationRule :: S3ReplicationConfigurationRulesDestination -> Val Text -> Val Text -> S3ReplicationConfigurationRule -- | Defines the destination where Amazon S3 stores replicated objects. srcrDestination :: Lens' S3ReplicationConfigurationRule S3ReplicationConfigurationRulesDestination -- | A unique identifier for the rule. If you don't specify a value, AWS -- CloudFormation generates a random ID. srcrId :: Lens' S3ReplicationConfigurationRule (Maybe (Val Text)) -- | An object prefix. This rule applies to all Amazon S3 objects with this -- prefix. To specify all objects in an S3 bucket, specify an empty -- string. srcrPrefix :: Lens' S3ReplicationConfigurationRule (Val Text) -- | Whether the rule is enabled. For valid values, see the Status element -- of the PUT Bucket replication action in the Amazon Simple Storage -- Service API Reference. srcrStatus :: Lens' S3ReplicationConfigurationRule (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3ReplicationConfigurationRule.S3ReplicationConfigurationRule instance GHC.Show.Show Stratosphere.ResourceProperties.S3ReplicationConfigurationRule.S3ReplicationConfigurationRule instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3ReplicationConfigurationRule.S3ReplicationConfigurationRule instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3ReplicationConfigurationRule.S3ReplicationConfigurationRule -- | ReplicationConfiguration is a property of the AWS::S3::Bucket resource -- that specifies replication rules and the AWS Identity and Access -- Management (IAM) role Amazon Simple Storage Service (Amazon S3) uses -- to replicate objects. module Stratosphere.ResourceProperties.S3ReplicationConfiguration -- | Full data type definition for S3ReplicationConfiguration. See -- s3ReplicationConfiguration for a more convenient constructor. data S3ReplicationConfiguration S3ReplicationConfiguration :: Val Text -> [S3ReplicationConfigurationRule] -> S3ReplicationConfiguration [_s3ReplicationConfigurationRole] :: S3ReplicationConfiguration -> Val Text [_s3ReplicationConfigurationRules] :: S3ReplicationConfiguration -> [S3ReplicationConfigurationRule] -- | Constructor for S3ReplicationConfiguration containing required -- fields as arguments. s3ReplicationConfiguration :: Val Text -> [S3ReplicationConfigurationRule] -> S3ReplicationConfiguration -- | The Amazon Resource Name (ARN) of an AWS Identity and Access -- Management (IAM) role that Amazon S3 assumes when replicating objects. -- For more information, see How to Set Up Cross-Region Replication in -- the Amazon Simple Storage Service Developer Guide. srcRole :: Lens' S3ReplicationConfiguration (Val Text) -- | A replication rule that specifies which objects to replicate and where -- they are stored. srcRules :: Lens' S3ReplicationConfiguration [S3ReplicationConfigurationRule] instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3ReplicationConfiguration.S3ReplicationConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3ReplicationConfiguration.S3ReplicationConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3ReplicationConfiguration.S3ReplicationConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3ReplicationConfiguration.S3ReplicationConfiguration -- | Rules is a property of the Amazon S3 NotificationConfiguration Config -- Filter S3Key property that describes the Amazon Simple Storage Service -- (Amazon S3) object key name to filter on and whether to filter on the -- suffix or prefix of the key name. module Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules -- | Full data type definition for -- S3NotificationConfigurationConfigFilterS3KeyRules. See -- s3NotificationConfigurationConfigFilterS3KeyRules for a more -- convenient constructor. data S3NotificationConfigurationConfigFilterS3KeyRules S3NotificationConfigurationConfigFilterS3KeyRules :: Val Text -> Val Text -> S3NotificationConfigurationConfigFilterS3KeyRules [_s3NotificationConfigurationConfigFilterS3KeyRulesName] :: S3NotificationConfigurationConfigFilterS3KeyRules -> Val Text [_s3NotificationConfigurationConfigFilterS3KeyRulesValue] :: S3NotificationConfigurationConfigFilterS3KeyRules -> Val Text -- | Constructor for -- S3NotificationConfigurationConfigFilterS3KeyRules containing -- required fields as arguments. s3NotificationConfigurationConfigFilterS3KeyRules :: Val Text -> Val Text -> S3NotificationConfigurationConfigFilterS3KeyRules -- | Whether the filter matches the prefix or suffix of object key names. -- For valid values, see the Name request element of the PUT Bucket -- notification action in the Amazon Simple Storage Service API -- Reference. snccfskrName :: Lens' S3NotificationConfigurationConfigFilterS3KeyRules (Val Text) -- | The value that the filter searches for in object key names. snccfskrValue :: Lens' S3NotificationConfigurationConfigFilterS3KeyRules (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules.S3NotificationConfigurationConfigFilterS3KeyRules instance GHC.Show.Show Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules.S3NotificationConfigurationConfigFilterS3KeyRules instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules.S3NotificationConfigurationConfigFilterS3KeyRules instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules.S3NotificationConfigurationConfigFilterS3KeyRules -- | S3Key is a property of the Amazon S3 NotificationConfiguration Config -- Filter property that specifies the key names of Amazon Simple Storage -- Service (Amazon S3) objects for which to send notifications. module Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key -- | Full data type definition for -- S3NotificationConfigurationConfigFilterS3Key. See -- s3NotificationConfigurationConfigFilterS3Key for a more -- convenient constructor. data S3NotificationConfigurationConfigFilterS3Key S3NotificationConfigurationConfigFilterS3Key :: [S3NotificationConfigurationConfigFilterS3KeyRules] -> S3NotificationConfigurationConfigFilterS3Key [_s3NotificationConfigurationConfigFilterS3KeyRules] :: S3NotificationConfigurationConfigFilterS3Key -> [S3NotificationConfigurationConfigFilterS3KeyRules] -- | Constructor for S3NotificationConfigurationConfigFilterS3Key -- containing required fields as arguments. s3NotificationConfigurationConfigFilterS3Key :: [S3NotificationConfigurationConfigFilterS3KeyRules] -> S3NotificationConfigurationConfigFilterS3Key -- | The object key name to filter on and whether to filter on the suffix -- or prefix of the key name. snccfskRules :: Lens' S3NotificationConfigurationConfigFilterS3Key [S3NotificationConfigurationConfigFilterS3KeyRules] instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key.S3NotificationConfigurationConfigFilterS3Key instance GHC.Show.Show Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key.S3NotificationConfigurationConfigFilterS3Key instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key.S3NotificationConfigurationConfigFilterS3Key instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key.S3NotificationConfigurationConfigFilterS3Key -- | Filter is a property of the LambdaConfigurations, QueueConfigurations, -- and TopicConfigurations properties that describes the filtering rules -- that determine the Amazon Simple Storage Service (Amazon S3) objects -- for which to send notifications. module Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter -- | Full data type definition for S3NotificationConfigurationConfigFilter. -- See s3NotificationConfigurationConfigFilter for a more -- convenient constructor. data S3NotificationConfigurationConfigFilter S3NotificationConfigurationConfigFilter :: S3NotificationConfigurationConfigFilterS3Key -> S3NotificationConfigurationConfigFilter [_s3NotificationConfigurationConfigFilterS3Key] :: S3NotificationConfigurationConfigFilter -> S3NotificationConfigurationConfigFilterS3Key -- | Constructor for S3NotificationConfigurationConfigFilter -- containing required fields as arguments. s3NotificationConfigurationConfigFilter :: S3NotificationConfigurationConfigFilterS3Key -> S3NotificationConfigurationConfigFilter -- | Amazon S3 filtering rules that describe for which object key names to -- send notifications. snccfS3Key :: Lens' S3NotificationConfigurationConfigFilter S3NotificationConfigurationConfigFilterS3Key instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter.S3NotificationConfigurationConfigFilter instance GHC.Show.Show Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter.S3NotificationConfigurationConfigFilter instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter.S3NotificationConfigurationConfigFilter instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter.S3NotificationConfigurationConfigFilter -- | LambdaConfigurations is a property of the Amazon S3 -- NotificationConfiguration property that describes the AWS Lambda -- (Lambda) functions to invoke and the events for which to invoke them. module Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration -- | Full data type definition for -- S3NotificationConfigurationLambdaConfiguration. See -- s3NotificationConfigurationLambdaConfiguration for a more -- convenient constructor. data S3NotificationConfigurationLambdaConfiguration S3NotificationConfigurationLambdaConfiguration :: Val Text -> Maybe S3NotificationConfigurationConfigFilter -> Val Text -> S3NotificationConfigurationLambdaConfiguration [_s3NotificationConfigurationLambdaConfigurationEvent] :: S3NotificationConfigurationLambdaConfiguration -> Val Text [_s3NotificationConfigurationLambdaConfigurationFilter] :: S3NotificationConfigurationLambdaConfiguration -> Maybe S3NotificationConfigurationConfigFilter [_s3NotificationConfigurationLambdaConfigurationFunction] :: S3NotificationConfigurationLambdaConfiguration -> Val Text -- | Constructor for S3NotificationConfigurationLambdaConfiguration -- containing required fields as arguments. s3NotificationConfigurationLambdaConfiguration :: Val Text -> Val Text -> S3NotificationConfigurationLambdaConfiguration -- | The S3 bucket event for which to invoke the Lambda function. For more -- information, see Supported Event Types in the Amazon Simple Storage -- Service Developer Guide. snclcEvent :: Lens' S3NotificationConfigurationLambdaConfiguration (Val Text) -- | The filtering rules that determine which objects invoke the Lambda -- function. For example, you can create a filter so that only image -- files with a .jpg extension invoke the function when they are added to -- the S3 bucket. snclcFilter :: Lens' S3NotificationConfigurationLambdaConfiguration (Maybe S3NotificationConfigurationConfigFilter) -- | The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 -- invokes when the specified event type occurs. snclcFunction :: Lens' S3NotificationConfigurationLambdaConfiguration (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration.S3NotificationConfigurationLambdaConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration.S3NotificationConfigurationLambdaConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration.S3NotificationConfigurationLambdaConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration.S3NotificationConfigurationLambdaConfiguration -- | QueueConfigurations is a property of the Amazon S3 -- NotificationConfiguration property that describes the S3 bucket events -- about which you want to send messages to Amazon SQS and the queues to -- which you want to send them. module Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration -- | Full data type definition for -- S3NotificationConfigurationQueueConfiguration. See -- s3NotificationConfigurationQueueConfiguration for a more -- convenient constructor. data S3NotificationConfigurationQueueConfiguration S3NotificationConfigurationQueueConfiguration :: Val Text -> Maybe S3NotificationConfigurationConfigFilter -> Val Text -> S3NotificationConfigurationQueueConfiguration [_s3NotificationConfigurationQueueConfigurationEvent] :: S3NotificationConfigurationQueueConfiguration -> Val Text [_s3NotificationConfigurationQueueConfigurationFilter] :: S3NotificationConfigurationQueueConfiguration -> Maybe S3NotificationConfigurationConfigFilter [_s3NotificationConfigurationQueueConfigurationQueue] :: S3NotificationConfigurationQueueConfiguration -> Val Text -- | Constructor for S3NotificationConfigurationQueueConfiguration -- containing required fields as arguments. s3NotificationConfigurationQueueConfiguration :: Val Text -> Val Text -> S3NotificationConfigurationQueueConfiguration -- | The S3 bucket event about which you want to publish messages to Amazon -- Simple Queue Service ( Amazon SQS). For more information, see -- Supported Event Types in the Amazon Simple Storage Service Developer -- Guide. sncqcEvent :: Lens' S3NotificationConfigurationQueueConfiguration (Val Text) -- | The filtering rules that determine for which objects to send -- notifications. For example, you can create a filter so that Amazon -- Simple Storage Service (Amazon S3) sends notifications only when image -- files with a .jpg extension are added to the bucket. sncqcFilter :: Lens' S3NotificationConfigurationQueueConfiguration (Maybe S3NotificationConfigurationConfigFilter) -- | The Amazon Resource Name (ARN) of the Amazon SQS queue that Amazon S3 -- publishes messages to when the specified event type occurs. sncqcQueue :: Lens' S3NotificationConfigurationQueueConfiguration (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration.S3NotificationConfigurationQueueConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration.S3NotificationConfigurationQueueConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration.S3NotificationConfigurationQueueConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration.S3NotificationConfigurationQueueConfiguration -- | Describes the topic and events for the Amazon S3 -- NotificationConfiguration property. module Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration -- | Full data type definition for -- S3NotificationConfigurationTopicConfiguration. See -- s3NotificationConfigurationTopicConfiguration for a more -- convenient constructor. data S3NotificationConfigurationTopicConfiguration S3NotificationConfigurationTopicConfiguration :: Val Text -> Maybe S3NotificationConfigurationConfigFilter -> Val Text -> S3NotificationConfigurationTopicConfiguration [_s3NotificationConfigurationTopicConfigurationEvent] :: S3NotificationConfigurationTopicConfiguration -> Val Text [_s3NotificationConfigurationTopicConfigurationFilter] :: S3NotificationConfigurationTopicConfiguration -> Maybe S3NotificationConfigurationConfigFilter [_s3NotificationConfigurationTopicConfigurationTopic] :: S3NotificationConfigurationTopicConfiguration -> Val Text -- | Constructor for S3NotificationConfigurationTopicConfiguration -- containing required fields as arguments. s3NotificationConfigurationTopicConfiguration :: Val Text -> Val Text -> S3NotificationConfigurationTopicConfiguration -- | The Amazon Simple Storage Service (Amazon S3) bucket event about which -- to send notifications. For more information, see Supported Event Types -- in the Amazon Simple Storage Service Developer Guide. snctcEvent :: Lens' S3NotificationConfigurationTopicConfiguration (Val Text) -- | The filtering rules that determine for which objects to send -- notifications. For example, you can create a filter so that Amazon -- Simple Storage Service (Amazon S3) sends notifications only when image -- files with a .jpg extension are added to the bucket. snctcFilter :: Lens' S3NotificationConfigurationTopicConfiguration (Maybe S3NotificationConfigurationConfigFilter) -- | The Amazon SNS topic Amazon Resource Name (ARN) to which Amazon S3 -- reports the specified events. snctcTopic :: Lens' S3NotificationConfigurationTopicConfiguration (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration.S3NotificationConfigurationTopicConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration.S3NotificationConfigurationTopicConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration.S3NotificationConfigurationTopicConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration.S3NotificationConfigurationTopicConfiguration -- | Describes the notification configuration for an AWS::S3::Bucket -- resource. module Stratosphere.ResourceProperties.S3NotificationConfiguration -- | Full data type definition for S3NotificationConfiguration. See -- s3NotificationConfiguration for a more convenient constructor. data S3NotificationConfiguration S3NotificationConfiguration :: Maybe [S3NotificationConfigurationLambdaConfiguration] -> Maybe [S3NotificationConfigurationQueueConfiguration] -> Maybe [S3NotificationConfigurationTopicConfiguration] -> S3NotificationConfiguration [_s3NotificationConfigurationLambdaConfigurations] :: S3NotificationConfiguration -> Maybe [S3NotificationConfigurationLambdaConfiguration] [_s3NotificationConfigurationQueueConfigurations] :: S3NotificationConfiguration -> Maybe [S3NotificationConfigurationQueueConfiguration] [_s3NotificationConfigurationTopicConfigurations] :: S3NotificationConfiguration -> Maybe [S3NotificationConfigurationTopicConfiguration] -- | Constructor for S3NotificationConfiguration containing required -- fields as arguments. s3NotificationConfiguration :: S3NotificationConfiguration -- | The AWS Lambda functions to invoke and the events for which to invoke -- the functions. sncLambdaConfigurations :: Lens' S3NotificationConfiguration (Maybe [S3NotificationConfigurationLambdaConfiguration]) -- | The Amazon Simple Queue Service queues to publish messages to and the -- events for which to publish messages. sncQueueConfigurations :: Lens' S3NotificationConfiguration (Maybe [S3NotificationConfigurationQueueConfiguration]) -- | The topic to which notifications are sent and the events for which -- notification are generated. sncTopicConfigurations :: Lens' S3NotificationConfiguration (Maybe [S3NotificationConfigurationTopicConfiguration]) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3NotificationConfiguration.S3NotificationConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3NotificationConfiguration.S3NotificationConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3NotificationConfiguration.S3NotificationConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3NotificationConfiguration.S3NotificationConfiguration -- | Describes where logs are stored and the prefix that Amazon S3 assigns -- to all log object keys for an AWS::S3::Bucket resource. These logs -- track requests to an Amazon S3 bucket. For more information, see PUT -- Bucket logging in the Amazon Simple Storage Service API Reference. module Stratosphere.ResourceProperties.S3LoggingConfiguration -- | Full data type definition for S3LoggingConfiguration. See -- s3LoggingConfiguration for a more convenient constructor. data S3LoggingConfiguration S3LoggingConfiguration :: Maybe (Val Text) -> Maybe (Val Text) -> S3LoggingConfiguration [_s3LoggingConfigurationDestinationBucketName] :: S3LoggingConfiguration -> Maybe (Val Text) [_s3LoggingConfigurationLogFilePrefix] :: S3LoggingConfiguration -> Maybe (Val Text) -- | Constructor for S3LoggingConfiguration containing required -- fields as arguments. s3LoggingConfiguration :: S3LoggingConfiguration -- | The name of an Amazon S3 bucket where Amazon S3 store server access -- log files. You can store log files in any bucket that you own. By -- default, logs are stored in the bucket where the LoggingConfiguration -- property is defined. slcDestinationBucketName :: Lens' S3LoggingConfiguration (Maybe (Val Text)) -- | A prefix for the all log object keys. If you store log files from -- multiple Amazon S3 buckets in a single bucket, you can use a prefix to -- distinguish which log files came from which bucket. slcLogFilePrefix :: Lens' S3LoggingConfiguration (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3LoggingConfiguration.S3LoggingConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3LoggingConfiguration.S3LoggingConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3LoggingConfiguration.S3LoggingConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3LoggingConfiguration.S3LoggingConfiguration -- | Describes when an object transitions to a specified storage class for -- the Amazon S3 Lifecycle Rule property. module Stratosphere.ResourceProperties.S3LifecycleRuleTransition -- | Full data type definition for S3LifecycleRuleTransition. See -- s3LifecycleRuleTransition for a more convenient constructor. data S3LifecycleRuleTransition S3LifecycleRuleTransition :: Val Text -> Maybe (Val Text) -> Maybe (Val Integer') -> S3LifecycleRuleTransition [_s3LifecycleRuleTransitionStorageClass] :: S3LifecycleRuleTransition -> Val Text [_s3LifecycleRuleTransitionTransitionDate] :: S3LifecycleRuleTransition -> Maybe (Val Text) [_s3LifecycleRuleTransitionTransitionInDays] :: S3LifecycleRuleTransition -> Maybe (Val Integer') -- | Constructor for S3LifecycleRuleTransition containing required -- fields as arguments. s3LifecycleRuleTransition :: Val Text -> S3LifecycleRuleTransition -- | The storage class to which you want the object to transition, such as -- GLACIER. For valid values, see the StorageClass request element of the -- PUT Bucket lifecycle action in the Amazon Simple Storage Service API -- Reference. slrtStorageClass :: Lens' S3LifecycleRuleTransition (Val Text) -- | Indicates when objects are transitioned to the specified storage -- class. The date value must be in ISO 8601 format. The time is always -- midnight UTC. slrtTransitionDate :: Lens' S3LifecycleRuleTransition (Maybe (Val Text)) -- | Indicates the number of days after creation when objects are -- transitioned to the specified storage class. slrtTransitionInDays :: Lens' S3LifecycleRuleTransition (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3LifecycleRuleTransition.S3LifecycleRuleTransition instance GHC.Show.Show Stratosphere.ResourceProperties.S3LifecycleRuleTransition.S3LifecycleRuleTransition instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3LifecycleRuleTransition.S3LifecycleRuleTransition instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3LifecycleRuleTransition.S3LifecycleRuleTransition -- | NoncurrentVersionTransition is a property of the Amazon S3 Lifecycle -- Rule property that describes when noncurrent objects transition to a -- specified storage class. module Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition -- | Full data type definition for -- S3LifecycleRuleNoncurrentVersionTransition. See -- s3LifecycleRuleNoncurrentVersionTransition for a more -- convenient constructor. data S3LifecycleRuleNoncurrentVersionTransition S3LifecycleRuleNoncurrentVersionTransition :: Val Text -> Val Integer' -> S3LifecycleRuleNoncurrentVersionTransition [_s3LifecycleRuleNoncurrentVersionTransitionStorageClass] :: S3LifecycleRuleNoncurrentVersionTransition -> Val Text [_s3LifecycleRuleNoncurrentVersionTransitionTransitionInDays] :: S3LifecycleRuleNoncurrentVersionTransition -> Val Integer' -- | Constructor for S3LifecycleRuleNoncurrentVersionTransition -- containing required fields as arguments. s3LifecycleRuleNoncurrentVersionTransition :: Val Text -> Val Integer' -> S3LifecycleRuleNoncurrentVersionTransition -- | The storage class to which you want the object to transition, such as -- GLACIER. For valid values, see the StorageClass request element of the -- PUT Bucket lifecycle action in the Amazon Simple Storage Service API -- Reference. slrnvtStorageClass :: Lens' S3LifecycleRuleNoncurrentVersionTransition (Val Text) -- | The number of days between the time that a new version of the object -- is uploaded to the bucket and when old versions of the object are -- transitioned to the specified storage class. slrnvtTransitionInDays :: Lens' S3LifecycleRuleNoncurrentVersionTransition (Val Integer') instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition.S3LifecycleRuleNoncurrentVersionTransition instance GHC.Show.Show Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition.S3LifecycleRuleNoncurrentVersionTransition instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition.S3LifecycleRuleNoncurrentVersionTransition instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition.S3LifecycleRuleNoncurrentVersionTransition -- | Describes lifecycle rules for the Amazon S3 Lifecycle Configuration -- property. module Stratosphere.ResourceProperties.S3LifecycleRule -- | Full data type definition for S3LifecycleRule. See -- s3LifecycleRule for a more convenient constructor. data S3LifecycleRule S3LifecycleRule :: Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe S3LifecycleRuleNoncurrentVersionTransition -> Maybe [S3LifecycleRuleNoncurrentVersionTransition] -> Maybe (Val Text) -> Val Text -> Maybe S3LifecycleRuleTransition -> Maybe [S3LifecycleRuleTransition] -> S3LifecycleRule [_s3LifecycleRuleExpirationDate] :: S3LifecycleRule -> Maybe (Val Text) [_s3LifecycleRuleExpirationInDays] :: S3LifecycleRule -> Maybe (Val Integer') [_s3LifecycleRuleId] :: S3LifecycleRule -> Maybe (Val Text) [_s3LifecycleRuleNoncurrentVersionExpirationInDays] :: S3LifecycleRule -> Maybe (Val Integer') [_s3LifecycleRuleNoncurrentVersionTransition] :: S3LifecycleRule -> Maybe S3LifecycleRuleNoncurrentVersionTransition [_s3LifecycleRuleNoncurrentVersionTransitions] :: S3LifecycleRule -> Maybe [S3LifecycleRuleNoncurrentVersionTransition] [_s3LifecycleRulePrefix] :: S3LifecycleRule -> Maybe (Val Text) [_s3LifecycleRuleStatus] :: S3LifecycleRule -> Val Text [_s3LifecycleRuleTransition] :: S3LifecycleRule -> Maybe S3LifecycleRuleTransition [_s3LifecycleRuleTransitions] :: S3LifecycleRule -> Maybe [S3LifecycleRuleTransition] -- | Constructor for S3LifecycleRule containing required fields as -- arguments. s3LifecycleRule :: Val Text -> S3LifecycleRule -- | Indicates when objects are deleted from Amazon S3 and Amazon Glacier. -- The date value must be in ISO 8601 format. The time is always midnight -- UTC. If you specify an expiration and transition time, you must use -- the same time unit for both properties (either in days or by date). -- The expiration time must also be later than the transition time. slrExpirationDate :: Lens' S3LifecycleRule (Maybe (Val Text)) -- | Indicates the number of days after creation when objects are deleted -- from Amazon S3 and Amazon Glacier. If you specify an expiration and -- transition time, you must use the same time unit for both properties -- (either in days or by date). The expiration time must also be later -- than the transition time. slrExpirationInDays :: Lens' S3LifecycleRule (Maybe (Val Integer')) -- | A unique identifier for this rule. The value cannot be more than 255 -- characters. slrId :: Lens' S3LifecycleRule (Maybe (Val Text)) -- | For buckets with versioning enabled (or suspended), specifies the -- time, in days, between when a new version of the object is uploaded to -- the bucket and when old versions of the object expire. When object -- versions expire, Amazon S3 permanently deletes them. If you specify a -- transition and expiration time, the expiration time must be later than -- the transition time. slrNoncurrentVersionExpirationInDays :: Lens' S3LifecycleRule (Maybe (Val Integer')) -- | For buckets with versioning enabled (or suspended), specifies when -- non-current objects transition to a specified storage class. If you -- specify a transition and expiration time, the expiration time must be -- later than the transition time. If you specify this property, don't -- specify the NoncurrentVersionTransitions property. slrNoncurrentVersionTransition :: Lens' S3LifecycleRule (Maybe S3LifecycleRuleNoncurrentVersionTransition) -- | For buckets with versioning enabled (or suspended), one or more -- transition rules that specify when non-current objects transition to a -- specified storage class. If you specify a transition and expiration -- time, the expiration time must be later than the transition time. If -- you specify this property, don't specify the -- NoncurrentVersionTransition property. slrNoncurrentVersionTransitions :: Lens' S3LifecycleRule (Maybe [S3LifecycleRuleNoncurrentVersionTransition]) -- | Object key prefix that identifies one or more objects to which this -- rule applies. slrPrefix :: Lens' S3LifecycleRule (Maybe (Val Text)) -- | Specify either Enabled or Disabled. If you specify Enabled, Amazon S3 -- executes this rule as scheduled. If you specify Disabled, Amazon S3 -- ignores this rule. slrStatus :: Lens' S3LifecycleRule (Val Text) -- | Specifies when an object transitions to a specified storage class. If -- you specify an expiration and transition time, you must use the same -- time unit for both properties (either in days or by date). The -- expiration time must also be later than the transition time. If you -- specify this property, don't specify the Transitions property. slrTransition :: Lens' S3LifecycleRule (Maybe S3LifecycleRuleTransition) -- | One or more transition rules that specify when an object transitions -- to a specified storage class. If you specify an expiration and -- transition time, you must use the same time unit for both properties -- (either in days or by date). The expiration time must also be later -- than the transition time. If you specify this property, don't specify -- the Transition property. slrTransitions :: Lens' S3LifecycleRule (Maybe [S3LifecycleRuleTransition]) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3LifecycleRule.S3LifecycleRule instance GHC.Show.Show Stratosphere.ResourceProperties.S3LifecycleRule.S3LifecycleRule instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3LifecycleRule.S3LifecycleRule instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3LifecycleRule.S3LifecycleRule -- | Describes the lifecycle configuration for objects in an -- AWS::S3::Bucket resource. module Stratosphere.ResourceProperties.S3LifecycleConfiguration -- | Full data type definition for S3LifecycleConfiguration. See -- s3LifecycleConfiguration for a more convenient constructor. data S3LifecycleConfiguration S3LifecycleConfiguration :: [S3LifecycleRule] -> S3LifecycleConfiguration [_s3LifecycleConfigurationRules] :: S3LifecycleConfiguration -> [S3LifecycleRule] -- | Constructor for S3LifecycleConfiguration containing required -- fields as arguments. s3LifecycleConfiguration :: [S3LifecycleRule] -> S3LifecycleConfiguration -- | A lifecycle rule for individual objects in an S3 bucket. slcRules :: Lens' S3LifecycleConfiguration [S3LifecycleRule] instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3LifecycleConfiguration.S3LifecycleConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3LifecycleConfiguration.S3LifecycleConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3LifecycleConfiguration.S3LifecycleConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3LifecycleConfiguration.S3LifecycleConfiguration -- | Describes cross-origin access rules for the Amazon S3 Cors -- Configuration property. module Stratosphere.ResourceProperties.S3CorsConfigurationRule -- | Full data type definition for S3CorsConfigurationRule. See -- s3CorsConfigurationRule for a more convenient constructor. data S3CorsConfigurationRule S3CorsConfigurationRule :: Maybe [Val Text] -> [Val Text] -> [Val Text] -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Integer') -> S3CorsConfigurationRule [_s3CorsConfigurationRuleAllowedHeaders] :: S3CorsConfigurationRule -> Maybe [Val Text] [_s3CorsConfigurationRuleAllowedMethods] :: S3CorsConfigurationRule -> [Val Text] [_s3CorsConfigurationRuleAllowedOrigins] :: S3CorsConfigurationRule -> [Val Text] [_s3CorsConfigurationRuleExposedHeaders] :: S3CorsConfigurationRule -> Maybe [Val Text] [_s3CorsConfigurationRuleId] :: S3CorsConfigurationRule -> Maybe (Val Text) [_s3CorsConfigurationRuleMaxAge] :: S3CorsConfigurationRule -> Maybe (Val Integer') -- | Constructor for S3CorsConfigurationRule containing required -- fields as arguments. s3CorsConfigurationRule :: [Val Text] -> [Val Text] -> S3CorsConfigurationRule -- | Headers that are specified in the Access-Control-Request-Headers -- header. These headers are allowed in a preflight OPTIONS request. In -- response to any preflight OPTIONS request, Amazon S3 returns any -- requested headers that are allowed. sccrAllowedHeaders :: Lens' S3CorsConfigurationRule (Maybe [Val Text]) -- | An HTTP method that you allow the origin to execute. The valid values -- are GET, PUT, HEAD, POST, and DELETE. sccrAllowedMethods :: Lens' S3CorsConfigurationRule [Val Text] -- | An origin that you allow to send cross-domain requests. sccrAllowedOrigins :: Lens' S3CorsConfigurationRule [Val Text] -- | One or more headers in the response that are accessible to client -- applications (for example, from a JavaScript XMLHttpRequest object). sccrExposedHeaders :: Lens' S3CorsConfigurationRule (Maybe [Val Text]) -- | A unique identifier for this rule. The value cannot be more than 255 -- characters. sccrId :: Lens' S3CorsConfigurationRule (Maybe (Val Text)) -- | The time in seconds that your browser is to cache the preflight -- response for the specified resource. sccrMaxAge :: Lens' S3CorsConfigurationRule (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3CorsConfigurationRule.S3CorsConfigurationRule instance GHC.Show.Show Stratosphere.ResourceProperties.S3CorsConfigurationRule.S3CorsConfigurationRule instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3CorsConfigurationRule.S3CorsConfigurationRule instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3CorsConfigurationRule.S3CorsConfigurationRule -- | Describes the cross-origin access configuration for objects in an -- AWS::S3::Bucket resource. module Stratosphere.ResourceProperties.S3CorsConfiguration -- | Full data type definition for S3CorsConfiguration. See -- s3CorsConfiguration for a more convenient constructor. data S3CorsConfiguration S3CorsConfiguration :: [S3CorsConfigurationRule] -> S3CorsConfiguration [_s3CorsConfigurationCorsRules] :: S3CorsConfiguration -> [S3CorsConfigurationRule] -- | Constructor for S3CorsConfiguration containing required fields -- as arguments. s3CorsConfiguration :: [S3CorsConfigurationRule] -> S3CorsConfiguration -- | A set of origins and methods that you allow. sccCorsRules :: Lens' S3CorsConfiguration [S3CorsConfigurationRule] instance GHC.Generics.Generic Stratosphere.ResourceProperties.S3CorsConfiguration.S3CorsConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.S3CorsConfiguration.S3CorsConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.S3CorsConfiguration.S3CorsConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.S3CorsConfiguration.S3CorsConfiguration -- | You can use the AWS CloudFormation Resource Tags property to apply -- tags to resources, which can help you identify and categorize those -- resources. You can tag only resources for which AWS CloudFormation -- supports tagging. For information about which resources you can tag -- with AWS CloudFormation, see the individual resources in AWS Resource -- Types Reference. In addition to any tags you define, AWS -- CloudFormation automatically creates the following stack-level tags -- with the prefix aws:: All stack-level tags, including automatically -- created tags, are propagated to resources that AWS CloudFormation -- supports. Currently, tags are not propagated to Amazon EBS volumes -- that are created from block device mappings. module Stratosphere.ResourceProperties.ResourceTag -- | Full data type definition for ResourceTag. See resourceTag for -- a more convenient constructor. data ResourceTag ResourceTag :: Val Text -> Val Text -> ResourceTag [_resourceTagKey] :: ResourceTag -> Val Text [_resourceTagValue] :: ResourceTag -> Val Text -- | Constructor for ResourceTag containing required fields as -- arguments. resourceTag :: Val Text -> Val Text -> ResourceTag -- | The key name of the tag. You can specify a value that is 1 to 128 -- Unicode characters in length and cannot be prefixed with aws:. You can -- use any of the following characters: the set of Unicode letters, -- digits, whitespace, _, ., /, =, +, and -. rtKey :: Lens' ResourceTag (Val Text) -- | The value for the tag. You can specify a value that is 1 to 128 -- Unicode characters in length and cannot be prefixed with aws:. You can -- use any of the following characters: the set of Unicode letters, -- digits, whitespace, _, ., /, =, +, and -. rtValue :: Lens' ResourceTag (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ResourceTag.ResourceTag instance GHC.Show.Show Stratosphere.ResourceProperties.ResourceTag.ResourceTag instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ResourceTag.ResourceTag instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ResourceTag.ResourceTag -- | The AWS::S3::Bucket type creates an Amazon S3 bucket. You can set a -- deletion policy for your bucket to control how AWS CloudFormation -- handles the bucket when the stack is deleted. For Amazon S3 buckets, -- you can choose to retain the bucket or to delete the bucket. For more -- information, see DeletionPolicy Attribute. module Stratosphere.Resources.Bucket -- | Full data type definition for Bucket. See bucket for a more -- convenient constructor. data Bucket Bucket :: Maybe CannedACL -> Maybe (Val Text) -> Maybe S3CorsConfiguration -> Maybe S3LifecycleConfiguration -> Maybe S3LoggingConfiguration -> Maybe S3NotificationConfiguration -> Maybe S3ReplicationConfiguration -> Maybe [ResourceTag] -> Maybe S3VersioningConfiguration -> Maybe S3WebsiteConfiguration -> Bucket [_bucketAccessControl] :: Bucket -> Maybe CannedACL [_bucketBucketName] :: Bucket -> Maybe (Val Text) [_bucketCorsConfiguration] :: Bucket -> Maybe S3CorsConfiguration [_bucketLifecycleConfiguration] :: Bucket -> Maybe S3LifecycleConfiguration [_bucketLoggingConfiguration] :: Bucket -> Maybe S3LoggingConfiguration [_bucketNotificationConfiguration] :: Bucket -> Maybe S3NotificationConfiguration [_bucketReplicationConfiguration] :: Bucket -> Maybe S3ReplicationConfiguration [_bucketTags] :: Bucket -> Maybe [ResourceTag] [_bucketVersioningConfiguration] :: Bucket -> Maybe S3VersioningConfiguration [_bucketWebsiteConfiguration] :: Bucket -> Maybe S3WebsiteConfiguration -- | Constructor for Bucket containing required fields as arguments. bucket :: Bucket -- | A canned access control list (ACL) that grants predefined permissions -- to the bucket. For more information about canned ACLs, see Canned ACLs -- in the Amazon S3 documentation. bAccessControl :: Lens' Bucket (Maybe CannedACL) -- | A name for the bucket. If you don't specify a name, AWS CloudFormation -- generates a unique physical ID and uses that ID for the bucket name. -- For more information, see Name Type. The bucket name must contain only -- lowercase letters, numbers, periods (.), and dashes (-). Important If -- you specify a name, you cannot do updates that require this resource -- to be replaced. You can still do updates that require no or some -- interruption. If you must replace the resource, specify a new name. bBucketName :: Lens' Bucket (Maybe (Val Text)) -- | Rules that define cross-origin resource sharing of objects in this -- bucket. For more information, see Enabling Cross-Origin Resource -- Sharing in the Amazon Simple Storage Service Developer Guide. bCorsConfiguration :: Lens' Bucket (Maybe S3CorsConfiguration) -- | Rules that define how Amazon S3 manages objects during their lifetime. -- For more information, see Object Lifecycle Management in the Amazon -- Simple Storage Service Developer Guide. bLifecycleConfiguration :: Lens' Bucket (Maybe S3LifecycleConfiguration) -- | Settings that defines where logs are stored. bLoggingConfiguration :: Lens' Bucket (Maybe S3LoggingConfiguration) -- | Configuration that defines how Amazon S3 handles bucket notifications. bNotificationConfiguration :: Lens' Bucket (Maybe S3NotificationConfiguration) -- | Configuration for replicating objects in an S3 bucket. To enable -- replication, you must also enable versioning by using the -- VersioningConfiguration property. Amazon S3 can store replicated -- objects in only one destination (S3 bucket). You cannot send -- replicated objects to multiple S3 buckets. bReplicationConfiguration :: Lens' Bucket (Maybe S3ReplicationConfiguration) -- | An arbitrary set of tags (key-value pairs) for this Amazon S3 bucket. bTags :: Lens' Bucket (Maybe [ResourceTag]) -- | Enables multiple variants of all objects in this bucket. You might -- enable versioning to prevent objects from being deleted or overwritten -- by mistake or to archive objects so that you can retrieve previous -- versions of them. bVersioningConfiguration :: Lens' Bucket (Maybe S3VersioningConfiguration) -- | Information used to configure the bucket as a static website. For more -- information, see Hosting Websites on Amazon S3. bWebsiteConfiguration :: Lens' Bucket (Maybe S3WebsiteConfiguration) instance GHC.Generics.Generic Stratosphere.Resources.Bucket.Bucket instance GHC.Show.Show Stratosphere.Resources.Bucket.Bucket instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Bucket.Bucket instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Bucket.Bucket -- | The AWS::ElastiCache::CacheCluster type creates an Amazon ElastiCache -- cache cluster. module Stratosphere.Resources.CacheCluster -- | Full data type definition for CacheCluster. See cacheCluster -- for a more convenient constructor. data CacheCluster CacheCluster :: Maybe (Val Bool') -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Val Integer' -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe [ResourceTag] -> Maybe [Val Text] -> CacheCluster [_cacheClusterAutoMinorVersionUpgrade] :: CacheCluster -> Maybe (Val Bool') [_cacheClusterAZMode] :: CacheCluster -> Maybe (Val Text) [_cacheClusterCacheNodeType] :: CacheCluster -> Val Text [_cacheClusterCacheParameterGroupName] :: CacheCluster -> Maybe (Val Text) [_cacheClusterCacheSecurityGroupNames] :: CacheCluster -> Maybe [Val Text] [_cacheClusterCacheSubnetGroupName] :: CacheCluster -> Maybe (Val Text) [_cacheClusterClusterName] :: CacheCluster -> Maybe (Val Text) [_cacheClusterEngine] :: CacheCluster -> Val Text [_cacheClusterEngineVersion] :: CacheCluster -> Maybe (Val Text) [_cacheClusterNotificationTopicArn] :: CacheCluster -> Maybe (Val Text) [_cacheClusterNumCacheNodes] :: CacheCluster -> Val Integer' [_cacheClusterPort] :: CacheCluster -> Maybe (Val Integer') [_cacheClusterPreferredAvailabilityZone] :: CacheCluster -> Maybe (Val Text) [_cacheClusterPreferredAvailabilityZones] :: CacheCluster -> Maybe [Val Text] [_cacheClusterPreferredMaintenanceWindow] :: CacheCluster -> Maybe (Val Text) [_cacheClusterSnapshotArns] :: CacheCluster -> Maybe [Val Text] [_cacheClusterSnapshotName] :: CacheCluster -> Maybe (Val Text) [_cacheClusterSnapshotRetentionLimit] :: CacheCluster -> Maybe (Val Integer') [_cacheClusterSnapshotWindow] :: CacheCluster -> Maybe (Val Text) [_cacheClusterTags] :: CacheCluster -> Maybe [ResourceTag] [_cacheClusterVpcSecurityGroupIds] :: CacheCluster -> Maybe [Val Text] -- | Constructor for CacheCluster containing required fields as -- arguments. cacheCluster :: Val Text -> Val Text -> Val Integer' -> CacheCluster -- | Indicates that minor engine upgrades will be applied automatically to -- the cache cluster during the maintenance window. ccAutoMinorVersionUpgrade :: Lens' CacheCluster (Maybe (Val Bool')) -- | For Memcached cache clusters, indicates whether the nodes are created -- in a single Availability Zone or across multiple Availability Zones in -- the cluster's region. For valid values, see CreateCacheCluster in the -- Amazon ElastiCache API Reference. ccAZMode :: Lens' CacheCluster (Maybe (Val Text)) -- | The compute and memory capacity of nodes in a cache cluster. ccCacheNodeType :: Lens' CacheCluster (Val Text) -- | The name of the cache parameter group that is associated with this -- cache cluster. ccCacheParameterGroupName :: Lens' CacheCluster (Maybe (Val Text)) -- | A list of cache security group names that are associated with this -- cache cluster. If your cache cluster is in a VPC, specify the -- VpcSecurityGroupIds property instead. ccCacheSecurityGroupNames :: Lens' CacheCluster (Maybe [Val Text]) -- | The cache subnet group that you associate with a cache cluster. ccCacheSubnetGroupName :: Lens' CacheCluster (Maybe (Val Text)) -- | A name for the cache cluster. If you don't specify a name, AWS -- CloudFormation generates a unique physical ID and uses that ID for the -- cache cluster. For more information, see Name Type. Important If you -- specify a name, you cannot do updates that require this resource to be -- replaced. You can still do updates that require no or some -- interruption. If you must replace the resource, specify a new name. -- The name must contain 1 to 20 alphanumeric characters or hyphens. The -- name must start with a letter and cannot end with a hyphen or contain -- two consecutive hyphens. ccClusterName :: Lens' CacheCluster (Maybe (Val Text)) -- | The name of the cache engine to be used for this cache cluster, such -- as memcached or redis. ccEngine :: Lens' CacheCluster (Val Text) -- | The version of the cache engine to be used for this cluster. ccEngineVersion :: Lens' CacheCluster (Maybe (Val Text)) -- | The Amazon Resource Name (ARN) of the Amazon Simple Notification -- Service (SNS) topic to which notifications will be sent. ccNotificationTopicArn :: Lens' CacheCluster (Maybe (Val Text)) -- | The number of cache nodes that the cache cluster should have. ccNumCacheNodes :: Lens' CacheCluster (Val Integer') -- | The port number on which each of the cache nodes will accept -- connections. ccPort :: Lens' CacheCluster (Maybe (Val Integer')) -- | The Amazon EC2 Availability Zone in which the cache cluster is -- created. ccPreferredAvailabilityZone :: Lens' CacheCluster (Maybe (Val Text)) -- | For Memcached cache clusters, the list of Availability Zones in which -- cache nodes are created. The number of Availability Zones listed must -- equal the number of cache nodes. For example, if you want to create -- three nodes in two different Availability Zones, you can specify -- ["us-east-1a", "us-east-1a", "us-east-1b"], which would create two -- nodes in us-east-1a and one node in us-east-1b. If you specify a -- subnet group and you're creating your cache cluster in a VPC, you must -- specify Availability Zones that are associated with the subnets in the -- subnet group that you've chosen. If you want all the nodes in the same -- Availability Zone, use the PreferredAvailabilityZone property or -- repeat the Availability Zone multiple times in the list. ccPreferredAvailabilityZones :: Lens' CacheCluster (Maybe [Val Text]) -- | The weekly time range (in UTC) during which system maintenance can -- occur. ccPreferredMaintenanceWindow :: Lens' CacheCluster (Maybe (Val Text)) -- | The ARN of the snapshot file that you want to use to seed a new Redis -- cache cluster. If you manage a Redis instance outside of Amazon -- ElastiCache, you can create a new cache cluster in ElastiCache by -- using a snapshot file that is stored in an Amazon S3 bucket. ccSnapshotArns :: Lens' CacheCluster (Maybe [Val Text]) -- | The name of a snapshot from which to restore data into a new Redis -- cache cluster. ccSnapshotName :: Lens' CacheCluster (Maybe (Val Text)) -- | For Redis cache clusters, the number of days for which ElastiCache -- retains automatic snapshots before deleting them. For example, if you -- set the value to 5, a snapshot that was taken today will be retained -- for 5 days before being deleted. ccSnapshotRetentionLimit :: Lens' CacheCluster (Maybe (Val Integer')) -- | For Redis cache clusters, the daily time range (in UTC) during which -- ElastiCache will begin taking a daily snapshot of your node group. For -- example, you can specify 05:00-09:00. ccSnapshotWindow :: Lens' CacheCluster (Maybe (Val Text)) -- | An arbitrary set of tags (key–value pairs) for this cache cluster. ccTags :: Lens' CacheCluster (Maybe [ResourceTag]) -- | A list of VPC security group IDs. If your cache cluster isn't in a -- VPC, specify the CacheSecurityGroupNames property instead. Note You -- must use the AWS::EC2::SecurityGroup resource instead of the -- AWS::ElastiCache::SecurityGroup resource in order to specify an -- ElastiCache security group that is in a VPC. In addition, if you use -- the default VPC for your AWS account, you must use the Fn::GetAtt -- function and the GroupId attribute to retrieve security group IDs -- (instead of the Ref function). To see a sample template, see the -- Template Snippet section. ccVpcSecurityGroupIds :: Lens' CacheCluster (Maybe [Val Text]) instance GHC.Generics.Generic Stratosphere.Resources.CacheCluster.CacheCluster instance GHC.Show.Show Stratosphere.Resources.CacheCluster.CacheCluster instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.CacheCluster.CacheCluster instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.CacheCluster.CacheCluster -- | The AWS::RDS::DBInstance type creates an Amazon RDS database instance. -- For detailed information about configuring RDS DB instances, see -- CreateDBInstance. module Stratosphere.Resources.DBInstance -- | Full data type definition for DBInstance. See dbInstance for a -- more convenient constructor. data DBInstance DBInstance :: Maybe (Val Text) -> Maybe (Val Bool') -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe [ResourceTag] -> Maybe [Val Text] -> DBInstance [_dBInstanceAllocatedStorage] :: DBInstance -> Maybe (Val Text) [_dBInstanceAllowMajorVersionUpgrade] :: DBInstance -> Maybe (Val Bool') [_dBInstanceAutoMinorVersionUpgrade] :: DBInstance -> Maybe (Val Bool') [_dBInstanceAvailabilityZone] :: DBInstance -> Maybe (Val Text) [_dBInstanceBackupRetentionPeriod] :: DBInstance -> Maybe (Val Text) [_dBInstanceCharacterSetName] :: DBInstance -> Maybe (Val Text) [_dBInstanceDBClusterIdentifier] :: DBInstance -> Maybe (Val Text) [_dBInstanceDBInstanceClass] :: DBInstance -> Val Text [_dBInstanceDBInstanceIdentifier] :: DBInstance -> Maybe (Val Text) [_dBInstanceDBName] :: DBInstance -> Maybe (Val Text) [_dBInstanceDBParameterGroupName] :: DBInstance -> Maybe (Val Text) [_dBInstanceDBSecurityGroups] :: DBInstance -> Maybe [Val Text] [_dBInstanceDBSnapshotIdentifier] :: DBInstance -> Maybe (Val Text) [_dBInstanceDBSubnetGroupName] :: DBInstance -> Maybe (Val Text) [_dBInstanceEngine] :: DBInstance -> Maybe (Val Text) [_dBInstanceEngineVersion] :: DBInstance -> Maybe (Val Text) [_dBInstanceIops] :: DBInstance -> Maybe (Val Integer') [_dBInstanceKmsKeyId] :: DBInstance -> Maybe (Val Text) [_dBInstanceLicenseModel] :: DBInstance -> Maybe (Val Text) [_dBInstanceMasterUsername] :: DBInstance -> Maybe (Val Text) [_dBInstanceMasterUserPassword] :: DBInstance -> Maybe (Val Text) [_dBInstanceMultiAZ] :: DBInstance -> Maybe (Val Bool') [_dBInstanceOptionGroupName] :: DBInstance -> Maybe (Val Text) [_dBInstancePort] :: DBInstance -> Maybe (Val Text) [_dBInstancePreferredBackupWindow] :: DBInstance -> Maybe (Val Text) [_dBInstancePreferredMaintenanceWindow] :: DBInstance -> Maybe (Val Text) [_dBInstancePubliclyAccessible] :: DBInstance -> Maybe (Val Bool') [_dBInstanceSourceDBInstanceIdentifier] :: DBInstance -> Maybe (Val Text) [_dBInstanceStorageEncrypted] :: DBInstance -> Maybe (Val Bool') [_dBInstanceStorageType] :: DBInstance -> Maybe (Val Text) [_dBInstanceTags] :: DBInstance -> Maybe [ResourceTag] [_dBInstanceVPCSecurityGroups] :: DBInstance -> Maybe [Val Text] -- | Constructor for DBInstance containing required fields as -- arguments. dbInstance :: Val Text -> DBInstance -- | The allocated storage size specified in gigabytes (GB). If any value -- is used in the Iops parameter, AllocatedStorage must be at least 100 -- GB, which corresponds to the minimum Iops value of 1000. If Iops is -- increased (in 1000 IOPS increments), then AllocatedStorage must also -- be increased (in 100 GB increments) correspondingly. dbiAllocatedStorage :: Lens' DBInstance (Maybe (Val Text)) -- | Indicates whether major version upgrades are allowed. Changing this -- parameter does not result in an outage, and the change is applied -- asynchronously as soon as possible. Constraints: This parameter must -- be set to true when you specify an EngineVersion that differs from the -- DB instance's current major version. dbiAllowMajorVersionUpgrade :: Lens' DBInstance (Maybe (Val Bool')) -- | Indicates that minor engine upgrades will be applied automatically to -- the DB instance during the maintenance window. The default value is -- true. dbiAutoMinorVersionUpgrade :: Lens' DBInstance (Maybe (Val Bool')) -- | The name of the Availability Zone where the DB instance is located. -- You cannot set the AvailabilityZone parameter if the MultiAZ parameter -- is set to true. dbiAvailabilityZone :: Lens' DBInstance (Maybe (Val Text)) -- | The number of days for which automatic DB snapshots are retained. -- Important If this DB instance is deleted or replaced during an update, -- all automated snapshots are deleted. However, manual DB snapshot are -- retained. dbiBackupRetentionPeriod :: Lens' DBInstance (Maybe (Val Text)) -- | For supported engines, specifies the character set to associate with -- the database instance. For more information, see Appendix: Oracle -- Character Sets Supported in Amazon RDS in the Amazon Relational -- Database Service User Guide. If you specify the DBSnapshotIdentifier -- or SourceDBInstanceIdentifier property, do not specify this property. -- The value is inherited from the snapshot or source database instance. dbiCharacterSetName :: Lens' DBInstance (Maybe (Val Text)) -- | The identifier of an existing DB cluster that this instance will be -- associated with. If you specify this property, specify aurora for the -- Engine property and do not specify any of the following properties: -- AllocatedStorage, CharacterSetName, DBSecurityGroups, -- SourceDBInstanceIdentifier, and StorageType. Amazon RDS assigns the -- first DB instance in the cluster as the primary and additional DB -- instances as replicas. dbiDBClusterIdentifier :: Lens' DBInstance (Maybe (Val Text)) -- | The name of the compute and memory capacity class of the DB instance. dbiDBInstanceClass :: Lens' DBInstance (Val Text) -- | A name for the DB instance. If you specify a name, AWS CloudFormation -- converts it to lower case. If you don't specify a name, AWS -- CloudFormation generates a unique physical ID and uses that ID for the -- DB instance. For more information, see Name Type. Important If you -- specify a name, you cannot do updates that require this resource to be -- replaced. You can still do updates that require no or some -- interruption. If you must replace the resource, specify a new name. dbiDBInstanceIdentifier :: Lens' DBInstance (Maybe (Val Text)) -- | The name of the initial database of this instance that was provided at -- create time, if one was specified. This same name is returned for the -- life of the DB instance. Note If you restore from a snapshot, do -- specify this property for the MySQL or MariaDB engines. dbiDBName :: Lens' DBInstance (Maybe (Val Text)) -- | The name of an existing DB parameter group or a reference to an -- AWS::RDS::DBParameterGroup resource created in the template. dbiDBParameterGroupName :: Lens' DBInstance (Maybe (Val Text)) -- | A list of the DB security groups to assign to the Amazon RDS instance. -- The list can include both the name of existing DB security groups or -- references to AWS::RDS::DBSecurityGroup resources created in the -- template. If you set DBSecurityGroups, you must not set -- VPCSecurityGroups, and vice-versa. dbiDBSecurityGroups :: Lens' DBInstance (Maybe [Val Text]) -- | The identifier for the DB snapshot to restore from. By specifying this -- property, you can create a DB instance from the specified DB snapshot. -- If the DBSnapshotIdentifier property is an empty string or the -- AWS::RDS::DBInstance declaration has no DBSnapshotIdentifier property, -- the database is created as a new database. If the property contains a -- value (other than empty string), AWS CloudFormation creates a database -- from the specified snapshot. If a snapshot with the specified name -- does not exist, the database creation fails and the stack rolls back. -- Some DB instance properties are not valid when you restore from a -- snapshot, such as the MasterUsername and MasterUserPassword -- properties. For information about the properties that you can specify, -- see the RestoreDBInstanceFromDBSnapshot action in the Amazon -- Relational Database Service API Reference. dbiDBSnapshotIdentifier :: Lens' DBInstance (Maybe (Val Text)) -- | A DB subnet group to associate with the DB instance. If there is no DB -- subnet group, then it is a non-VPC DB instance. For more information -- about using Amazon RDS in a VPC, go to Using Amazon RDS with Amazon -- Virtual Private Cloud (VPC) in the Amazon Relational Database Service -- Developer Guide. dbiDBSubnetGroupName :: Lens' DBInstance (Maybe (Val Text)) -- | The name of the database engine that the DB instance uses. This -- property is optional when you specify the DBSnapshotIdentifier -- property to create DB instances. For valid values, see the Engine -- parameter of the CreateDBInstance action in the Amazon Relational -- Database Service API Reference. dbiEngine :: Lens' DBInstance (Maybe (Val Text)) -- | The version number of the database engine to use. dbiEngineVersion :: Lens' DBInstance (Maybe (Val Text)) -- | The number of I/O operations per second (IOPS) that the database -- provisions. The value must be equal to or greater than 1000. If you -- specify this property, you must follow the range of allowed ratios of -- your requested IOPS rate to the amount of storage that you allocate -- (IOPS to allocated storage). For example, you can provision an Oracle -- database instance with 1000 IOPS and 200 GB of storage (a ratio of -- 5:1) or specify 2000 IOPS with 200 GB of storage (a ratio of 10:1). -- For more information, see Amazon RDS Provisioned IOPS Storage to -- Improve Performance in the Amazon Relational Database Service User -- Guide. dbiIops :: Lens' DBInstance (Maybe (Val Integer')) -- | The Amazon Resource Name (ARN) of the AWS Key Management Service -- master key that is used to encrypt the database instance, such as -- arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. -- If you enable the StorageEncrypted property but don't specify this -- property, the default master key is used. If you specify this -- property, you must set the StorageEncrypted property to true. If you -- specify the DBSnapshotIdentifier or SourceDBInstanceIdentifier -- property, do not specify this property. The value is inherited from -- the snapshot or source database instance. Note Currently, if you -- specify DBSecurityGroups, this property is ignored. If you want to -- specify a security group and this property, you must use a VPC -- security group. For more information about Amazon RDS and VPC, see -- Using Amazon RDS with Amazon VPC in the Amazon Relational Database -- Service User Guide. dbiKmsKeyId :: Lens' DBInstance (Maybe (Val Text)) -- | The license model information for the DB instance. dbiLicenseModel :: Lens' DBInstance (Maybe (Val Text)) -- | The master user name for the database instance. This property is -- optional when you specify the DBSnapshotIdentifier or the -- DBClusterIdentifier property to create DB instances. Note If you -- specify the SourceDBInstanceIdentifier or DBSnapshotIdentifier -- property, do not specify this property. The value is inherited from -- the source database instance or snapshot. dbiMasterUsername :: Lens' DBInstance (Maybe (Val Text)) -- | The master password for the database instance. This property is -- optional when you specify the DBSnapshotIdentifier or the -- DBClusterIdentifier property to create DB instances. Note If you -- specify the SourceDBInstanceIdentifier property, do not specify this -- property. The value is inherited from the source database instance. dbiMasterUserPassword :: Lens' DBInstance (Maybe (Val Text)) -- | Specifies if the database instance is a multiple Availability Zone -- deployment. You cannot set the AvailabilityZone parameter if the -- MultiAZ parameter is set to true. Note Do not specify this property if -- you want a Multi-AZ deployment for a SQL Server database instance. Use -- the mirroring option in an option group to set Multi-AZ for a SQL -- Server database instance. dbiMultiAZ :: Lens' DBInstance (Maybe (Val Bool')) -- | An option group that this database instance is associated with. dbiOptionGroupName :: Lens' DBInstance (Maybe (Val Text)) -- | The port for the instance. dbiPort :: Lens' DBInstance (Maybe (Val Text)) -- | The daily time range during which automated backups are created if -- automated backups are enabled, as determined by the -- BackupRetentionPeriod. dbiPreferredBackupWindow :: Lens' DBInstance (Maybe (Val Text)) -- | The weekly time range (in UTC) during which system maintenance can -- occur. dbiPreferredMaintenanceWindow :: Lens' DBInstance (Maybe (Val Text)) -- | Indicates whether the database instance is an Internet-facing -- instance. If you specify true, an instance is created with a publicly -- resolvable DNS name, which resolves to a public IP address. If you -- specify false, an internal instance is created with a DNS name that -- resolves to a private IP address. The default behavior value depends -- on your VPC setup and the database subnet group. For more information, -- see the PubliclyAccessible parameter in CreateDBInstance in the Amazon -- Relational Database Service API Reference. If this resource has a -- public IP address and is also in a VPC that is defined in the same -- template, you must use the DependsOn attribute to declare a dependency -- on the VPC-gateway attachment. For more information, see DependsOn -- Attribute. Note Currently, if you specify DBSecurityGroups, this -- property is ignored. If you want to specify a security group and this -- property, you must use a VPC security group. For more information -- about Amazon RDS and VPC, see Using Amazon RDS with Amazon VPC in the -- Amazon Relational Database Service User Guide. dbiPubliclyAccessible :: Lens' DBInstance (Maybe (Val Bool')) -- | If you want to create a read replica DB instance, specify the ID of -- the source database instance. Each database instance can have a -- certain number of read replicas. For more information, see Working -- with Read Replicas in the Amazon Relational Database Service Developer -- Guide. The SourceDBInstanceIdentifier property determines whether a -- database instance is a read replica. If you remove the -- SourceDBInstanceIdentifier property from your current template and -- then update your stack, the read replica is deleted and a new database -- instance (not a read replica) is created. Important Read replicas do -- not support deletion policies. Any deletion policy that's associated -- with a read replica is ignored. If you specify -- SourceDBInstanceIdentifier, do not set the MultiAZ property to true -- and do not specify the DBSnapshotIdentifier property. You cannot -- deploy read replicas in multiple Availability Zones, and you cannot -- create a read replica from a snapshot. Do not set the -- BackupRetentionPeriod, DBName, MasterUsername, MasterUserPassword, and -- PreferredBackupWindow properties. The database attributes are -- inherited from the source database instance, and backups are disabled -- for read replicas. If the source DB instance is in a different region -- than the read replica, specify a valid DB instance ARN. For more -- information, see Constructing a Amazon RDS Amazon Resource Name (ARN) -- in the Amazon Relational Database Service User Guide. For DB instances -- in an Amazon Aurora clusters, do not specify this property. Amazon RDS -- assigns automatically assigns a writer and reader DB instances. dbiSourceDBInstanceIdentifier :: Lens' DBInstance (Maybe (Val Text)) -- | Indicates whether the database instance is encrypted. If you specify -- the DBClusterIdentifier, DBSnapshotIdentifier, or -- SourceDBInstanceIdentifier property, do not specify this property. The -- value is inherited from the cluster, snapshot, or source database -- instance. Note Currently, if you specify DBSecurityGroups, this -- property is ignored. If you want to specify a security group and this -- property, you must use a VPC security group. For more information -- about Amazon RDS and VPC, see Using Amazon RDS with Amazon VPC in the -- Amazon Relational Database Service User Guide. dbiStorageEncrypted :: Lens' DBInstance (Maybe (Val Bool')) -- | The storage type associated with this database instance. For the -- default and valid values, see the StorageType parameter of the -- CreateDBInstance action in the Amazon Relational Database Service API -- Reference. Note Currently, if you specify DBSecurityGroups, this -- property is ignored. If you want to specify a security group and this -- property, you must use a VPC security group. For more information -- about Amazon RDS and VPC, see Using Amazon RDS with Amazon VPC in the -- Amazon Relational Database Service User Guide. dbiStorageType :: Lens' DBInstance (Maybe (Val Text)) -- | An arbitrary set of tags (key–value pairs) for this database instance. dbiTags :: Lens' DBInstance (Maybe [ResourceTag]) -- | A list of the VPC security groups to assign to the Amazon RDS -- instance. The list can include both the physical IDs of existing VPC -- security groups or references to AWS::EC2::SecurityGroup resources -- created in the template. If you set VPCSecurityGroups, you must not -- set DBSecurityGroups, and vice-versa. Important You can migrate a -- database instance in your stack from an RDS DB security group to a VPC -- security group, but you should keep the following points in mind: You -- cannot revert to using an RDS security group once you have established -- a VPC security group membership. When you migrate your DB instance to -- VPC security groups, if your stack update rolls back because of -- another failure in the database instance update, or because of an -- update failure in another AWS CloudFormation resource, the rollback -- will fail because it cannot revert to an RDS security group. To avoid -- this situation, only migrate your DB instance to using VPC security -- groups when that is the only change in your stack template. dbiVPCSecurityGroups :: Lens' DBInstance (Maybe [Val Text]) instance GHC.Generics.Generic Stratosphere.Resources.DBInstance.DBInstance instance GHC.Show.Show Stratosphere.Resources.DBInstance.DBInstance instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.DBInstance.DBInstance instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.DBInstance.DBInstance -- | Creates a custom parameter group for an RDS database family. For more -- information about RDS parameter groups, see Working with DB Parameter -- Groups in the Amazon Relational Database Service User Guide. This type -- can be declared in a template and referenced in the -- DBParameterGroupName parameter of AWS::RDS::DBInstance. module Stratosphere.Resources.DBParameterGroup -- | Full data type definition for DBParameterGroup. See -- dbParameterGroup for a more convenient constructor. data DBParameterGroup DBParameterGroup :: Val Text -> Val Text -> Maybe Value -> Maybe [ResourceTag] -> DBParameterGroup [_dBParameterGroupDescription] :: DBParameterGroup -> Val Text [_dBParameterGroupFamily] :: DBParameterGroup -> Val Text [_dBParameterGroupParameters] :: DBParameterGroup -> Maybe Value [_dBParameterGroupTags] :: DBParameterGroup -> Maybe [ResourceTag] -- | Constructor for DBParameterGroup containing required fields as -- arguments. dbParameterGroup :: Val Text -> Val Text -> DBParameterGroup -- | A friendly description of the RDS parameter group. For example, "My -- Parameter Group". dbpgDescription :: Lens' DBParameterGroup (Val Text) -- | The database family of this RDS parameter group. For example, -- "MySQL5.1". dbpgFamily :: Lens' DBParameterGroup (Val Text) -- | The parameters to set for this RDS parameter group. Changes to dynamic -- parameters are applied immediately. Changes to static parameters -- require a reboot without failover to the DB instance that is -- associated with the parameter group before the change can take effect. dbpgParameters :: Lens' DBParameterGroup (Maybe Value) -- | The tags that you want to attach to the RDS parameter group. dbpgTags :: Lens' DBParameterGroup (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.DBParameterGroup.DBParameterGroup instance GHC.Show.Show Stratosphere.Resources.DBParameterGroup.DBParameterGroup instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.DBParameterGroup.DBParameterGroup instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.DBParameterGroup.DBParameterGroup -- | The AWS::RDS::DBSubnetGroup type creates an RDS database subnet group. -- Subnet groups must contain at least two subnet in two different -- Availability Zones in the same region. module Stratosphere.Resources.DBSubnetGroup -- | Full data type definition for DBSubnetGroup. See dbSubnetGroup -- for a more convenient constructor. data DBSubnetGroup DBSubnetGroup :: Val Text -> [Val Text] -> Maybe [ResourceTag] -> DBSubnetGroup [_dBSubnetGroupDBSubnetGroupDescription] :: DBSubnetGroup -> Val Text [_dBSubnetGroupSubnetIds] :: DBSubnetGroup -> [Val Text] [_dBSubnetGroupTags] :: DBSubnetGroup -> Maybe [ResourceTag] -- | Constructor for DBSubnetGroup containing required fields as -- arguments. dbSubnetGroup :: Val Text -> [Val Text] -> DBSubnetGroup -- | The description for the DB Subnet Group. dbsgDBSubnetGroupDescription :: Lens' DBSubnetGroup (Val Text) -- | The EC2 Subnet IDs for the DB Subnet Group. dbsgSubnetIds :: Lens' DBSubnetGroup [Val Text] -- | The tags that you want to attach to the RDS database subnet group. dbsgTags :: Lens' DBSubnetGroup (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.DBSubnetGroup.DBSubnetGroup instance GHC.Show.Show Stratosphere.Resources.DBSubnetGroup.DBSubnetGroup instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.DBSubnetGroup.DBSubnetGroup instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.DBSubnetGroup.DBSubnetGroup -- | Creates a new Internet gateway in your AWS account. After creating the -- Internet gateway, you then attach it to a VPC. module Stratosphere.Resources.InternetGateway -- | Full data type definition for InternetGateway. See -- internetGateway for a more convenient constructor. data InternetGateway InternetGateway :: Maybe [ResourceTag] -> InternetGateway [_internetGatewayTags] :: InternetGateway -> Maybe [ResourceTag] -- | Constructor for InternetGateway containing required fields as -- arguments. internetGateway :: InternetGateway -- | An arbitrary set of tags (key–value pairs) for this resource. igTags :: Lens' InternetGateway (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.InternetGateway.InternetGateway instance GHC.Show.Show Stratosphere.Resources.InternetGateway.InternetGateway instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.InternetGateway.InternetGateway instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.InternetGateway.InternetGateway -- | Creates an Amazon Kinesis stream that captures and transports data -- records that are emitted from data sources. For information about -- creating streams, see CreateStream in the Amazon Kinesis API -- Reference. module Stratosphere.Resources.KinesisStream -- | Full data type definition for KinesisStream. See kinesisStream -- for a more convenient constructor. data KinesisStream KinesisStream :: Maybe (Val Text) -> Val Integer' -> Maybe [ResourceTag] -> KinesisStream [_kinesisStreamName] :: KinesisStream -> Maybe (Val Text) [_kinesisStreamShardCount] :: KinesisStream -> Val Integer' [_kinesisStreamTags] :: KinesisStream -> Maybe [ResourceTag] -- | Constructor for KinesisStream containing required fields as -- arguments. kinesisStream :: Val Integer' -> KinesisStream -- | The name of the Amazon Kinesis stream. If you don't specify a name, -- AWS CloudFormation generates a unique physical ID and uses that ID for -- the stream name. For more information, see Name Type. Important If you -- specify a name, you cannot do updates that require this resource to be -- replaced. You can still do updates that require no or some -- interruption. If you must replace the resource, specify a new name. ksName :: Lens' KinesisStream (Maybe (Val Text)) -- | The number of shards that the stream uses. For greater provisioned -- throughput, increase the number of shards. ksShardCount :: Lens' KinesisStream (Val Integer') -- | An arbitrary set of tags (key–value pairs) to associate with the -- Amazon Kinesis stream. ksTags :: Lens' KinesisStream (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.KinesisStream.KinesisStream instance GHC.Show.Show Stratosphere.Resources.KinesisStream.KinesisStream instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.KinesisStream.KinesisStream instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.KinesisStream.KinesisStream -- | Creates a new route table within a VPC. After you create a new route -- table, you can add routes and associate the table with a subnet. module Stratosphere.Resources.RouteTable -- | Full data type definition for RouteTable. See routeTable for a -- more convenient constructor. data RouteTable RouteTable :: Val Text -> Maybe [ResourceTag] -> RouteTable [_routeTableVpcId] :: RouteTable -> Val Text [_routeTableTags] :: RouteTable -> Maybe [ResourceTag] -- | Constructor for RouteTable containing required fields as -- arguments. routeTable :: Val Text -> RouteTable -- | The ID of the VPC where the route table will be created. Example: -- vpc-11ad4878 rtVpcId :: Lens' RouteTable (Val Text) -- | An arbitrary set of tags (key–value pairs) for this route table. rtTags :: Lens' RouteTable (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.RouteTable.RouteTable instance GHC.Show.Show Stratosphere.Resources.RouteTable.RouteTable instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.RouteTable.RouteTable instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.RouteTable.RouteTable -- | Creates an Amazon EC2 security group. To create a VPC security group, -- use the VpcId property. This type supports updates. For more -- information about updating stacks, see AWS CloudFormation Stacks -- Updates. module Stratosphere.Resources.SecurityGroup -- | Full data type definition for SecurityGroup. See securityGroup -- for a more convenient constructor. data SecurityGroup SecurityGroup :: Val Text -> Maybe [SecurityGroupEgressRule] -> Maybe [SecurityGroupIngressRule] -> Maybe [ResourceTag] -> Maybe (Val Text) -> SecurityGroup [_securityGroupGroupDescription] :: SecurityGroup -> Val Text [_securityGroupSecurityGroupEgress] :: SecurityGroup -> Maybe [SecurityGroupEgressRule] [_securityGroupSecurityGroupIngress] :: SecurityGroup -> Maybe [SecurityGroupIngressRule] [_securityGroupTags] :: SecurityGroup -> Maybe [ResourceTag] [_securityGroupVpcId] :: SecurityGroup -> Maybe (Val Text) -- | Constructor for SecurityGroup containing required fields as -- arguments. securityGroup :: Val Text -> SecurityGroup -- | Description of the security group. sgGroupDescription :: Lens' SecurityGroup (Val Text) -- | A list of Amazon EC2 security group egress rules. sgSecurityGroupEgress :: Lens' SecurityGroup (Maybe [SecurityGroupEgressRule]) -- | A list of Amazon EC2 security group ingress rules. sgSecurityGroupIngress :: Lens' SecurityGroup (Maybe [SecurityGroupIngressRule]) -- | The tags that you want to attach to the resource. sgTags :: Lens' SecurityGroup (Maybe [ResourceTag]) -- | The physical ID of the VPC. Can be obtained by using a reference to an -- AWS::EC2::VPC, such as: { Ref : "myVPC" }. For more information -- about using the Ref function, see Ref. sgVpcId :: Lens' SecurityGroup (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.SecurityGroup.SecurityGroup instance GHC.Show.Show Stratosphere.Resources.SecurityGroup.SecurityGroup instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.SecurityGroup.SecurityGroup instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.SecurityGroup.SecurityGroup -- | Creates a subnet in an existing VPC. module Stratosphere.Resources.Subnet -- | Full data type definition for Subnet. See subnet for a more -- convenient constructor. data Subnet Subnet :: Maybe (Val Text) -> Val Text -> Maybe (Val Bool') -> Maybe [ResourceTag] -> Val Text -> Subnet [_subnetAvailabilityZone] :: Subnet -> Maybe (Val Text) [_subnetCidrBlock] :: Subnet -> Val Text [_subnetMapPublicIpOnLaunch] :: Subnet -> Maybe (Val Bool') [_subnetTags] :: Subnet -> Maybe [ResourceTag] [_subnetVpcId] :: Subnet -> Val Text -- | Constructor for Subnet containing required fields as arguments. subnet :: Val Text -> Val Text -> Subnet -- | The availability zone in which you want the subnet. Default: AWS -- selects a zone for you (recommended). sAvailabilityZone :: Lens' Subnet (Maybe (Val Text)) -- | The CIDR block that you want the subnet to cover (for example, -- "10.0.0.0/24"). sCidrBlock :: Lens' Subnet (Val Text) -- | Indicates whether instances that are launched in this subnet receive a -- public IP address. By default, the value is false. sMapPublicIpOnLaunch :: Lens' Subnet (Maybe (Val Bool')) -- | An arbitrary set of tags (key–value pairs) for this subnet. sTags :: Lens' Subnet (Maybe [ResourceTag]) -- | A Ref structure that contains the ID of the VPC on which you want to -- create the subnet. The VPC ID is provided as the value of the -- Ref property, as: { Ref: VPCID }. sVpcId :: Lens' Subnet (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.Subnet.Subnet instance GHC.Show.Show Stratosphere.Resources.Subnet.Subnet instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Subnet.Subnet instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Subnet.Subnet -- | The AWS::CloudTrail::Trail resource creates a trail and specifies -- where logs are published. An AWS CloudTrail (CloudTrail) trail can -- capture AWS API calls made by your AWS account and publishes the logs -- to an Amazon S3 bucket. For more information, see What is AWS -- CloudTrail? in the AWS CloudTrail User Guide. module Stratosphere.Resources.Trail -- | Full data type definition for Trail. See trail for a more -- convenient constructor. data Trail Trail :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Bool) -> Maybe (Val Bool) -> Val Bool -> Maybe (Val Bool) -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [ResourceTag] -> Trail [_trailCloudWatchLogsLogGroupArn] :: Trail -> Maybe (Val Text) [_trailCloudWatchLogsRoleArn] :: Trail -> Maybe (Val Text) [_trailEnableLogFileValidation] :: Trail -> Maybe (Val Bool) [_trailIncludeGlobalServiceEvents] :: Trail -> Maybe (Val Bool) [_trailIsLogging] :: Trail -> Val Bool [_trailIsMultiRegionTrail] :: Trail -> Maybe (Val Bool) [_trailKMSKeyId] :: Trail -> Maybe (Val Text) [_trailS3BucketName] :: Trail -> Val Text [_trailS3KeyPrefix] :: Trail -> Maybe (Val Text) [_trailSnsTopicName] :: Trail -> Maybe (Val Text) [_trailTags] :: Trail -> Maybe [ResourceTag] -- | Constructor for Trail containing required fields as arguments. trail :: Val Bool -> Val Text -> Trail -- | The Amazon Resource Name (ARN) of a log group to which CloudTrail logs -- will be delivered. tCloudWatchLogsLogGroupArn :: Lens' Trail (Maybe (Val Text)) -- | The role ARN that Amazon CloudWatch Logs (CloudWatch Logs) assumes to -- write logs to a log group. For more information, see Role Policy -- Document for CloudTrail to Use CloudWatch Logs for Monitoring in the -- AWS CloudTrail User Guide. tCloudWatchLogsRoleArn :: Lens' Trail (Maybe (Val Text)) -- | Indicates whether CloudTrail validates the integrity of log files. By -- default, AWS CloudFormation sets this value to false. When you disable -- log file integrity validation, CloudTrail stops creating digest files. -- For more information, see CreateTrail in the AWS CloudTrail API -- Reference. tEnableLogFileValidation :: Lens' Trail (Maybe (Val Bool)) -- | Indicates whether the trail is publishing events from global services, -- such as IAM, to the log files. By default, AWS CloudFormation sets -- this value to false. tIncludeGlobalServiceEvents :: Lens' Trail (Maybe (Val Bool)) -- | Indicates whether the CloudTrail trail is currently logging AWS API -- calls. tIsLogging :: Lens' Trail (Val Bool) -- | Indicates whether the CloudTrail trail is created in the region in -- which you create the stack (false) or in all regions (true). By -- default, AWS CloudFormation sets this value to false. For more -- information, see How Does CloudTrail Behave Regionally and Globally? -- in the AWS CloudTrail User Guide. tIsMultiRegionTrail :: Lens' Trail (Maybe (Val Bool)) -- | The AWS Key Management Service (AWS KMS) key ID that you want to use -- to encrypt CloudTrail logs. You can specify an alias name (prefixed -- with alias/), an alias ARN, a key ARN, or a globally unique -- identifier. tKMSKeyId :: Lens' Trail (Maybe (Val Text)) -- | The name of the Amazon S3 bucket where CloudTrail publishes log files. tS3BucketName :: Lens' Trail (Val Text) -- | An Amazon S3 object key prefix that precedes the name of all log -- files. tS3KeyPrefix :: Lens' Trail (Maybe (Val Text)) -- | The name of an Amazon SNS topic that is notified when new log files -- are published. tSnsTopicName :: Lens' Trail (Maybe (Val Text)) -- | An arbitrary set of tags (key–value pairs) for this trail. tTags :: Lens' Trail (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.Trail.Trail instance GHC.Show.Show Stratosphere.Resources.Trail.Trail instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Trail.Trail instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Trail.Trail -- | Creates a Virtual Private Cloud (VPC) with the CIDR block that you -- specify. module Stratosphere.Resources.VPC -- | Full data type definition for VPC. See vpc for a more -- convenient constructor. data VPC VPC :: Val Text -> Maybe (Val Bool') -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe [ResourceTag] -> VPC [_vPCCidrBlock] :: VPC -> Val Text [_vPCEnableDnsSupport] :: VPC -> Maybe (Val Bool') [_vPCEnableDnsHostnames] :: VPC -> Maybe (Val Bool') [_vPCInstanceTenancy] :: VPC -> Maybe (Val Text) [_vPCTags] :: VPC -> Maybe [ResourceTag] -- | Constructor for VPC containing required fields as arguments. vpc :: Val Text -> VPC -- | The CIDR block you want the VPC to cover. For example: "10.0.0.0/16". vpcCidrBlock :: Lens' VPC (Val Text) -- | Specifies whether DNS resolution is supported for the VPC. If this -- attribute is true, the Amazon DNS server resolves DNS hostnames for -- your instances to their corresponding IP addresses; otherwise, it does -- not. By default the value is set to true. vpcEnableDnsSupport :: Lens' VPC (Maybe (Val Bool')) -- | Specifies whether the instances launched in the VPC get DNS hostnames. -- If this attribute is true, instances in the VPC get DNS hostnames; -- otherwise, they do not. You can only set EnableDnsHostnames to true if -- you also set the EnableDnsSupport attribute to true. By default, the -- value is set to false. vpcEnableDnsHostnames :: Lens' VPC (Maybe (Val Bool')) -- | The allowed tenancy of instances launched into the VPC. "default": -- Instances can be launched with any tenancy. "dedicated": Any instance -- launched into the VPC will automatically be dedicated, regardless of -- the tenancy option you specify when you launch the instance. vpcInstanceTenancy :: Lens' VPC (Maybe (Val Text)) -- | An arbitrary set of tags (key–value pairs) for this VPC. vpcTags :: Lens' VPC (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.VPC.VPC instance GHC.Show.Show Stratosphere.Resources.VPC.VPC instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.VPC.VPC instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.VPC.VPC -- | The AWS::EC2::Volume type creates a new Amazon Elastic Block Store -- (Amazon EBS) volume. You can set a deletion policy for your volume to -- control how AWS CloudFormation handles the volume when the stack is -- deleted. For Amazon EBS volumes, you can choose to retain the volume, -- to delete the volume, or to create a snapshot of the volume. For more -- information, see DeletionPolicy Attribute. module Stratosphere.Resources.Volume -- | Full data type definition for Volume. See volume for a more -- convenient constructor. data Volume Volume :: Maybe (Val Bool') -> Val Text -> Maybe (Val Bool') -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [ResourceTag] -> Maybe (Val Text) -> Volume [_volumeAutoEnableIO] :: Volume -> Maybe (Val Bool') [_volumeAvailabilityZone] :: Volume -> Val Text [_volumeEncrypted] :: Volume -> Maybe (Val Bool') [_volumeIops] :: Volume -> Maybe (Val Integer') [_volumeKmsKeyId] :: Volume -> Maybe (Val Text) [_volumeSize] :: Volume -> Maybe (Val Text) [_volumeSnapshotId] :: Volume -> Maybe (Val Text) [_volumeTags] :: Volume -> Maybe [ResourceTag] [_volumeVolumeType] :: Volume -> Maybe (Val Text) -- | Constructor for Volume containing required fields as arguments. volume :: Val Text -> Volume -- | Indicates whether the volume is auto-enabled for I/O operations. By -- default, Amazon EBS disables I/O to the volume from attached EC2 -- instances when it determines that a volume's data is potentially -- inconsistent. If the consistency of the volume is not a concern, and -- you prefer that the volume be made available immediately if it's -- impaired, you can configure the volume to automatically enable I/O. -- For more information, see Working with the AutoEnableIO Volume -- Attribute in the Amazon EC2 User Guide for Linux Instances. vAutoEnableIO :: Lens' Volume (Maybe (Val Bool')) -- | The Availability Zone in which to create the new volume. vAvailabilityZone :: Lens' Volume (Val Text) -- | Indicates whether the volume is encrypted. Encrypted Amazon EBS -- volumes can only be attached to instance types that support Amazon EBS -- encryption. Volumes that are created from encrypted snapshots are -- automatically encrypted. You cannot create an encrypted volume from an -- unencrypted snapshot or vice versa. If your AMI uses encrypted -- volumes, you can only launch the AMI on supported instance types. For -- more information, see Amazon EBS encryption in the Amazon EC2 User -- Guide for Linux Instances. vEncrypted :: Lens' Volume (Maybe (Val Bool')) -- | The number of I/O operations per second (IOPS) that the volume -- supports. For more information about the valid sizes for each volume -- type, see the Iops parameter for the CreateVolume action in the Amazon -- EC2 API Reference. vIops :: Lens' Volume (Maybe (Val Integer')) -- | The Amazon Resource Name (ARN) of the AWS Key Management Service -- master key that is used to create the encrypted volume, such as -- arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. -- If you create an encrypted volume and don't specify this property, the -- default master key is used. vKmsKeyId :: Lens' Volume (Maybe (Val Text)) -- | The size of the volume, in gibibytes (GiBs). For more information -- about the valid sizes for each volume type, see the Size parameter for -- the CreateVolume action in the Amazon EC2 API Reference. If you -- specify the SnapshotId property, specify a size that is equal to or -- greater than the snapshot size. If you don't specify a size, Amazon -- EC2 will use the size of the snapshot as the volume size. vSize :: Lens' Volume (Maybe (Val Text)) -- | The snapshot from which to create the new volume. vSnapshotId :: Lens' Volume (Maybe (Val Text)) -- | An arbitrary set of tags (key–value pairs) for this volume. vTags :: Lens' Volume (Maybe [ResourceTag]) -- | The volume type. You can specify standard, io1, or gp2. If you set the -- type to io1, you must also set the Iops property. For more information -- about these values and the default value, see the VolumeType parameter -- for the CreateVolume action in the Amazon EC2 API Reference. vVolumeType :: Lens' Volume (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.Volume.Volume instance GHC.Show.Show Stratosphere.Resources.Volume.Volume instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Volume.Volume instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Volume.Volume -- | The GeoLocation property is part of the AWS::Route53::RecordSet -- resource that describes how Amazon Route 53 responds to DNS queries -- based on the geographic location of the query. module Stratosphere.ResourceProperties.RecordSetGeoLocation -- | Full data type definition for RecordSetGeoLocation. See -- recordSetGeoLocation for a more convenient constructor. data RecordSetGeoLocation RecordSetGeoLocation :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> RecordSetGeoLocation [_recordSetGeoLocationContinentCode] :: RecordSetGeoLocation -> Maybe (Val Text) [_recordSetGeoLocationCountryCode] :: RecordSetGeoLocation -> Maybe (Val Text) [_recordSetGeoLocationSubdivisionCode] :: RecordSetGeoLocation -> Maybe (Val Text) -- | Constructor for RecordSetGeoLocation containing required fields -- as arguments. recordSetGeoLocation :: RecordSetGeoLocation -- | All DNS queries from the continent that you specified are routed to -- this resource record set. If you specify this property, omit the -- CountryCode and SubdivisionCode properties. For valid values, see the -- ContinentCode element in the Amazon Route 53 API Reference. Type: -- String rsglContinentCode :: Lens' RecordSetGeoLocation (Maybe (Val Text)) -- | All DNS queries from the country that you specified are routed to this -- resource record set. If you specify this property, omit the -- ContinentCode property. For valid values, see the CountryCode element -- in the Amazon Route 53 API Reference. Type: String rsglCountryCode :: Lens' RecordSetGeoLocation (Maybe (Val Text)) -- | If you specified US for the country code, you can specify a state in -- the United States. All DNS queries from the state that you specified -- are routed to this resource record set. If you specify this property, -- you must specify US for the CountryCode and omit the ContinentCode -- property. For valid values, see the SubdivisionCode element in the -- Amazon Route 53 API Reference. Type: String rsglSubdivisionCode :: Lens' RecordSetGeoLocation (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.RecordSetGeoLocation.RecordSetGeoLocation instance GHC.Show.Show Stratosphere.ResourceProperties.RecordSetGeoLocation.RecordSetGeoLocation instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.RecordSetGeoLocation.RecordSetGeoLocation instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.RecordSetGeoLocation.RecordSetGeoLocation -- | The Amazon RDS security group rule is an embedded property of the -- AWS::RDS::DBSecurityGroup type. module Stratosphere.ResourceProperties.RDSSecurityGroupRule -- | Full data type definition for RDSSecurityGroupRule. See -- rdsSecurityGroupRule for a more convenient constructor. data RDSSecurityGroupRule RDSSecurityGroupRule :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> RDSSecurityGroupRule [_rDSSecurityGroupRuleCIDRIP] :: RDSSecurityGroupRule -> Maybe (Val Text) [_rDSSecurityGroupRuleEC2SecurityGroupId] :: RDSSecurityGroupRule -> Maybe (Val Text) [_rDSSecurityGroupRuleEC2SecurityGroupName] :: RDSSecurityGroupRule -> Maybe (Val Text) [_rDSSecurityGroupRuleEC2SecurityGroupOwnerId] :: RDSSecurityGroupRule -> Maybe (Val Text) -- | Constructor for RDSSecurityGroupRule containing required fields -- as arguments. rdsSecurityGroupRule :: RDSSecurityGroupRule -- | The IP range to authorize. For an overview of CIDR ranges, go to the -- Wikipedia Tutorial. Type: String rdssgrCIDRIP :: Lens' RDSSecurityGroupRule (Maybe (Val Text)) -- | Id of the VPC or EC2 Security Group to authorize. For VPC DB Security -- Groups, use EC2SecurityGroupId. For EC2 Security Groups, use -- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or -- EC2SecurityGroupId. Type: String rdssgrEC2SecurityGroupId :: Lens' RDSSecurityGroupRule (Maybe (Val Text)) -- | Name of the EC2 Security Group to authorize. For VPC DB Security -- Groups, use EC2SecurityGroupId. For EC2 Security Groups, use -- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or -- EC2SecurityGroupId. Type: String rdssgrEC2SecurityGroupName :: Lens' RDSSecurityGroupRule (Maybe (Val Text)) -- | AWS Account Number of the owner of the EC2 Security Group specified in -- the EC2SecurityGroupName parameter. The AWS Access Key ID is not an -- acceptable value. For VPC DB Security Groups, use EC2SecurityGroupId. -- For EC2 Security Groups, use EC2SecurityGroupOwnerId and either -- EC2SecurityGroupName or EC2SecurityGroupId. Type: String rdssgrEC2SecurityGroupOwnerId :: Lens' RDSSecurityGroupRule (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.RDSSecurityGroupRule.RDSSecurityGroupRule instance GHC.Show.Show Stratosphere.ResourceProperties.RDSSecurityGroupRule.RDSSecurityGroupRule instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.RDSSecurityGroupRule.RDSSecurityGroupRule instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.RDSSecurityGroupRule.RDSSecurityGroupRule -- | The AWS::RDS::DBSecurityGroup type is used to create or update an -- Amazon RDS DB Security Group. For more information about DB Security -- Groups, see Working with DB Security Groups in the Amazon Relational -- Database Service Developer Guide. For details on the settings for DB -- security groups, see CreateDBSecurityGroup. When you specify an -- AWS::RDS::DBSecurityGroup as an argument to the Ref function, AWS -- CloudFormation returns the value of the DBSecurityGroupName. module Stratosphere.Resources.DBSecurityGroup -- | Full data type definition for DBSecurityGroup. See -- dbSecurityGroup for a more convenient constructor. data DBSecurityGroup DBSecurityGroup :: Maybe (Val Text) -> [RDSSecurityGroupRule] -> Val Text -> Maybe [ResourceTag] -> DBSecurityGroup [_dBSecurityGroupEC2VpcId] :: DBSecurityGroup -> Maybe (Val Text) [_dBSecurityGroupDBSecurityGroupIngress] :: DBSecurityGroup -> [RDSSecurityGroupRule] [_dBSecurityGroupGroupDescription] :: DBSecurityGroup -> Val Text [_dBSecurityGroupResourceTags] :: DBSecurityGroup -> Maybe [ResourceTag] -- | Constructor for DBSecurityGroup containing required fields as -- arguments. dbSecurityGroup :: [RDSSecurityGroupRule] -> Val Text -> DBSecurityGroup -- | The Id of VPC. Indicates which VPC this DB Security Group should -- belong to. Type: String dbsgEC2VpcId :: Lens' DBSecurityGroup (Maybe (Val Text)) -- | Network ingress authorization for an Amazon EC2 security group or an -- IP address range. Type: List of RDS Security Group Rules. dbsgDBSecurityGroupIngress :: Lens' DBSecurityGroup [RDSSecurityGroupRule] -- | Description of the security group. Type: String dbsgGroupDescription :: Lens' DBSecurityGroup (Val Text) -- | The tags that you want to attach to the Amazon RDS DB security group. dbsgResourceTags :: Lens' DBSecurityGroup (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.DBSecurityGroup.DBSecurityGroup instance GHC.Show.Show Stratosphere.Resources.DBSecurityGroup.DBSecurityGroup instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.DBSecurityGroup.DBSecurityGroup instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.DBSecurityGroup.DBSecurityGroup module Stratosphere.ResourceProperties.PrivateIpAddressSpecification -- | Full data type definition for PrivateIpAddressSpecification. See -- privateIpAddressSpecification for a more convenient -- constructor. data PrivateIpAddressSpecification PrivateIpAddressSpecification :: Val Text -> Val Bool' -> PrivateIpAddressSpecification [_privateIpAddressSpecificationPrivateIpAddress] :: PrivateIpAddressSpecification -> Val Text [_privateIpAddressSpecificationPrimary] :: PrivateIpAddressSpecification -> Val Bool' -- | Constructor for PrivateIpAddressSpecification containing -- required fields as arguments. privateIpAddressSpecification :: Val Text -> Val Bool' -> PrivateIpAddressSpecification -- | The private IP address of the network interface. piasPrivateIpAddress :: Lens' PrivateIpAddressSpecification (Val Text) -- | Sets the private IP address as the primary private address. You can -- set only one primary private IP address. If you don't specify a -- primary private IP address, Amazon EC2 automatically assigns a primary -- private IP address. piasPrimary :: Lens' PrivateIpAddressSpecification (Val Bool') instance GHC.Generics.Generic Stratosphere.ResourceProperties.PrivateIpAddressSpecification.PrivateIpAddressSpecification instance GHC.Show.Show Stratosphere.ResourceProperties.PrivateIpAddressSpecification.PrivateIpAddressSpecification instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.PrivateIpAddressSpecification.PrivateIpAddressSpecification instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.PrivateIpAddressSpecification.PrivateIpAddressSpecification module Stratosphere.ResourceProperties.NetworkInterface -- | Full data type definition for NetworkInterface. See -- networkInterface for a more convenient constructor. data NetworkInterface NetworkInterface :: Maybe (Val Bool') -> Maybe (Val Bool') -> Maybe (Val Text) -> Val Text -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [PrivateIpAddressSpecification] -> Maybe (Val Integer') -> Maybe (Val Text) -> NetworkInterface [_networkInterfaceAssociatePublicIpAddress] :: NetworkInterface -> Maybe (Val Bool') [_networkInterfaceDeleteOnTermination] :: NetworkInterface -> Maybe (Val Bool') [_networkInterfaceDescription] :: NetworkInterface -> Maybe (Val Text) [_networkInterfaceDeviceIndex] :: NetworkInterface -> Val Text [_networkInterfaceGroupSet] :: NetworkInterface -> Maybe [Val Text] [_networkInterfaceNetworkInterfaceId] :: NetworkInterface -> Maybe (Val Text) [_networkInterfacePrivateIpAddress] :: NetworkInterface -> Maybe (Val Text) [_networkInterfacePrivateIpAddresses] :: NetworkInterface -> Maybe [PrivateIpAddressSpecification] [_networkInterfaceSecondaryPrivateIpAddressCount] :: NetworkInterface -> Maybe (Val Integer') [_networkInterfaceSubnetId] :: NetworkInterface -> Maybe (Val Text) -- | Constructor for NetworkInterface containing required fields as -- arguments. networkInterface :: Val Text -> NetworkInterface -- | Indicates whether the network interface receives a public IP address. -- You can associate a public IP address with a network interface only if -- it has a device index of eth0 and if it is a new network interface -- (not an existing one). In other words, if you specify true, don't -- specify a network interface ID. For more information, see Amazon EC2 -- Instance IP Addressing. niAssociatePublicIpAddress :: Lens' NetworkInterface (Maybe (Val Bool')) -- | Whether to delete the network interface when the instance terminates. niDeleteOnTermination :: Lens' NetworkInterface (Maybe (Val Bool')) -- | The description of this network interface. niDescription :: Lens' NetworkInterface (Maybe (Val Text)) -- | The network interface's position in the attachment order. niDeviceIndex :: Lens' NetworkInterface (Val Text) -- | A list of security group IDs associated with this network interface. niGroupSet :: Lens' NetworkInterface (Maybe [Val Text]) -- | An existing network interface ID. niNetworkInterfaceId :: Lens' NetworkInterface (Maybe (Val Text)) -- | Assigns a single private IP address to the network interface, which is -- used as the primary private IP address. If you want to specify -- multiple private IP address, use the PrivateIpAddresses property. niPrivateIpAddress :: Lens' NetworkInterface (Maybe (Val Text)) -- | Assigns a list of private IP addresses to the network interface. You -- can specify a primary private IP address by setting the value of the -- Primary property to true in the PrivateIpAddressSpecification -- property. If you want Amazon EC2 to automatically assign private IP -- addresses, use the SecondaryPrivateIpCount property and do not specify -- this property. For information about the maximum number of private IP -- addresses, see Private IP Addresses Per ENI Per Instance Type in the -- Amazon EC2 User Guide for Linux Instances. niPrivateIpAddresses :: Lens' NetworkInterface (Maybe [PrivateIpAddressSpecification]) -- | The number of secondary private IP addresses that Amazon EC2 auto -- assigns to the network interface. Amazon EC2 uses the value of the -- PrivateIpAddress property as the primary private IP address. If you -- don't specify that property, Amazon EC2 auto assigns both the primary -- and secondary private IP addresses. If you want to specify your own -- list of private IP addresses, use the PrivateIpAddresses property and -- do not specify this property. For information about the maximum number -- of private IP addresses, see Private IP Addresses Per ENI Per Instance -- Type in the Amazon EC2 User Guide for Linux Instances. niSecondaryPrivateIpAddressCount :: Lens' NetworkInterface (Maybe (Val Integer')) -- | The ID of the subnet to associate with the network interface. niSubnetId :: Lens' NetworkInterface (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.NetworkInterface.NetworkInterface instance GHC.Show.Show Stratosphere.ResourceProperties.NetworkInterface.NetworkInterface instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.NetworkInterface.NetworkInterface instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.NetworkInterface.NetworkInterface -- | A pair of name and value. Used in ELB Attributes module Stratosphere.ResourceProperties.NameValuePair -- | Full data type definition for NameValuePair. See nameValuePair -- for a more convenient constructor. data NameValuePair NameValuePair :: Val Text -> Val Text -> NameValuePair [_nameValuePairName] :: NameValuePair -> Val Text [_nameValuePairValue] :: NameValuePair -> Val Text -- | Constructor for NameValuePair containing required fields as -- arguments. nameValuePair :: Val Text -> Val Text -> NameValuePair -- | The name of an attribute nvpName :: Lens' NameValuePair (Val Text) -- | The value of an attribute nvpValue :: Lens' NameValuePair (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.NameValuePair.NameValuePair instance GHC.Show.Show Stratosphere.ResourceProperties.NameValuePair.NameValuePair instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.NameValuePair.NameValuePair instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.NameValuePair.NameValuePair -- | The Listener property is an embedded property of the -- AWS::ElasticLoadBalancing::LoadBalancer type. module Stratosphere.ResourceProperties.ListenerProperty -- | Full data type definition for ListenerProperty. See -- listenerProperty for a more convenient constructor. data ListenerProperty ListenerProperty :: Val Text -> Maybe (Val Text) -> Val Text -> Maybe [Val Text] -> Val Text -> Maybe (Val Text) -> ListenerProperty [_listenerPropertyInstancePort] :: ListenerProperty -> Val Text [_listenerPropertyInstanceProtocol] :: ListenerProperty -> Maybe (Val Text) [_listenerPropertyLoadBalancerPort] :: ListenerProperty -> Val Text [_listenerPropertyPolicyNames] :: ListenerProperty -> Maybe [Val Text] [_listenerPropertyProtocol] :: ListenerProperty -> Val Text [_listenerPropertySSLCertificateId] :: ListenerProperty -> Maybe (Val Text) -- | Constructor for ListenerProperty containing required fields as -- arguments. listenerProperty :: Val Text -> Val Text -> Val Text -> ListenerProperty -- | Specifies the TCP port on which the instance server is listening. This -- property cannot be modified for the life of the load balancer. lpInstancePort :: Lens' ListenerProperty (Val Text) -- | Specifies the protocol to use for routing traffic to back-end -- instances—HTTP, HTTPS, TCP, or SSL. This property cannot be modified -- for the life of the load balancer. lpInstanceProtocol :: Lens' ListenerProperty (Maybe (Val Text)) -- | Specifies the external load balancer port number. This property cannot -- be modified for the life of the load balancer. lpLoadBalancerPort :: Lens' ListenerProperty (Val Text) -- | A list of ElasticLoadBalancing policy names to associate with the -- listener. lpPolicyNames :: Lens' ListenerProperty (Maybe [Val Text]) -- | Specifies the load balancer transport protocol to use for routing — -- HTTP, HTTPS, TCP or SSL. This property cannot be modified for the life -- of the load balancer. lpProtocol :: Lens' ListenerProperty (Val Text) -- | The ARN of the SSL certificate to use. For more information about SSL -- certificates, see Managing Server Certificates in the AWS Identity and -- Access Management documentation. lpSSLCertificateId :: Lens' ListenerProperty (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ListenerProperty.ListenerProperty instance GHC.Show.Show Stratosphere.ResourceProperties.ListenerProperty.ListenerProperty instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ListenerProperty.ListenerProperty instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ListenerProperty.ListenerProperty -- | VpcConfig is a property of the AWS::Lambda::Function resource that -- enables to your AWS Lambda (Lambda) function to access resources in a -- VPC. For more information, see Configuring a Lambda Function to Access -- Resources in an Amazon VPC in the AWS Lambda Developer Guide. module Stratosphere.ResourceProperties.LambdaFunctionVPCConfig -- | Full data type definition for LambdaFunctionVPCConfig. See -- lambdaFunctionVPCConfig for a more convenient constructor. data LambdaFunctionVPCConfig LambdaFunctionVPCConfig :: [Val Text] -> [Val Text] -> LambdaFunctionVPCConfig [_lambdaFunctionVPCConfigSecurityGroupIds] :: LambdaFunctionVPCConfig -> [Val Text] [_lambdaFunctionVPCConfigSubnetIds] :: LambdaFunctionVPCConfig -> [Val Text] -- | Constructor for LambdaFunctionVPCConfig containing required -- fields as arguments. lambdaFunctionVPCConfig :: [Val Text] -> [Val Text] -> LambdaFunctionVPCConfig -- | A list of one or more security groups IDs in the VPC that includes the -- resources to which your Lambda function requires access. lfvpccSecurityGroupIds :: Lens' LambdaFunctionVPCConfig [Val Text] -- | A list of one or more subnet IDs in the VPC that includes the -- resources to which your Lambda function requires access. lfvpccSubnetIds :: Lens' LambdaFunctionVPCConfig [Val Text] instance GHC.Generics.Generic Stratosphere.ResourceProperties.LambdaFunctionVPCConfig.LambdaFunctionVPCConfig instance GHC.Show.Show Stratosphere.ResourceProperties.LambdaFunctionVPCConfig.LambdaFunctionVPCConfig instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.LambdaFunctionVPCConfig.LambdaFunctionVPCConfig instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.LambdaFunctionVPCConfig.LambdaFunctionVPCConfig -- | Code is a property of the AWS::Lambda::Function resource that enables -- you to specify the source code of an AWS Lambda (Lambda) function. -- Source code can be located in a file in an S3 bucket. For nodejs, -- nodejs4.3, and python2.7 runtime environments only, you can provide -- source code as inline text. module Stratosphere.ResourceProperties.LambdaFunctionCode -- | Full data type definition for LambdaFunctionCode. See -- lambdaFunctionCode for a more convenient constructor. data LambdaFunctionCode LambdaFunctionCode :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> LambdaFunctionCode [_lambdaFunctionCodeS3Bucket] :: LambdaFunctionCode -> Maybe (Val Text) [_lambdaFunctionCodeS3Key] :: LambdaFunctionCode -> Maybe (Val Text) [_lambdaFunctionCodeS3ObjectVersion] :: LambdaFunctionCode -> Maybe (Val Text) [_lambdaFunctionCodeZipFile] :: LambdaFunctionCode -> Maybe (Val Text) -- | Constructor for LambdaFunctionCode containing required fields -- as arguments. lambdaFunctionCode :: LambdaFunctionCode -- | The name of the S3 bucket that contains the source code of your Lambda -- function. The S3 bucket must be in the same region as the stack. Note -- The cfn-response module isn't available for source code stored in S3 -- buckets. You must write your own functions to send responses. lfcS3Bucket :: Lens' LambdaFunctionCode (Maybe (Val Text)) -- | The location and name of the .zip file that contains your source code. -- If you specify this property, you must also specify the S3Bucket -- property. lfcS3Key :: Lens' LambdaFunctionCode (Maybe (Val Text)) -- | If you have S3 versioning enabled, the version ID of the.zip file that -- contains your source code. You can specify this property only if you -- specify the S3Bucket and S3Key properties. lfcS3ObjectVersion :: Lens' LambdaFunctionCode (Maybe (Val Text)) -- | For nodejs, nodejs4.3, and python2.7 runtime environments, the source -- code of your Lambda function. You can't use this property with other -- runtime environments. You can specify up to 4096 characters. You must -- precede certain special characters in your source code, such as -- quotation marks ("), newlines (n), and tabs (t), with a backslash (). -- For a list of special characters, see http://json.org/. If you -- specify a function that interacts with an AWS CloudFormation custom -- resource, you don't have to write your own functions to send responses -- to the custom resource that invoked the function. AWS CloudFormation -- provides a response module that simplifies sending responses. For more -- information, see cfn-response Module. lfcZipFile :: Lens' LambdaFunctionCode (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.LambdaFunctionCode.LambdaFunctionCode instance GHC.Show.Show Stratosphere.ResourceProperties.LambdaFunctionCode.LambdaFunctionCode instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.LambdaFunctionCode.LambdaFunctionCode instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.LambdaFunctionCode.LambdaFunctionCode -- | The AWS::Lambda::Function resource creates an AWS Lambda (Lambda) -- function that can run code in response to events. For more -- information, see CreateFunction in the AWS Lambda Developer Guide. module Stratosphere.Resources.LambdaFunction -- | Full data type definition for LambdaFunction. See -- lambdaFunction for a more convenient constructor. data LambdaFunction LambdaFunction :: LambdaFunctionCode -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Maybe (Val Integer') -> Val Text -> Runtime -> Maybe (Val Integer') -> Maybe LambdaFunctionVPCConfig -> LambdaFunction [_lambdaFunctionCode] :: LambdaFunction -> LambdaFunctionCode [_lambdaFunctionDescription] :: LambdaFunction -> Maybe (Val Text) [_lambdaFunctionFunctionName] :: LambdaFunction -> Maybe (Val Text) [_lambdaFunctionHandler] :: LambdaFunction -> Val Text [_lambdaFunctionMemorySize] :: LambdaFunction -> Maybe (Val Integer') [_lambdaFunctionRole] :: LambdaFunction -> Val Text [_lambdaFunctionRuntime] :: LambdaFunction -> Runtime [_lambdaFunctionTimeout] :: LambdaFunction -> Maybe (Val Integer') [_lambdaFunctionVpcConfig] :: LambdaFunction -> Maybe LambdaFunctionVPCConfig -- | Constructor for LambdaFunction containing required fields as -- arguments. lambdaFunction :: LambdaFunctionCode -> Val Text -> Val Text -> Runtime -> LambdaFunction -- | The source code of your Lambda function. You can point to a file in an -- Amazon Simple Storage Service (Amazon S3) bucket or specify your -- source code as inline text. lfCode :: Lens' LambdaFunction LambdaFunctionCode -- | A description of the function. lfDescription :: Lens' LambdaFunction (Maybe (Val Text)) -- | A name for the function. If you don't specify a name, AWS -- CloudFormation generates a unique physical ID and uses that ID for the -- function's name. For more information, see Name Type. Important If you -- specify a name, you cannot do updates that require this resource to be -- replaced. You can still do updates that require no or some -- interruption. If you must replace the resource, specify a new name. lfFunctionName :: Lens' LambdaFunction (Maybe (Val Text)) -- | The name of the function (within your source code) that Lambda calls -- to start running your code. For more information, see the Handler -- property in the AWS Lambda Developer Guide. Note If you specify your -- source code as inline text by specifying the ZipFile property within -- the Code property, specify index.function_name as the handler. lfHandler :: Lens' LambdaFunction (Val Text) -- | The amount of memory, in MB, that is allocated to your Lambda -- function. Lambda uses this value to proportionally allocate the amount -- of CPU power. For more information, see Resource Model in the AWS -- Lambda Developer Guide. Your function use case determines your CPU and -- memory requirements. For example, a database operation might need less -- memory than an image processing function. You must specify a value -- that is greater than or equal to 128, and it must be a multiple of 64. -- You cannot specify a size larger than 1536. The default value is 128 -- MB. lfMemorySize :: Lens' LambdaFunction (Maybe (Val Integer')) -- | The Amazon Resource Name (ARN) of the AWS Identity and Access -- Management (IAM) execution role that Lambda assumes when it runs your -- code to access AWS services. lfRole :: Lens' LambdaFunction (Val Text) -- | The runtime environment for the Lambda function that you are -- uploading. For valid values, see the Runtime property in the AWS -- Lambda Developer Guide. lfRuntime :: Lens' LambdaFunction Runtime -- | The function execution time (in seconds) after which Lambda terminates -- the function. Because the execution time affects cost, set this value -- based on the function's expected execution time. By default, Timeout -- is set to 3 seconds. lfTimeout :: Lens' LambdaFunction (Maybe (Val Integer')) -- | If the Lambda function requires access to resources in a VPC, specify -- a VPC configuration that Lambda uses to set up an elastic network -- interface (ENI). The ENI enables your function to connect to other -- resources in your VPC, but it doesn't provide public Internet access. -- If your function requires Internet access (for example, to access AWS -- services that don't have VPC endpoints), configure a Network Address -- Translation (NAT) instance inside your VPC or use an Amazon Virtual -- Private Cloud (Amazon VPC) NAT gateway. For more information, see NAT -- Gateways in the Amazon VPC User Guide. lfVpcConfig :: Lens' LambdaFunction (Maybe LambdaFunctionVPCConfig) instance GHC.Generics.Generic Stratosphere.Resources.LambdaFunction.LambdaFunction instance GHC.Show.Show Stratosphere.Resources.LambdaFunction.LambdaFunction instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LambdaFunction.LambdaFunction instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LambdaFunction.LambdaFunction -- | The LBCookieStickinessPolicy type is an embedded property of the -- AWS::ElasticLoadBalancing::LoadBalancer type. module Stratosphere.ResourceProperties.LBCookieStickinessPolicy -- | Full data type definition for LBCookieStickinessPolicy. See -- lbCookieStickinessPolicy for a more convenient constructor. data LBCookieStickinessPolicy LBCookieStickinessPolicy :: Maybe (Val Text) -> Val Text -> LBCookieStickinessPolicy [_lBCookieStickinessPolicyCookieExpirationPeriod] :: LBCookieStickinessPolicy -> Maybe (Val Text) [_lBCookieStickinessPolicyPolicyName] :: LBCookieStickinessPolicy -> Val Text -- | Constructor for LBCookieStickinessPolicy containing required -- fields as arguments. lbCookieStickinessPolicy :: Val Text -> LBCookieStickinessPolicy -- | The time period, in seconds, after which the cookie should be -- considered stale. If this parameter isn't specified, the sticky -- session will last for the duration of the browser session. lbcspCookieExpirationPeriod :: Lens' LBCookieStickinessPolicy (Maybe (Val Text)) -- | The name of the policy being created. The name must be unique within -- the set of policies for this load balancer. Note To associate this -- policy with a listener, include the policy name in the listener's -- PolicyNames property. lbcspPolicyName :: Lens' LBCookieStickinessPolicy (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.LBCookieStickinessPolicy.LBCookieStickinessPolicy instance GHC.Show.Show Stratosphere.ResourceProperties.LBCookieStickinessPolicy.LBCookieStickinessPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.LBCookieStickinessPolicy.LBCookieStickinessPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.LBCookieStickinessPolicy.LBCookieStickinessPolicy -- | KMSEncryptionConfig is a property of the Amazon Kinesis Firehose -- DeliveryStream S3DestinationConfiguration EncryptionConfiguration -- property that specifies the AWS Key Management Service (AWS KMS) -- encryption key that Amazon Simple Storage Service (Amazon S3) uses to -- encrypt data delivered by the Amazon Kinesis Firehose (Firehose) -- stream. module Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig -- | Full data type definition for KinesisFirehoseS3KMSEncryptionConfig. -- See kinesisFirehoseS3KMSEncryptionConfig for a more convenient -- constructor. data KinesisFirehoseS3KMSEncryptionConfig KinesisFirehoseS3KMSEncryptionConfig :: Val Text -> KinesisFirehoseS3KMSEncryptionConfig [_kinesisFirehoseS3KMSEncryptionConfigAWSKMSKeyARN] :: KinesisFirehoseS3KMSEncryptionConfig -> Val Text -- | Constructor for KinesisFirehoseS3KMSEncryptionConfig containing -- required fields as arguments. kinesisFirehoseS3KMSEncryptionConfig :: Val Text -> KinesisFirehoseS3KMSEncryptionConfig -- | The Amazon Resource Name (ARN) of the AWS KMS encryption key that -- Amazon S3 uses to encrypt data delivered by the Firehose stream. The -- key must belong to the same region as the destination S3 bucket. kfskmsecAWSKMSKeyARN :: Lens' KinesisFirehoseS3KMSEncryptionConfig (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig.KinesisFirehoseS3KMSEncryptionConfig instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig.KinesisFirehoseS3KMSEncryptionConfig instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig.KinesisFirehoseS3KMSEncryptionConfig instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig.KinesisFirehoseS3KMSEncryptionConfig -- | EncryptionConfiguration is a property of the Amazon Kinesis Firehose -- DeliveryStream S3DestinationConfiguration property that specifies the -- encryption settings that Amazon Kinesis Firehose (Firehose) uses when -- delivering data to Amazon Simple Storage Service (Amazon S3). module Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration -- | Full data type definition for -- KinesisFirehoseS3EncryptionConfiguration. See -- kinesisFirehoseS3EncryptionConfiguration for a more convenient -- constructor. data KinesisFirehoseS3EncryptionConfiguration KinesisFirehoseS3EncryptionConfiguration :: Maybe KinesisFirehoseS3KMSEncryptionConfig -> Maybe KinesisFirehoseNoEncryptionConfig -> KinesisFirehoseS3EncryptionConfiguration [_kinesisFirehoseS3EncryptionConfigurationKMSEncryptionConfig] :: KinesisFirehoseS3EncryptionConfiguration -> Maybe KinesisFirehoseS3KMSEncryptionConfig [_kinesisFirehoseS3EncryptionConfigurationNoEncryptionConfig] :: KinesisFirehoseS3EncryptionConfiguration -> Maybe KinesisFirehoseNoEncryptionConfig -- | Constructor for KinesisFirehoseS3EncryptionConfiguration -- containing required fields as arguments. kinesisFirehoseS3EncryptionConfiguration :: KinesisFirehoseS3EncryptionConfiguration -- | The AWS Key Management Service (AWS KMS) encryption key that Amazon S3 -- uses to encrypt your data. kfsecKMSEncryptionConfig :: Lens' KinesisFirehoseS3EncryptionConfiguration (Maybe KinesisFirehoseS3KMSEncryptionConfig) -- | Disables encryption. For valid values, see the NoEncryptionConfig -- content for the EncryptionConfiguration data type in the Amazon -- Kinesis Firehose API Reference. kfsecNoEncryptionConfig :: Lens' KinesisFirehoseS3EncryptionConfiguration (Maybe KinesisFirehoseNoEncryptionConfig) instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration.KinesisFirehoseS3EncryptionConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration.KinesisFirehoseS3EncryptionConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration.KinesisFirehoseS3EncryptionConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration.KinesisFirehoseS3EncryptionConfiguration -- | CopyCommand is a property of the Amazon Kinesis Firehose -- DeliveryStream RedshiftDestinationConfiguration property that -- configures the Amazon Redshift COPY command that Amazon Kinesis -- Firehose (Firehose) uses to load data into an Amazon Redshift cluster -- from an S3 bucket. module Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand -- | Full data type definition for KinesisFirehoseRedshiftCopyCommand. See -- kinesisFirehoseRedshiftCopyCommand for a more convenient -- constructor. data KinesisFirehoseRedshiftCopyCommand KinesisFirehoseRedshiftCopyCommand :: Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> KinesisFirehoseRedshiftCopyCommand [_kinesisFirehoseRedshiftCopyCommandCopyOptions] :: KinesisFirehoseRedshiftCopyCommand -> Maybe (Val Text) [_kinesisFirehoseRedshiftCopyCommandDataTableColumns] :: KinesisFirehoseRedshiftCopyCommand -> Maybe (Val Text) [_kinesisFirehoseRedshiftCopyCommandDataTableName] :: KinesisFirehoseRedshiftCopyCommand -> Val Text -- | Constructor for KinesisFirehoseRedshiftCopyCommand containing -- required fields as arguments. kinesisFirehoseRedshiftCopyCommand :: Val Text -> KinesisFirehoseRedshiftCopyCommand -- | Parameters to use with the Amazon Redshift COPY command. For examples, -- see the CopyOptions content for the CopyCommand data type in the -- Amazon Kinesis Firehose API Reference. kfrccCopyOptions :: Lens' KinesisFirehoseRedshiftCopyCommand (Maybe (Val Text)) -- | A comma-separated list of the column names in the table that Firehose -- copies data to. kfrccDataTableColumns :: Lens' KinesisFirehoseRedshiftCopyCommand (Maybe (Val Text)) -- | The name of the table where Firehose adds the copied data. kfrccDataTableName :: Lens' KinesisFirehoseRedshiftCopyCommand (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand.KinesisFirehoseRedshiftCopyCommand instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand.KinesisFirehoseRedshiftCopyCommand instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand.KinesisFirehoseRedshiftCopyCommand instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand.KinesisFirehoseRedshiftCopyCommand -- | RetryOptions is a property of the Amazon Kinesis Firehose -- DeliveryStream ElasticsearchDestinationConfiguration property that -- configures the retry behavior when Amazon Kinesis Firehose (Firehose) -- can't deliver data to Amazon Elasticsearch Service (Amazon ES). module Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions -- | Full data type definition for -- KinesisFirehoseElasticsearchRetryOptions. See -- kinesisFirehoseElasticsearchRetryOptions for a more convenient -- constructor. data KinesisFirehoseElasticsearchRetryOptions KinesisFirehoseElasticsearchRetryOptions :: Val Integer' -> KinesisFirehoseElasticsearchRetryOptions [_kinesisFirehoseElasticsearchRetryOptionsDurationInSeconds] :: KinesisFirehoseElasticsearchRetryOptions -> Val Integer' -- | Constructor for KinesisFirehoseElasticsearchRetryOptions -- containing required fields as arguments. kinesisFirehoseElasticsearchRetryOptions :: Val Integer' -> KinesisFirehoseElasticsearchRetryOptions -- | After an initial failure to deliver to Amazon ES, the total amount of -- time during which Firehose re-attempts delivery (including the first -- attempt). If Firehose can't deliver the data within the specified -- time, it writes the data to the backup S3 bucket. For valid values, -- see the DurationInSeconds content for the ElasticsearchRetryOptions -- data type in the Amazon Kinesis Firehose API Reference. kferoDurationInSeconds :: Lens' KinesisFirehoseElasticsearchRetryOptions (Val Integer') instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions.KinesisFirehoseElasticsearchRetryOptions instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions.KinesisFirehoseElasticsearchRetryOptions instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions.KinesisFirehoseElasticsearchRetryOptions instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions.KinesisFirehoseElasticsearchRetryOptions -- | CloudWatchLoggingOptions is a property of the Amazon Kinesis Firehose -- DeliveryStream ElasticsearchDestinationConfiguration, Amazon Kinesis -- Firehose DeliveryStream RedshiftDestinationConfiguration, and Amazon -- Kinesis Firehose DeliveryStream S3DestinationConfiguration properties -- that specifies Amazon CloudWatch Logs (CloudWatch Logs) logging -- options that Amazon Kinesis Firehose (Firehose) uses for the delivery -- stream. module Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions -- | Full data type definition for KinesisFirehoseCloudWatchLoggingOptions. -- See kinesisFirehoseCloudWatchLoggingOptions for a more -- convenient constructor. data KinesisFirehoseCloudWatchLoggingOptions KinesisFirehoseCloudWatchLoggingOptions :: Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Text) -> KinesisFirehoseCloudWatchLoggingOptions [_kinesisFirehoseCloudWatchLoggingOptionsEnabled] :: KinesisFirehoseCloudWatchLoggingOptions -> Maybe (Val Bool') [_kinesisFirehoseCloudWatchLoggingOptionsLogGroupName] :: KinesisFirehoseCloudWatchLoggingOptions -> Maybe (Val Text) [_kinesisFirehoseCloudWatchLoggingOptionsLogStreamName] :: KinesisFirehoseCloudWatchLoggingOptions -> Maybe (Val Text) -- | Constructor for KinesisFirehoseCloudWatchLoggingOptions -- containing required fields as arguments. kinesisFirehoseCloudWatchLoggingOptions :: KinesisFirehoseCloudWatchLoggingOptions -- | Indicates whether CloudWatch Logs logging is enabled. kfcwloEnabled :: Lens' KinesisFirehoseCloudWatchLoggingOptions (Maybe (Val Bool')) -- | The name of the CloudWatch Logs log group that contains the log stream -- that Firehose will use. kfcwloLogGroupName :: Lens' KinesisFirehoseCloudWatchLoggingOptions (Maybe (Val Text)) -- | The name of the CloudWatch Logs log stream that Firehose uses to send -- logs about data delivery. kfcwloLogStreamName :: Lens' KinesisFirehoseCloudWatchLoggingOptions (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions.KinesisFirehoseCloudWatchLoggingOptions instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions.KinesisFirehoseCloudWatchLoggingOptions instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions.KinesisFirehoseCloudWatchLoggingOptions instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions.KinesisFirehoseCloudWatchLoggingOptions -- | BufferingHints is a property of the Amazon Kinesis Firehose -- DeliveryStream that specifies how Amazon Kinesis Firehose (Firehose) -- buffers incoming data while delivering it to the destination. The -- first buffer condition that is satisfied triggers Firehose to deliver -- the data. module Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints -- | Full data type definition for KinesisFirehoseBufferingHints. See -- kinesisFirehoseBufferingHints for a more convenient -- constructor. data KinesisFirehoseBufferingHints KinesisFirehoseBufferingHints :: Val Integer' -> Val Integer' -> KinesisFirehoseBufferingHints [_kinesisFirehoseBufferingHintsIntervalInSeconds] :: KinesisFirehoseBufferingHints -> Val Integer' [_kinesisFirehoseBufferingHintsSizeInMBs] :: KinesisFirehoseBufferingHints -> Val Integer' -- | Constructor for KinesisFirehoseBufferingHints containing -- required fields as arguments. kinesisFirehoseBufferingHints :: Val Integer' -> Val Integer' -> KinesisFirehoseBufferingHints -- | The length of time, in seconds, that Firehose buffers incoming data -- before delivering it to the destination. The default value is 300. The -- minimum value is 60. The maximum value 900. kfbhIntervalInSeconds :: Lens' KinesisFirehoseBufferingHints (Val Integer') -- | The size of the buffer, in MBs, that Firehose uses for incoming data -- before delivering it to the destination. The default value is 5. The -- minimum value is 1. The maximum value is 128. We recommend setting -- SizeInMBs to a value greater than the amount of data you typically -- ingest into the delivery stream in 10 seconds. For example, if you -- typically ingest data at 1 MB/sec set SizeInMBs to be 10 MB or higher. kfbhSizeInMBs :: Lens' KinesisFirehoseBufferingHints (Val Integer') instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints.KinesisFirehoseBufferingHints instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints.KinesisFirehoseBufferingHints instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints.KinesisFirehoseBufferingHints instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints.KinesisFirehoseBufferingHints -- | S3DestinationConfiguration is a property of the -- AWS::KinesisFirehose::DeliveryStream resource and the Amazon Kinesis -- Firehose DeliveryStream ElasticsearchDestinationConfiguration and -- Amazon Kinesis Firehose DeliveryStream -- RedshiftDestinationConfiguration properties that specifies an Amazon -- Simple Storage Service (Amazon S3) destination to which Amazon Kinesis -- Firehose (Firehose) delivers data. module Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration -- | Full data type definition for -- KinesisFirehoseS3DestinationConfiguration. See -- kinesisFirehoseS3DestinationConfiguration for a more convenient -- constructor. data KinesisFirehoseS3DestinationConfiguration KinesisFirehoseS3DestinationConfiguration :: Val Text -> KinesisFirehoseBufferingHints -> Maybe KinesisFirehoseCloudWatchLoggingOptions -> KinesisFirehoseS3CompressionFormat -> Maybe KinesisFirehoseS3EncryptionConfiguration -> Val Text -> Val Text -> KinesisFirehoseS3DestinationConfiguration [_kinesisFirehoseS3DestinationConfigurationBucketARN] :: KinesisFirehoseS3DestinationConfiguration -> Val Text [_kinesisFirehoseS3DestinationConfigurationBufferingHints] :: KinesisFirehoseS3DestinationConfiguration -> KinesisFirehoseBufferingHints [_kinesisFirehoseS3DestinationConfigurationCloudWatchLoggingOptions] :: KinesisFirehoseS3DestinationConfiguration -> Maybe KinesisFirehoseCloudWatchLoggingOptions [_kinesisFirehoseS3DestinationConfigurationCompressionFormat] :: KinesisFirehoseS3DestinationConfiguration -> KinesisFirehoseS3CompressionFormat [_kinesisFirehoseS3DestinationConfigurationEncryptionConfiguration] :: KinesisFirehoseS3DestinationConfiguration -> Maybe KinesisFirehoseS3EncryptionConfiguration [_kinesisFirehoseS3DestinationConfigurationPrefix] :: KinesisFirehoseS3DestinationConfiguration -> Val Text [_kinesisFirehoseS3DestinationConfigurationRoleARN] :: KinesisFirehoseS3DestinationConfiguration -> Val Text -- | Constructor for KinesisFirehoseS3DestinationConfiguration -- containing required fields as arguments. kinesisFirehoseS3DestinationConfiguration :: Val Text -> KinesisFirehoseBufferingHints -> KinesisFirehoseS3CompressionFormat -> Val Text -> Val Text -> KinesisFirehoseS3DestinationConfiguration -- | The Amazon Resource Name (ARN) of the S3 bucket to send data to. kfsdcBucketARN :: Lens' KinesisFirehoseS3DestinationConfiguration (Val Text) -- | Configures how Firehose buffers incoming data while delivering it to -- the S3 bucket. kfsdcBufferingHints :: Lens' KinesisFirehoseS3DestinationConfiguration KinesisFirehoseBufferingHints -- | The Amazon CloudWatch Logs logging options for the delivery stream. kfsdcCloudWatchLoggingOptions :: Lens' KinesisFirehoseS3DestinationConfiguration (Maybe KinesisFirehoseCloudWatchLoggingOptions) -- | The type of compression that Firehose uses to compress the data that -- it delivers to the S3 bucket. For valid values, see the -- CompressionFormat content for the S3DestinationConfiguration data type -- in the Amazon Kinesis Firehose API Reference. kfsdcCompressionFormat :: Lens' KinesisFirehoseS3DestinationConfiguration KinesisFirehoseS3CompressionFormat -- | Configures Amazon Simple Storage Service (Amazon S3) server-side -- encryption. Firehose uses AWS Key Management Service (AWS KMS) to -- encrypt the data that it delivers to your S3 bucket. kfsdcEncryptionConfiguration :: Lens' KinesisFirehoseS3DestinationConfiguration (Maybe KinesisFirehoseS3EncryptionConfiguration) -- | A prefix that Firehose adds to the files that it delivers to the S3 -- bucket. The prefix helps you identify the files that Firehose -- delivered. kfsdcPrefix :: Lens' KinesisFirehoseS3DestinationConfiguration (Val Text) -- | The ARN of an AWS Identity and Access Management (IAM) role that -- grants Firehose access to your S3 bucket and AWS KMS (if you enable -- data encryption). For more information, see Grant Firehose Access to -- an Amazon S3 Destination in the Amazon Kinesis Firehose Developer -- Guide. kfsdcRoleARN :: Lens' KinesisFirehoseS3DestinationConfiguration (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration.KinesisFirehoseS3DestinationConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration.KinesisFirehoseS3DestinationConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration.KinesisFirehoseS3DestinationConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration.KinesisFirehoseS3DestinationConfiguration -- | ElasticsearchDestinationConfiguration is a property of the -- AWS::KinesisFirehose::DeliveryStream resource that specifies an Amazon -- Elasticsearch Service (Amazon ES) domain that Amazon Kinesis Firehose -- (Firehose) delivers data to. module Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration -- | Full data type definition for -- KinesisFirehoseElasticsearchDestinationConfiguration. See -- kinesisFirehoseElasticsearchDestinationConfiguration for a more -- convenient constructor. data KinesisFirehoseElasticsearchDestinationConfiguration KinesisFirehoseElasticsearchDestinationConfiguration :: KinesisFirehoseBufferingHints -> Maybe KinesisFirehoseCloudWatchLoggingOptions -> Val Text -> Val Text -> Val Text -> Maybe KinesisFirehoseElasticsearchRetryOptions -> Val Text -> KinesisFirehoseElasticsearchS3BackupMode -> Maybe KinesisFirehoseS3DestinationConfiguration -> Val Text -> KinesisFirehoseElasticsearchDestinationConfiguration [_kinesisFirehoseElasticsearchDestinationConfigurationBufferingHints] :: KinesisFirehoseElasticsearchDestinationConfiguration -> KinesisFirehoseBufferingHints [_kinesisFirehoseElasticsearchDestinationConfigurationCloudWatchLoggingOptions] :: KinesisFirehoseElasticsearchDestinationConfiguration -> Maybe KinesisFirehoseCloudWatchLoggingOptions [_kinesisFirehoseElasticsearchDestinationConfigurationDomainARN] :: KinesisFirehoseElasticsearchDestinationConfiguration -> Val Text [_kinesisFirehoseElasticsearchDestinationConfigurationIndexName] :: KinesisFirehoseElasticsearchDestinationConfiguration -> Val Text [_kinesisFirehoseElasticsearchDestinationConfigurationIndexRotationPeriod] :: KinesisFirehoseElasticsearchDestinationConfiguration -> Val Text [_kinesisFirehoseElasticsearchDestinationConfigurationRetryOptions] :: KinesisFirehoseElasticsearchDestinationConfiguration -> Maybe KinesisFirehoseElasticsearchRetryOptions [_kinesisFirehoseElasticsearchDestinationConfigurationRoleARN] :: KinesisFirehoseElasticsearchDestinationConfiguration -> Val Text [_kinesisFirehoseElasticsearchDestinationConfigurationS3BackupMode] :: KinesisFirehoseElasticsearchDestinationConfiguration -> KinesisFirehoseElasticsearchS3BackupMode [_kinesisFirehoseElasticsearchDestinationConfigurationS3Configuration] :: KinesisFirehoseElasticsearchDestinationConfiguration -> Maybe KinesisFirehoseS3DestinationConfiguration [_kinesisFirehoseElasticsearchDestinationConfigurationTypeName] :: KinesisFirehoseElasticsearchDestinationConfiguration -> Val Text -- | Constructor for -- KinesisFirehoseElasticsearchDestinationConfiguration containing -- required fields as arguments. kinesisFirehoseElasticsearchDestinationConfiguration :: KinesisFirehoseBufferingHints -> Val Text -> Val Text -> Val Text -> Val Text -> KinesisFirehoseElasticsearchS3BackupMode -> Val Text -> KinesisFirehoseElasticsearchDestinationConfiguration -- | Configures how Firehose buffers incoming data while delivering it to -- the Amazon ES domain. kfedcBufferingHints :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration KinesisFirehoseBufferingHints -- | The Amazon CloudWatch Logs logging options for the delivery stream. kfedcCloudWatchLoggingOptions :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Maybe KinesisFirehoseCloudWatchLoggingOptions) -- | The Amazon Resource Name (ARN) of the Amazon ES domain that Firehose -- delivers data to. kfedcDomainARN :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text) -- | The name of the Elasticsearch index to which Firehose adds data for -- indexing. kfedcIndexName :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text) -- | The frequency of Elasticsearch index rotation. If you enable index -- rotation, Firehose appends a portion of the UTC arrival timestamp to -- the specified index name, and rotates the appended timestamp -- accordingly. For more information, see Index Rotation for the Amazon -- ES Destination in the Amazon Kinesis Firehose Developer Guide. kfedcIndexRotationPeriod :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text) -- | The retry behavior when Firehose is unable to deliver data to Amazon -- ES. Type: Amazon Kinesis Firehose DeliveryStream -- ElasticsearchDestinationConfiguration RetryOptions Type: String kfedcRetryOptions :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Maybe KinesisFirehoseElasticsearchRetryOptions) -- | The ARN of the AWS Identity and Access Management (IAM) role that -- grants Firehose access to your S3 bucket, AWS KMS (if you enable data -- encryption), and Amazon CloudWatch Logs (if you enable logging). For -- more information, see Grant Firehose Access to an Amazon Elasticsearch -- Service Destination in the Amazon Kinesis Firehose Developer Guide. kfedcRoleARN :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text) -- | The condition under which Firehose delivers data to Amazon Simple -- Storage Service (Amazon S3). You can send Amazon S3 all documents (all -- data) or only the documents that Firehose could not deliver to the -- Amazon ES destination. For more information and valid values, see the -- S3BackupMode content for the ElasticsearchDestinationConfiguration -- data type in the Amazon Kinesis Firehose API Reference. kfedcS3BackupMode :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration KinesisFirehoseElasticsearchS3BackupMode -- | The S3 bucket where Firehose backs up incoming data. Type: Amazon -- Kinesis Firehose DeliveryStream S3DestinationConfiguration Type: -- String kfedcS3Configuration :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Maybe KinesisFirehoseS3DestinationConfiguration) -- | The Elasticsearch type name that Amazon ES adds to documents when -- indexing data. kfedcTypeName :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration.KinesisFirehoseElasticsearchDestinationConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration.KinesisFirehoseElasticsearchDestinationConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration.KinesisFirehoseElasticsearchDestinationConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration.KinesisFirehoseElasticsearchDestinationConfiguration -- | RedshiftDestinationConfiguration is a property of the -- AWS::KinesisFirehose::DeliveryStream resource that specifies an Amazon -- Redshift cluster to which Amazon Kinesis Firehose (Firehose) delivers -- data. module Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration -- | Full data type definition for -- KinesisFirehoseRedshiftDestinationConfiguration. See -- kinesisFirehoseRedshiftDestinationConfiguration for a more -- convenient constructor. data KinesisFirehoseRedshiftDestinationConfiguration KinesisFirehoseRedshiftDestinationConfiguration :: Maybe KinesisFirehoseCloudWatchLoggingOptions -> Val Text -> KinesisFirehoseRedshiftCopyCommand -> Val Text -> Val Text -> KinesisFirehoseS3DestinationConfiguration -> Val Text -> KinesisFirehoseRedshiftDestinationConfiguration [_kinesisFirehoseRedshiftDestinationConfigurationCloudWatchLoggingOptions] :: KinesisFirehoseRedshiftDestinationConfiguration -> Maybe KinesisFirehoseCloudWatchLoggingOptions [_kinesisFirehoseRedshiftDestinationConfigurationClusterJDBCURL] :: KinesisFirehoseRedshiftDestinationConfiguration -> Val Text [_kinesisFirehoseRedshiftDestinationConfigurationCopyCommand] :: KinesisFirehoseRedshiftDestinationConfiguration -> KinesisFirehoseRedshiftCopyCommand [_kinesisFirehoseRedshiftDestinationConfigurationPassword] :: KinesisFirehoseRedshiftDestinationConfiguration -> Val Text [_kinesisFirehoseRedshiftDestinationConfigurationRoleARN] :: KinesisFirehoseRedshiftDestinationConfiguration -> Val Text [_kinesisFirehoseRedshiftDestinationConfigurationS3Configuration] :: KinesisFirehoseRedshiftDestinationConfiguration -> KinesisFirehoseS3DestinationConfiguration [_kinesisFirehoseRedshiftDestinationConfigurationUsername] :: KinesisFirehoseRedshiftDestinationConfiguration -> Val Text -- | Constructor for KinesisFirehoseRedshiftDestinationConfiguration -- containing required fields as arguments. kinesisFirehoseRedshiftDestinationConfiguration :: Val Text -> KinesisFirehoseRedshiftCopyCommand -> Val Text -> Val Text -> KinesisFirehoseS3DestinationConfiguration -> Val Text -> KinesisFirehoseRedshiftDestinationConfiguration -- | The Amazon CloudWatch Logs logging options for the delivery stream. kfrdcCloudWatchLoggingOptions :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Maybe KinesisFirehoseCloudWatchLoggingOptions) -- | The connection string that Firehose uses to connect to the Amazon -- Redshift cluster. kfrdcClusterJDBCURL :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Val Text) -- | Configures the Amazon Redshift COPY command that Firehose uses to load -- data into the cluster from the S3 bucket. kfrdcCopyCommand :: Lens' KinesisFirehoseRedshiftDestinationConfiguration KinesisFirehoseRedshiftCopyCommand -- | The password for the Amazon Redshift user that you specified in the -- Username property. kfrdcPassword :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Val Text) -- | The ARN of the AWS Identity and Access Management (IAM) role that -- grants Firehose access to your S3 bucket and AWS KMS (if you enable -- data encryption). For more information, see Grant Firehose Access to -- an Amazon Redshift Destination in the Amazon Kinesis Firehose -- Developer Guide. kfrdcRoleARN :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Val Text) -- | The S3 bucket where Firehose first delivers data. After the data is in -- the bucket, Firehose uses the COPY command to load the data into the -- Amazon Redshift cluster. For the S3 bucket's compression format, don't -- specify SNAPPY or ZIP because the Amazon Redshift COPY command doesn't -- support them. kfrdcS3Configuration :: Lens' KinesisFirehoseRedshiftDestinationConfiguration KinesisFirehoseS3DestinationConfiguration -- | The Amazon Redshift user that has permission to access the Amazon -- Redshift cluster. This user must have INSERT privileges for copying -- data from the S3 bucket to the cluster. kfrdcUsername :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration.KinesisFirehoseRedshiftDestinationConfiguration instance GHC.Show.Show Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration.KinesisFirehoseRedshiftDestinationConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration.KinesisFirehoseRedshiftDestinationConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration.KinesisFirehoseRedshiftDestinationConfiguration -- | The AWS::KinesisFirehose::DeliveryStream resource creates an Amazon -- Kinesis Firehose (Firehose) delivery stream that delivers real-time -- streaming data to an Amazon Simple Storage Service (Amazon S3), Amazon -- Redshift, or Amazon Elasticsearch Service (Amazon ES) destination. For -- more information, see Creating an Amazon Kinesis Firehose Delivery -- Stream in the Amazon Kinesis Firehose Developer Guide. module Stratosphere.Resources.DeliveryStream -- | Full data type definition for DeliveryStream. See -- deliveryStream for a more convenient constructor. data DeliveryStream DeliveryStream :: Maybe (Val Text) -> Maybe KinesisFirehoseElasticsearchDestinationConfiguration -> Maybe KinesisFirehoseRedshiftDestinationConfiguration -> Maybe KinesisFirehoseS3DestinationConfiguration -> DeliveryStream [_deliveryStreamDeliveryStreamName] :: DeliveryStream -> Maybe (Val Text) [_deliveryStreamElasticsearchDestinationConfiguration] :: DeliveryStream -> Maybe KinesisFirehoseElasticsearchDestinationConfiguration [_deliveryStreamRedshiftDestinationConfiguration] :: DeliveryStream -> Maybe KinesisFirehoseRedshiftDestinationConfiguration [_deliveryStreamS3DestinationConfiguration] :: DeliveryStream -> Maybe KinesisFirehoseS3DestinationConfiguration -- | Constructor for DeliveryStream containing required fields as -- arguments. deliveryStream :: DeliveryStream -- | A name for the delivery stream. dsDeliveryStreamName :: Lens' DeliveryStream (Maybe (Val Text)) -- | An Amazon ES destination for the delivery stream. dsElasticsearchDestinationConfiguration :: Lens' DeliveryStream (Maybe KinesisFirehoseElasticsearchDestinationConfiguration) -- | An Amazon Redshift destination for the delivery stream. dsRedshiftDestinationConfiguration :: Lens' DeliveryStream (Maybe KinesisFirehoseRedshiftDestinationConfiguration) -- | An Amazon S3 destination for the delivery stream. dsS3DestinationConfiguration :: Lens' DeliveryStream (Maybe KinesisFirehoseS3DestinationConfiguration) instance GHC.Generics.Generic Stratosphere.Resources.DeliveryStream.DeliveryStream instance GHC.Show.Show Stratosphere.Resources.DeliveryStream.DeliveryStream instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.DeliveryStream.DeliveryStream instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.DeliveryStream.DeliveryStream -- | Policies is a property of the AWS::IAM::Role, AWS::IAM::Group, and -- AWS::IAM::User resources. The Policies property describes what actions -- are allowed on what resources. For more information about IAM -- policies, see Overview of Policies in IAM User Guide. module Stratosphere.ResourceProperties.IAMPolicies -- | Full data type definition for IAMPolicies. See iamPolicies for -- a more convenient constructor. data IAMPolicies IAMPolicies :: Object -> Val Text -> IAMPolicies [_iAMPoliciesPolicyDocument] :: IAMPolicies -> Object [_iAMPoliciesPolicyName] :: IAMPolicies -> Val Text -- | Constructor for IAMPolicies containing required fields as -- arguments. iamPolicies :: Object -> Val Text -> IAMPolicies -- | A policy document that describes what actions are allowed on which -- resources. iampPolicyDocument :: Lens' IAMPolicies Object -- | The name of the policy. iampPolicyName :: Lens' IAMPolicies (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.IAMPolicies.IAMPolicies instance GHC.Show.Show Stratosphere.ResourceProperties.IAMPolicies.IAMPolicies instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.IAMPolicies.IAMPolicies instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.IAMPolicies.IAMPolicies -- | The AWS::IAM::Group type creates an Identity and Access Management -- (IAM) group. This type supports updates. For more information about -- updating stacks, see AWS CloudFormation Stacks Updates. module Stratosphere.Resources.Group -- | Full data type definition for Group. See group for a more -- convenient constructor. data Group Group :: Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe [IAMPolicies] -> Group [_groupGroupName] :: Group -> Maybe (Val Text) [_groupManagedPolicyArns] :: Group -> Maybe [Val Text] [_groupPath] :: Group -> Maybe (Val Text) [_groupPolicies] :: Group -> Maybe [IAMPolicies] -- | Constructor for Group containing required fields as arguments. group :: Group -- | A name for the IAM group. For valid values, see the GroupName -- parameter for the CreateGroup action in the IAM API Reference. If you -- don't specify a name, AWS CloudFormation generates a unique physical -- ID and uses that ID for the group name. gGroupName :: Lens' Group (Maybe (Val Text)) -- | One or more managed policy ARNs to attach to this group. gManagedPolicyArns :: Lens' Group (Maybe [Val Text]) -- | The path to the group. For more information about paths, see -- Identifiers for IAM Entities in Using IAM. gPath :: Lens' Group (Maybe (Val Text)) -- | The policies to associate with this group. For information about -- policies, see Overview of Policies in Using IAM. gPolicies :: Lens' Group (Maybe [IAMPolicies]) instance GHC.Generics.Generic Stratosphere.Resources.Group.Group instance GHC.Show.Show Stratosphere.Resources.Group.Group instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Group.Group instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Group.Group -- | Creates an AWS Identity and Access Management (IAM) role. An IAM role -- can be used to enable applications running on an Amazon EC2 instance -- to securely access your AWS resources. For more information about IAM -- roles, see Working with Roles in the AWS Identity and Access -- Management User Guide. module Stratosphere.Resources.IAMRole -- | Full data type definition for IAMRole. See iamRole for a more -- convenient constructor. data IAMRole IAMRole :: Object -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe [IAMPolicies] -> Maybe (Val Text) -> IAMRole [_iAMRoleAssumeRolePolicyDocument] :: IAMRole -> Object [_iAMRoleManagedPolicyArns] :: IAMRole -> Maybe [Val Text] [_iAMRolePath] :: IAMRole -> Maybe (Val Text) [_iAMRolePolicies] :: IAMRole -> Maybe [IAMPolicies] [_iAMRoleRoleName] :: IAMRole -> Maybe (Val Text) -- | Constructor for IAMRole containing required fields as -- arguments. iamRole :: Object -> IAMRole -- | The IAM assume role policy that is associated with this role. iamrAssumeRolePolicyDocument :: Lens' IAMRole Object -- | One or more managed policy ARNs to attach to this role. iamrManagedPolicyArns :: Lens' IAMRole (Maybe [Val Text]) -- | The path associated with this role. For information about IAM paths, -- see Friendly Names and Paths in IAM User Guide. iamrPath :: Lens' IAMRole (Maybe (Val Text)) -- | The policies to associate with this role. Policies can also be -- specified externally. For sample templates that demonstrates both -- embedded and external policies, see Template Examples. If you specify -- multiple polices, specify unique values for the policy name. If you -- don't, updates to the IAM role will fail. Note If an external policy -- (such as AWS::IAM::Policy or AWS::IAM::ManagedPolicy) has a Ref to a -- role and if a resource (such as AWS::ECS::Service) also has a Ref to -- the same role, add a DependsOn attribute to the resource so that the -- resource depends on the external policy. This dependency ensures that -- the role's policy is available throughout the resource's lifecycle. -- For example, when you delete a stack with an AWS::ECS::Service -- resource, the DependsOn attribute ensures that the AWS::ECS::Service -- resource can complete its deletion before its role's policy is -- deleted. iamrPolicies :: Lens' IAMRole (Maybe [IAMPolicies]) -- | A name for the IAM role. For valid values, see the RoleName parameter -- for the CreateRole action in the IAM API Reference. If you don't -- specify a name, AWS CloudFormation generates a unique physical ID and -- uses that ID for the role name. iamrRoleName :: Lens' IAMRole (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.IAMRole.IAMRole instance GHC.Show.Show Stratosphere.Resources.IAMRole.IAMRole instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.IAMRole.IAMRole instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.IAMRole.IAMRole -- | The AWS::IAM::User type creates a user. module Stratosphere.Resources.User -- | Full data type definition for User. See user for a more -- convenient constructor. data User User :: Maybe [Val Text] -> Maybe UserLoginProfile -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe [IAMPolicies] -> Maybe (Val Text) -> User [_userGroups] :: User -> Maybe [Val Text] [_userLoginProfile] :: User -> Maybe UserLoginProfile [_userManagedPolicyArns] :: User -> Maybe [Val Text] [_userPath] :: User -> Maybe (Val Text) [_userPolicies] :: User -> Maybe [IAMPolicies] [_userUserName] :: User -> Maybe (Val Text) -- | Constructor for User containing required fields as arguments. user :: User -- | A name of a group to which you want to add the user. uGroups :: Lens' User (Maybe [Val Text]) -- | Creates a login profile so that the user can access the AWS Management -- Console. uLoginProfile :: Lens' User (Maybe UserLoginProfile) -- | One or more managed policy ARNs to attach to this user. uManagedPolicyArns :: Lens' User (Maybe [Val Text]) -- | The path for the user name. For more information about paths, see -- Identifiers for IAM Entities in Using AWS Identity and Access -- Management. uPath :: Lens' User (Maybe (Val Text)) -- | The policies to associate with this user. For information about -- policies, see Overview of Policies in [Using IAM]. Note If you specify -- multiple polices, specify unique values for the policy name. If you -- don't, updates to the IAM user will fail. uPolicies :: Lens' User (Maybe [IAMPolicies]) -- | A name for the IAM user. For valid values, see the UserName parameter -- for the CreateUser action in the IAM API Reference. If you don't -- specify a name, AWS CloudFormation generates a unique physical ID and -- uses that ID for the group name. uUserName :: Lens' User (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.User.User instance GHC.Show.Show Stratosphere.Resources.User.User instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.User.User instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.User.User -- | The ElasticLoadBalancing HealthCheck is an embedded property of the -- AWS::ElasticLoadBalancing::LoadBalancer type. module Stratosphere.ResourceProperties.HealthCheck -- | Full data type definition for HealthCheck. See healthCheck for -- a more convenient constructor. data HealthCheck HealthCheck :: Val Text -> Val Text -> Val Text -> Val Text -> Val Text -> HealthCheck [_healthCheckHealthyThreshold] :: HealthCheck -> Val Text [_healthCheckInterval] :: HealthCheck -> Val Text [_healthCheckTarget] :: HealthCheck -> Val Text [_healthCheckTimeout] :: HealthCheck -> Val Text [_healthCheckUnhealthyThreshold] :: HealthCheck -> Val Text -- | Constructor for HealthCheck containing required fields as -- arguments. healthCheck :: Val Text -> Val Text -> Val Text -> Val Text -> Val Text -> HealthCheck -- | Specifies the number of consecutive health probe successes required -- before moving the instance to the Healthy state. hcHealthyThreshold :: Lens' HealthCheck (Val Text) -- | Specifies the approximate interval, in seconds, between health checks -- of an individual instance. hcInterval :: Lens' HealthCheck (Val Text) -- | Specifies the instance's protocol and port to check. The protocol can -- be TCP, HTTP, HTTPS, or SSL. The range of valid ports is 1 through -- 65535. hcTarget :: Lens' HealthCheck (Val Text) -- | Specifies the amount of time, in seconds, during which no response -- means a failed health probe. This value must be less than the value -- for Interval. hcTimeout :: Lens' HealthCheck (Val Text) -- | Specifies the number of consecutive health probe failures required -- before moving the instance to the Unhealthy state. hcUnhealthyThreshold :: Lens' HealthCheck (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.HealthCheck.HealthCheck instance GHC.Show.Show Stratosphere.ResourceProperties.HealthCheck.HealthCheck instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.HealthCheck.HealthCheck instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.HealthCheck.HealthCheck -- | The ElasticLoadBalancing policy type is an embedded property of the -- AWS::ElasticLoadBalancing::LoadBalancer resource. You associate -- policies with a listener by referencing a policy's name in the -- listener's PolicyNames property. module Stratosphere.ResourceProperties.ELBPolicy -- | Full data type definition for ELBPolicy. See elbPolicy for a -- more convenient constructor. data ELBPolicy ELBPolicy :: [NameValuePair] -> Maybe [Val Text] -> Maybe [Val Text] -> Val Text -> Val Text -> ELBPolicy [_eLBPolicyAttributes] :: ELBPolicy -> [NameValuePair] [_eLBPolicyInstancePorts] :: ELBPolicy -> Maybe [Val Text] [_eLBPolicyLoadBalancerPorts] :: ELBPolicy -> Maybe [Val Text] [_eLBPolicyPolicyName] :: ELBPolicy -> Val Text [_eLBPolicyPolicyType] :: ELBPolicy -> Val Text -- | Constructor for ELBPolicy containing required fields as -- arguments. elbPolicy :: [NameValuePair] -> Val Text -> Val Text -> ELBPolicy -- | A list of arbitrary attributes for this policy. If you don't need to -- specify any policy attributes, specify an empty list ([]). elbpAttributes :: Lens' ELBPolicy [NameValuePair] -- | A list of instance ports for the policy. These are the ports -- associated with the back-end server. elbpInstancePorts :: Lens' ELBPolicy (Maybe [Val Text]) -- | A list of external load balancer ports for the policy. elbpLoadBalancerPorts :: Lens' ELBPolicy (Maybe [Val Text]) -- | A name for this policy that is unique to the load balancer. elbpPolicyName :: Lens' ELBPolicy (Val Text) -- | The name of the policy type for this policy. This must be one of the -- types reported by the Elastic Load Balancing -- DescribeLoadBalancerPolicyTypes action. elbpPolicyType :: Lens' ELBPolicy (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ELBPolicy.ELBPolicy instance GHC.Show.Show Stratosphere.ResourceProperties.ELBPolicy.ELBPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ELBPolicy.ELBPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ELBPolicy.ELBPolicy -- | AssociationParameters is a property of the Amazon EC2 Instance -- SsmAssociations property that specifies input parameter values for an -- Amazon EC2 Simple Systems Manager (SSM) document. module Stratosphere.ResourceProperties.EC2SsmAssociationParameters -- | Full data type definition for EC2SsmAssociationParameters. See -- ec2SsmAssociationParameters for a more convenient constructor. data EC2SsmAssociationParameters EC2SsmAssociationParameters :: Val Text -> [Val Text] -> EC2SsmAssociationParameters [_eC2SsmAssociationParametersKey] :: EC2SsmAssociationParameters -> Val Text [_eC2SsmAssociationParametersValue] :: EC2SsmAssociationParameters -> [Val Text] -- | Constructor for EC2SsmAssociationParameters containing required -- fields as arguments. ec2SsmAssociationParameters :: Val Text -> [Val Text] -> EC2SsmAssociationParameters -- | The name of an input parameter that is in the associated SSM document. ecsapKey :: Lens' EC2SsmAssociationParameters (Val Text) -- | The value of an input parameter. ecsapValue :: Lens' EC2SsmAssociationParameters [Val Text] instance GHC.Generics.Generic Stratosphere.ResourceProperties.EC2SsmAssociationParameters.EC2SsmAssociationParameters instance GHC.Show.Show Stratosphere.ResourceProperties.EC2SsmAssociationParameters.EC2SsmAssociationParameters instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.EC2SsmAssociationParameters.EC2SsmAssociationParameters instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.EC2SsmAssociationParameters.EC2SsmAssociationParameters -- | SsmAssociations is a property of the AWS::EC2::Instance resource that -- specifies the Amazon EC2 Simple Systems Manager (SSM) document and -- parameter values to associate with an instance. module Stratosphere.ResourceProperties.EC2SsmAssociations -- | Full data type definition for EC2SsmAssociations. See -- ec2SsmAssociations for a more convenient constructor. data EC2SsmAssociations EC2SsmAssociations :: Maybe [EC2SsmAssociationParameters] -> Val Text -> EC2SsmAssociations [_eC2SsmAssociationsAssociationParameters] :: EC2SsmAssociations -> Maybe [EC2SsmAssociationParameters] [_eC2SsmAssociationsDocumentName] :: EC2SsmAssociations -> Val Text -- | Constructor for EC2SsmAssociations containing required fields -- as arguments. ec2SsmAssociations :: Val Text -> EC2SsmAssociations -- | The input parameter values to use with the associated SSM document. ecsaAssociationParameters :: Lens' EC2SsmAssociations (Maybe [EC2SsmAssociationParameters]) -- | The name of an SSM document to associate with the instance. ecsaDocumentName :: Lens' EC2SsmAssociations (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.EC2SsmAssociations.EC2SsmAssociations instance GHC.Show.Show Stratosphere.ResourceProperties.EC2SsmAssociations.EC2SsmAssociations instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.EC2SsmAssociations.EC2SsmAssociations instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.EC2SsmAssociations.EC2SsmAssociations -- | The EC2 MountPoint property is an embedded property of the -- AWS::EC2::Instance type. module Stratosphere.ResourceProperties.EC2MountPoint -- | Full data type definition for EC2MountPoint. See ec2MountPoint -- for a more convenient constructor. data EC2MountPoint EC2MountPoint :: Val Text -> Val Text -> EC2MountPoint [_eC2MountPointDevice] :: EC2MountPoint -> Val Text [_eC2MountPointVolumeId] :: EC2MountPoint -> Val Text -- | Constructor for EC2MountPoint containing required fields as -- arguments. ec2MountPoint :: Val Text -> Val Text -> EC2MountPoint -- | How the device is exposed to the instance (such as devsdh, or -- xvdh). ecmpDevice :: Lens' EC2MountPoint (Val Text) -- | The ID of the Amazon EBS volume. The volume and instance must be -- within the same Availability Zone and the instance must be running. ecmpVolumeId :: Lens' EC2MountPoint (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.EC2MountPoint.EC2MountPoint instance GHC.Show.Show Stratosphere.ResourceProperties.EC2MountPoint.EC2MountPoint instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.EC2MountPoint.EC2MountPoint instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.EC2MountPoint.EC2MountPoint -- | The Amazon Elastic Block Store block device type is an embedded -- property of the Amazon EC2 Block Device Mapping Property property. module Stratosphere.ResourceProperties.EBSBlockDevice -- | Full data type definition for EBSBlockDevice. See -- ebsBlockDevice for a more convenient constructor. data EBSBlockDevice EBSBlockDevice :: Maybe (Val Bool') -> Maybe (Val Bool') -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> EBSBlockDevice [_eBSBlockDeviceDeleteOnTermination] :: EBSBlockDevice -> Maybe (Val Bool') [_eBSBlockDeviceEncrypted] :: EBSBlockDevice -> Maybe (Val Bool') [_eBSBlockDeviceIops] :: EBSBlockDevice -> Maybe (Val Integer') [_eBSBlockDeviceSnapshotId] :: EBSBlockDevice -> Maybe (Val Text) [_eBSBlockDeviceVolumeSize] :: EBSBlockDevice -> Maybe (Val Text) [_eBSBlockDeviceVolumeType] :: EBSBlockDevice -> Maybe (Val Text) -- | Constructor for EBSBlockDevice containing required fields as -- arguments. ebsBlockDevice :: EBSBlockDevice -- | Determines whether to delete the volume on instance termination. The -- default value is true. ebsbdDeleteOnTermination :: Lens' EBSBlockDevice (Maybe (Val Bool')) -- | Indicates whether the volume is encrypted. Encrypted Amazon EBS -- volumes can only be attached to instance types that support Amazon EBS -- encryption. Volumes that are created from encrypted snapshots are -- automatically encrypted. You cannot create an encrypted volume from an -- unencrypted snapshot or vice versa. If your AMI uses encrypted -- volumes, you can only launch the AMI on supported instance types. For -- more information, see Amazon EBS encryption in the Amazon EC2 User -- Guide for Linux Instances. ebsbdEncrypted :: Lens' EBSBlockDevice (Maybe (Val Bool')) -- | The number of I/O operations per second (IOPS) that the volume -- supports. This can be an integer from 100 - 2000. ebsbdIops :: Lens' EBSBlockDevice (Maybe (Val Integer')) -- | The snapshot ID of the volume to use to create a block device. ebsbdSnapshotId :: Lens' EBSBlockDevice (Maybe (Val Text)) -- | The volume size, in gibibytes (GiB). This can be a number from 1 – -- 1024. If the volume type is io1, the minimum value is 10. ebsbdVolumeSize :: Lens' EBSBlockDevice (Maybe (Val Text)) -- | The volume type. You can specify standard, io1, or gp2. If you set the -- type to io1, you must also set the Iops property. For more information -- about these values and the default value, see CreateVolume in the -- Amazon EC2 API Reference. ebsbdVolumeType :: Lens' EBSBlockDevice (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.EBSBlockDevice.EBSBlockDevice instance GHC.Show.Show Stratosphere.ResourceProperties.EBSBlockDevice.EBSBlockDevice instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.EBSBlockDevice.EBSBlockDevice instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.EBSBlockDevice.EBSBlockDevice -- | The Amazon EC2 block device mapping property is an embedded property -- of the AWS::EC2::Instance resource. For block device mappings for an -- Auto Scaling launch configuration, see AutoScaling Block Device -- Mapping. module Stratosphere.ResourceProperties.EC2BlockDeviceMapping -- | Full data type definition for EC2BlockDeviceMapping. See -- ec2BlockDeviceMapping for a more convenient constructor. data EC2BlockDeviceMapping EC2BlockDeviceMapping :: Val Text -> Maybe EBSBlockDevice -> Maybe () -> Maybe (Val Text) -> EC2BlockDeviceMapping [_eC2BlockDeviceMappingDeviceName] :: EC2BlockDeviceMapping -> Val Text [_eC2BlockDeviceMappingEbs] :: EC2BlockDeviceMapping -> Maybe EBSBlockDevice [_eC2BlockDeviceMappingNoDevice] :: EC2BlockDeviceMapping -> Maybe () [_eC2BlockDeviceMappingVirtualName] :: EC2BlockDeviceMapping -> Maybe (Val Text) -- | Constructor for EC2BlockDeviceMapping containing required -- fields as arguments. ec2BlockDeviceMapping :: Val Text -> EC2BlockDeviceMapping -- | The name of the device within Amazon EC2. ecbdmDeviceName :: Lens' EC2BlockDeviceMapping (Val Text) ecbdmEbs :: Lens' EC2BlockDeviceMapping (Maybe EBSBlockDevice) -- | This property can be used to unmap a defined device. ecbdmNoDevice :: Lens' EC2BlockDeviceMapping (Maybe ()) -- | The name of the virtual device. The name must be in the form -- ephemeralX where X is a number starting from zero (0); for example, -- ephemeral0. ecbdmVirtualName :: Lens' EC2BlockDeviceMapping (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.EC2BlockDeviceMapping.EC2BlockDeviceMapping instance GHC.Show.Show Stratosphere.ResourceProperties.EC2BlockDeviceMapping.EC2BlockDeviceMapping instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.EC2BlockDeviceMapping.EC2BlockDeviceMapping instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.EC2BlockDeviceMapping.EC2BlockDeviceMapping -- | The AWS::EC2::Instance type creates an Amazon EC2 instance. If an -- Elastic IP address is attached to your instance, AWS CloudFormation -- reattaches the Elastic IP address after it updates the instance. For -- more information about updating stacks, see AWS CloudFormation Stacks -- Updates. module Stratosphere.Resources.EC2Instance -- | Full data type definition for EC2Instance. See ec2Instance for -- a more convenient constructor. data EC2Instance EC2Instance :: Maybe (Val Text) -> Maybe [EC2BlockDeviceMapping] -> Maybe (Val Bool') -> Maybe (Val Bool') -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Bool') -> Maybe [NetworkInterface] -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe [Val Text] -> Maybe (Val Bool') -> Maybe [EC2SsmAssociations] -> Maybe (Val Text) -> Maybe [ResourceTag] -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [EC2MountPoint] -> Maybe (Val Text) -> EC2Instance [_eC2InstanceAvailabilityZone] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceBlockDeviceMappings] :: EC2Instance -> Maybe [EC2BlockDeviceMapping] [_eC2InstanceDisableApiTermination] :: EC2Instance -> Maybe (Val Bool') [_eC2InstanceEbsOptimized] :: EC2Instance -> Maybe (Val Bool') [_eC2InstanceIamInstanceProfile] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceImageId] :: EC2Instance -> Val Text [_eC2InstanceInstanceInitiatedShutdownBehavior] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceInstanceType] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceKernelId] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceKeyName] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceMonitoring] :: EC2Instance -> Maybe (Val Bool') [_eC2InstanceNetworkInterfaces] :: EC2Instance -> Maybe [NetworkInterface] [_eC2InstancePlacementGroupName] :: EC2Instance -> Maybe (Val Text) [_eC2InstancePrivateIpAddress] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceRamdiskId] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceSecurityGroupIds] :: EC2Instance -> Maybe [Val Text] [_eC2InstanceSecurityGroups] :: EC2Instance -> Maybe [Val Text] [_eC2InstanceSourceDestCheck] :: EC2Instance -> Maybe (Val Bool') [_eC2InstanceSsmAssociations] :: EC2Instance -> Maybe [EC2SsmAssociations] [_eC2InstanceSubnetId] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceTags] :: EC2Instance -> Maybe [ResourceTag] [_eC2InstanceTenancy] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceUserData] :: EC2Instance -> Maybe (Val Text) [_eC2InstanceVolumes] :: EC2Instance -> Maybe [EC2MountPoint] [_eC2InstanceAdditionalInfo] :: EC2Instance -> Maybe (Val Text) -- | Constructor for EC2Instance containing required fields as -- arguments. ec2Instance :: Val Text -> EC2Instance -- | Specifies the name of the Availability Zone in which the instance is -- located. For more information about AWS regions and Availability -- Zones, see Regions and Availability Zones in the Amazon EC2 User -- Guide. eciAvailabilityZone :: Lens' EC2Instance (Maybe (Val Text)) -- | Defines a set of Amazon Elastic Block Store block device mappings, -- ephemeral instance store block device mappings, or both. For more -- information, see Amazon Elastic Block Store or Amazon EC2 Instance -- Store in the Amazon EC2 User Guide for Linux Instances. eciBlockDeviceMappings :: Lens' EC2Instance (Maybe [EC2BlockDeviceMapping]) -- | Specifies whether the instance can be terminated through the API. eciDisableApiTermination :: Lens' EC2Instance (Maybe (Val Bool')) -- | Specifies whether the instance is optimized for Amazon Elastic Block -- Store I/O. This optimization provides dedicated throughput to Amazon -- EBS and an optimized configuration stack to provide optimal EBS I/O -- performance. For more information about the instance types that can be -- launched as Amazon EBS optimized instances, see Amazon EBS-Optimized -- Instances in the Amazon Elastic Compute Cloud User Guide. Additional -- fees are incurred when using Amazon EBS-optimized instances. eciEbsOptimized :: Lens' EC2Instance (Maybe (Val Bool')) -- | The physical ID (resource name) of an instance profile or a reference -- to an AWS::IAM::InstanceProfile resource. For more information about -- IAM roles, see Working with Roles in the AWS Identity and Access -- Management User Guide. eciIamInstanceProfile :: Lens' EC2Instance (Maybe (Val Text)) -- | Provides the unique ID of the Amazon Machine Image (AMI) that was -- assigned during registration. eciImageId :: Lens' EC2Instance (Val Text) -- | Indicates whether an instance stops or terminates when you shut down -- the instance from the instance's operating system shutdown command. -- You can specify stop or terminate. For more information, see the -- RunInstances command in the Amazon EC2 API Reference. eciInstanceInitiatedShutdownBehavior :: Lens' EC2Instance (Maybe (Val Text)) -- | The instance type, such as t2.micro. The default type is "m1.small". -- For a list of instance types, see Instance Families and Types. eciInstanceType :: Lens' EC2Instance (Maybe (Val Text)) -- | The kernel ID. eciKernelId :: Lens' EC2Instance (Maybe (Val Text)) -- | Provides the name of the Amazon EC2 key pair. eciKeyName :: Lens' EC2Instance (Maybe (Val Text)) -- | Specifies whether monitoring is enabled for the instance. eciMonitoring :: Lens' EC2Instance (Maybe (Val Bool')) -- | A list of embedded objects that describe the network interfaces to -- associate with this instance. Note If this resource has a public IP -- address and is also in a VPC that is defined in the same template, you -- must use the DependsOn attribute to declare a dependency on the -- VPC-gateway attachment. For more information, see DependsOn Attribute. eciNetworkInterfaces :: Lens' EC2Instance (Maybe [NetworkInterface]) -- | The name of an existing placement group that you want to launch the -- instance into (for cluster instances). eciPlacementGroupName :: Lens' EC2Instance (Maybe (Val Text)) -- | The private IP address for this instance. Important If you make an -- update to an instance that requires replacement, you must assign a new -- private IP address. During a replacement, AWS CloudFormation creates a -- new instance but doesn't delete the old instance until the stack has -- successfully updated. If the stack update fails, AWS CloudFormation -- uses the old instance in order to roll back the stack to the previous -- working state. The old and new instances cannot have the same private -- IP address. (Optional) If you're using Amazon VPC, you can use this -- parameter to assign the instance a specific available IP address from -- the subnet (for example, 10.0.0.25). By default, Amazon VPC selects an -- IP address from the subnet for the instance. eciPrivateIpAddress :: Lens' EC2Instance (Maybe (Val Text)) -- | The ID of the RAM disk to select. Some kernels require additional -- drivers at launch. Check the kernel requirements for information about -- whether you need to specify a RAM disk. To find kernel requirements, -- go to the AWS Resource Center and search for the kernel ID. eciRamdiskId :: Lens' EC2Instance (Maybe (Val Text)) -- | A list that contains the security group IDs for VPC security groups to -- assign to the Amazon EC2 instance. If you specified the -- NetworkInterfaces property, do not specify this property. eciSecurityGroupIds :: Lens' EC2Instance (Maybe [Val Text]) -- | Valid only for Amazon EC2 security groups. A list that contains the -- Amazon EC2 security groups to assign to the Amazon EC2 instance. The -- list can contain both the name of existing Amazon EC2 security groups -- or references to AWS::EC2::SecurityGroup resources created in the -- template. eciSecurityGroups :: Lens' EC2Instance (Maybe [Val Text]) -- | Controls whether source/destination checking is enabled on the -- instance. Also determines if an instance in a VPC will perform network -- address translation (NAT). A value of "true" means that -- source/destination checking is enabled, and a value of "false" means -- that checking is disabled. For the instance to perform NAT, the value -- must be "false". For more information, see NAT Instances in the Amazon -- Virtual Private Cloud User Guide. eciSourceDestCheck :: Lens' EC2Instance (Maybe (Val Bool')) -- | The Amazon EC2 Simple Systems Manager (SSM) document and parameter -- values to associate with this instance. To use this property, you must -- specify an IAM role for the instance. For more information, see -- Prerequisites for Remotely Running Commands on EC2 Instances in the -- Amazon EC2 User Guide for Microsoft Windows Instances. Note You can -- currently associate only one document with an instance. eciSsmAssociations :: Lens' EC2Instance (Maybe [EC2SsmAssociations]) -- | If you're using Amazon VPC, this property specifies the ID of the -- subnet that you want to launch the instance into. If you specified the -- NetworkInterfaces property, do not specify this property. eciSubnetId :: Lens' EC2Instance (Maybe (Val Text)) -- | An arbitrary set of tags (key–value pairs) for this instance. eciTags :: Lens' EC2Instance (Maybe [ResourceTag]) -- | The tenancy of the instance that you want to launch. This value can be -- either "default" or "dedicated". An instance that has a tenancy value -- of "dedicated" runs on single-tenant hardware and can be launched only -- into a VPC. For more information, see Using EC2 Dedicated Instances -- Within Your VPC in the Amazon VPC User Guide. eciTenancy :: Lens' EC2Instance (Maybe (Val Text)) -- | Base64-encoded MIME user data that is made available to the instances. eciUserData :: Lens' EC2Instance (Maybe (Val Text)) -- | The Amazon EBS volumes to attach to the instance. Note Before -- detaching a volume, unmount any file systems on the device within your -- operating system. If you don't unmount the file system, a volume might -- get stuck in a busy state while detaching. eciVolumes :: Lens' EC2Instance (Maybe [EC2MountPoint]) -- | Reserved. eciAdditionalInfo :: Lens' EC2Instance (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.EC2Instance.EC2Instance instance GHC.Show.Show Stratosphere.Resources.EC2Instance.EC2Instance instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.EC2Instance.EC2Instance instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.EC2Instance.EC2Instance -- | StreamSpecification is a property of the AWS::DynamoDB::Table resource -- that defines the settings of a DynamoDB table's stream. module Stratosphere.ResourceProperties.DynamoDBStreamSpecification -- | Full data type definition for DynamoDBStreamSpecification. See -- dynamoDBStreamSpecification for a more convenient constructor. data DynamoDBStreamSpecification DynamoDBStreamSpecification :: StreamViewType -> DynamoDBStreamSpecification [_dynamoDBStreamSpecificationStreamViewType] :: DynamoDBStreamSpecification -> StreamViewType -- | Constructor for DynamoDBStreamSpecification containing required -- fields as arguments. dynamoDBStreamSpecification :: StreamViewType -> DynamoDBStreamSpecification -- | Determines the information that the stream captures when an item in -- the table is modified. For valid values, see StreamSpecification in -- the Amazon DynamoDB API Reference. ddbssStreamViewType :: Lens' DynamoDBStreamSpecification StreamViewType instance GHC.Generics.Generic Stratosphere.ResourceProperties.DynamoDBStreamSpecification.DynamoDBStreamSpecification instance GHC.Show.Show Stratosphere.ResourceProperties.DynamoDBStreamSpecification.DynamoDBStreamSpecification instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.DynamoDBStreamSpecification.DynamoDBStreamSpecification instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.DynamoDBStreamSpecification.DynamoDBStreamSpecification -- | Describes a set of provisioned throughput values for an -- AWS::DynamoDB::Table resource. DynamoDB uses these capacity units to -- allocate sufficient resources to provide the requested throughput. For -- a complete discussion of DynamoDB provisioned throughput values, see -- Specifying Read and Write Requirements in the DynamoDB Developer -- Guide. module Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput -- | Full data type definition for DynamoDBProvisionedThroughput. See -- dynamoDBProvisionedThroughput for a more convenient -- constructor. data DynamoDBProvisionedThroughput DynamoDBProvisionedThroughput :: Val Integer' -> Val Integer' -> DynamoDBProvisionedThroughput [_dynamoDBProvisionedThroughputReadCapacityUnits] :: DynamoDBProvisionedThroughput -> Val Integer' [_dynamoDBProvisionedThroughputWriteCapacityUnits] :: DynamoDBProvisionedThroughput -> Val Integer' -- | Constructor for DynamoDBProvisionedThroughput containing -- required fields as arguments. dynamoDBProvisionedThroughput :: Val Integer' -> Val Integer' -> DynamoDBProvisionedThroughput -- | Sets the desired minimum number of consistent reads of items (up to -- 1KB in size) per second for the specified table before Amazon DynamoDB -- balances the load. ddbptReadCapacityUnits :: Lens' DynamoDBProvisionedThroughput (Val Integer') -- | Sets the desired minimum number of consistent writes of items (up to -- 1KB in size) per second for the specified table before Amazon DynamoDB -- balances the load. ddbptWriteCapacityUnits :: Lens' DynamoDBProvisionedThroughput (Val Integer') instance GHC.Generics.Generic Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput.DynamoDBProvisionedThroughput instance GHC.Show.Show Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput.DynamoDBProvisionedThroughput instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput.DynamoDBProvisionedThroughput instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput.DynamoDBProvisionedThroughput -- | Attributes that are copied (projected) from the source table into the -- index. These attributes are additions to the primary key attributes -- and index key attributes, which are automatically projected. module Stratosphere.ResourceProperties.DynamoDBProjectionObject -- | Full data type definition for DynamoDBProjectionObject. See -- dynamoDBProjectionObject for a more convenient constructor. data DynamoDBProjectionObject DynamoDBProjectionObject :: Maybe [Val Text] -> Maybe ProjectionType -> DynamoDBProjectionObject [_dynamoDBProjectionObjectNonKeyAttributes] :: DynamoDBProjectionObject -> Maybe [Val Text] [_dynamoDBProjectionObjectProjectionType] :: DynamoDBProjectionObject -> Maybe ProjectionType -- | Constructor for DynamoDBProjectionObject containing required -- fields as arguments. dynamoDBProjectionObject :: DynamoDBProjectionObject -- | The non-key attribute names that are projected into the index. For -- local secondary indexes, the total count of NonKeyAttributes summed -- across all of the local secondary indexes must not exceed 20. If you -- project the same attribute into two different indexes, this counts as -- two distinct attributes in determining the total. ddbpoNonKeyAttributes :: Lens' DynamoDBProjectionObject (Maybe [Val Text]) -- | The set of attributes that are projected into the index: Only the -- index and primary keys are projected into the index. Only the -- specified table attributes are projected into the index. The list of -- projected attributes are in NonKeyAttributes. All of the table -- attributes are projected into the index. ddbpoProjectionType :: Lens' DynamoDBProjectionObject (Maybe ProjectionType) instance GHC.Generics.Generic Stratosphere.ResourceProperties.DynamoDBProjectionObject.DynamoDBProjectionObject instance GHC.Show.Show Stratosphere.ResourceProperties.DynamoDBProjectionObject.DynamoDBProjectionObject instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.DynamoDBProjectionObject.DynamoDBProjectionObject instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.DynamoDBProjectionObject.DynamoDBProjectionObject -- | Describes a primary key for the AWS::DynamoDB::Table resource or a key -- schema for an index. Each element is composed of an AttributeName and -- KeyType. For the primary key of an Amazon DynamoDB table that consists -- of only a hash attribute, specify one element with a KeyType of HASH. -- For the primary key of an Amazon DynamoDB table that consists of a -- hash and range attributes, specify two elements: one with a KeyType of -- HASH and one with a KeyType of RANGE. For a complete discussion of -- DynamoDB primary keys, see Primary Key in the Amazon DynamoDB -- Developer Guide. module Stratosphere.ResourceProperties.DynamoDBKeySchema -- | Full data type definition for DynamoDBKeySchema. See -- dynamoDBKeySchema for a more convenient constructor. data DynamoDBKeySchema DynamoDBKeySchema :: Val Text -> KeyType -> DynamoDBKeySchema [_dynamoDBKeySchemaAttributeName] :: DynamoDBKeySchema -> Val Text [_dynamoDBKeySchemaKeyType] :: DynamoDBKeySchema -> KeyType -- | Constructor for DynamoDBKeySchema containing required fields as -- arguments. dynamoDBKeySchema :: Val Text -> KeyType -> DynamoDBKeySchema -- | The attribute name that is used as the primary key for this table. -- Primary key element names can be 1 – 255 characters long and have no -- character restrictions. ddbksAttributeName :: Lens' DynamoDBKeySchema (Val Text) -- | Represents the attribute data, consisting of the data type and the -- attribute value itself. You can specify HASH or RANGE. ddbksKeyType :: Lens' DynamoDBKeySchema KeyType instance GHC.Generics.Generic Stratosphere.ResourceProperties.DynamoDBKeySchema.DynamoDBKeySchema instance GHC.Show.Show Stratosphere.ResourceProperties.DynamoDBKeySchema.DynamoDBKeySchema instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.DynamoDBKeySchema.DynamoDBKeySchema instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.DynamoDBKeySchema.DynamoDBKeySchema -- | Describes local secondary indexes for the AWS::DynamoDB::Table -- resource. Each index is scoped to a given hash key value. Tables with -- one or more local secondary indexes are subject to an item collection -- size limit, where the amount of data within a given item collection -- cannot exceed 10 GB. module Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex -- | Full data type definition for DynamoDBLocalSecondaryIndex. See -- dynamoDBLocalSecondaryIndex for a more convenient constructor. data DynamoDBLocalSecondaryIndex DynamoDBLocalSecondaryIndex :: Val Text -> [DynamoDBKeySchema] -> DynamoDBProjectionObject -> DynamoDBLocalSecondaryIndex [_dynamoDBLocalSecondaryIndexIndexName] :: DynamoDBLocalSecondaryIndex -> Val Text [_dynamoDBLocalSecondaryIndexKeySchema] :: DynamoDBLocalSecondaryIndex -> [DynamoDBKeySchema] [_dynamoDBLocalSecondaryIndexProjection] :: DynamoDBLocalSecondaryIndex -> DynamoDBProjectionObject -- | Constructor for DynamoDBLocalSecondaryIndex containing required -- fields as arguments. dynamoDBLocalSecondaryIndex :: Val Text -> [DynamoDBKeySchema] -> DynamoDBProjectionObject -> DynamoDBLocalSecondaryIndex -- | The name of the local secondary index. The index name can be 3 – 255 -- characters long and have no character restrictions. ddblsiIndexName :: Lens' DynamoDBLocalSecondaryIndex (Val Text) -- | The complete index key schema for the local secondary index, which -- consists of one or more pairs of attribute names and key types. For -- local secondary indexes, the hash key must be the same as that of the -- source table. ddblsiKeySchema :: Lens' DynamoDBLocalSecondaryIndex [DynamoDBKeySchema] -- | Attributes that are copied (projected) from the source table into the -- index. These attributes are additions to the primary key attributes -- and index key attributes, which are automatically projected. ddblsiProjection :: Lens' DynamoDBLocalSecondaryIndex DynamoDBProjectionObject instance GHC.Generics.Generic Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex.DynamoDBLocalSecondaryIndex instance GHC.Show.Show Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex.DynamoDBLocalSecondaryIndex instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex.DynamoDBLocalSecondaryIndex instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex.DynamoDBLocalSecondaryIndex -- | Describes global secondary indexes for the AWS::DynamoDB::Table -- resource. module Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex -- | Full data type definition for DynamoDBGlobalSecondaryIndex. See -- dynamoDBGlobalSecondaryIndex for a more convenient constructor. data DynamoDBGlobalSecondaryIndex DynamoDBGlobalSecondaryIndex :: Val Text -> [DynamoDBKeySchema] -> DynamoDBProjectionObject -> DynamoDBProvisionedThroughput -> DynamoDBGlobalSecondaryIndex [_dynamoDBGlobalSecondaryIndexIndexName] :: DynamoDBGlobalSecondaryIndex -> Val Text [_dynamoDBGlobalSecondaryIndexKeySchema] :: DynamoDBGlobalSecondaryIndex -> [DynamoDBKeySchema] [_dynamoDBGlobalSecondaryIndexProjection] :: DynamoDBGlobalSecondaryIndex -> DynamoDBProjectionObject [_dynamoDBGlobalSecondaryIndexProvisionedThroughput] :: DynamoDBGlobalSecondaryIndex -> DynamoDBProvisionedThroughput -- | Constructor for DynamoDBGlobalSecondaryIndex containing -- required fields as arguments. dynamoDBGlobalSecondaryIndex :: Val Text -> [DynamoDBKeySchema] -> DynamoDBProjectionObject -> DynamoDBProvisionedThroughput -> DynamoDBGlobalSecondaryIndex -- | The name of the global secondary index. The index name can be 3 – 255 -- characters long and have no character restrictions. ddbgsiIndexName :: Lens' DynamoDBGlobalSecondaryIndex (Val Text) -- | The complete index key schema for the global secondary index, which -- consists of one or more pairs of attribute names and key types. ddbgsiKeySchema :: Lens' DynamoDBGlobalSecondaryIndex [DynamoDBKeySchema] -- | Attributes that are copied (projected) from the source table into the -- index. These attributes are in addition to the primary key attributes -- and index key attributes, which are automatically projected. ddbgsiProjection :: Lens' DynamoDBGlobalSecondaryIndex DynamoDBProjectionObject -- | The provisioned throughput settings for the index. ddbgsiProvisionedThroughput :: Lens' DynamoDBGlobalSecondaryIndex DynamoDBProvisionedThroughput instance GHC.Generics.Generic Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex.DynamoDBGlobalSecondaryIndex instance GHC.Show.Show Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex.DynamoDBGlobalSecondaryIndex instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex.DynamoDBGlobalSecondaryIndex instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex.DynamoDBGlobalSecondaryIndex -- | A list of attribute definitions for the AWS::DynamoDB::Table resource. -- Each element is composed of an AttributeName and AttributeType. module Stratosphere.ResourceProperties.DynamoDBAttributeDefinition -- | Full data type definition for DynamoDBAttributeDefinition. See -- dynamoDBAttributeDefinition for a more convenient constructor. data DynamoDBAttributeDefinition DynamoDBAttributeDefinition :: Val Text -> AttributeType -> DynamoDBAttributeDefinition [_dynamoDBAttributeDefinitionAttributeName] :: DynamoDBAttributeDefinition -> Val Text [_dynamoDBAttributeDefinitionAttributeType] :: DynamoDBAttributeDefinition -> AttributeType -- | Constructor for DynamoDBAttributeDefinition containing required -- fields as arguments. dynamoDBAttributeDefinition :: Val Text -> AttributeType -> DynamoDBAttributeDefinition -- | The name of an attribute. Attribute names can be 1 – 255 characters -- long and have no character restrictions. ddbadAttributeName :: Lens' DynamoDBAttributeDefinition (Val Text) -- | The data type for the attribute. You can specify S for string data, N -- for numeric data, or B for binary data. ddbadAttributeType :: Lens' DynamoDBAttributeDefinition AttributeType instance GHC.Generics.Generic Stratosphere.ResourceProperties.DynamoDBAttributeDefinition.DynamoDBAttributeDefinition instance GHC.Show.Show Stratosphere.ResourceProperties.DynamoDBAttributeDefinition.DynamoDBAttributeDefinition instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.DynamoDBAttributeDefinition.DynamoDBAttributeDefinition instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.DynamoDBAttributeDefinition.DynamoDBAttributeDefinition -- | Creates a DynamoDB table. module Stratosphere.Resources.DynamoDBTable -- | Full data type definition for DynamoDBTable. See dynamoDBTable -- for a more convenient constructor. data DynamoDBTable DynamoDBTable :: [DynamoDBAttributeDefinition] -> Maybe [DynamoDBGlobalSecondaryIndex] -> [DynamoDBKeySchema] -> Maybe [DynamoDBLocalSecondaryIndex] -> DynamoDBProvisionedThroughput -> Maybe DynamoDBStreamSpecification -> Maybe (Val Text) -> DynamoDBTable [_dynamoDBTableAttributeDefinitions] :: DynamoDBTable -> [DynamoDBAttributeDefinition] [_dynamoDBTableGlobalSecondaryIndexes] :: DynamoDBTable -> Maybe [DynamoDBGlobalSecondaryIndex] [_dynamoDBTableKeySchema] :: DynamoDBTable -> [DynamoDBKeySchema] [_dynamoDBTableLocalSecondaryIndexes] :: DynamoDBTable -> Maybe [DynamoDBLocalSecondaryIndex] [_dynamoDBTableProvisionedThroughput] :: DynamoDBTable -> DynamoDBProvisionedThroughput [_dynamoDBTableStreamSpecification] :: DynamoDBTable -> Maybe DynamoDBStreamSpecification [_dynamoDBTableTableName] :: DynamoDBTable -> Maybe (Val Text) -- | Constructor for DynamoDBTable containing required fields as -- arguments. dynamoDBTable :: [DynamoDBAttributeDefinition] -> [DynamoDBKeySchema] -> DynamoDBProvisionedThroughput -> DynamoDBTable -- | A list of AttributeName and AttributeType objects that describe the -- key schema for the table and indexes. ddbtAttributeDefinitions :: Lens' DynamoDBTable [DynamoDBAttributeDefinition] -- | Global secondary indexes to be created on the table. You can create up -- to 5 global secondary indexes. Important If you update a table to -- include a new global secondary index, AWS CloudFormation initiates the -- index creation and then proceeds with the stack update. AWS -- CloudFormation doesn't wait for the index to complete creation because -- the backfilling phase can take a long time, depending on the size of -- the table. You cannot use the index or update the table until the -- index's status is ACTIVE. You can track its status by using the -- DynamoDB DescribeTable command. If you add or delete an index during -- an update, we recommend that you don't update any other resources. If -- your stack fails to update and is rolled back while adding a new -- index, you must manually delete the index. ddbtGlobalSecondaryIndexes :: Lens' DynamoDBTable (Maybe [DynamoDBGlobalSecondaryIndex]) -- | Specifies the attributes that make up the primary key for the table. -- The attributes in the KeySchema property must also be defined in the -- AttributeDefinitions property. ddbtKeySchema :: Lens' DynamoDBTable [DynamoDBKeySchema] -- | Local secondary indexes to be created on the table. You can create up -- to 5 local secondary indexes. Each index is scoped to a given hash key -- value. The size of each hash key can be up to 10 gigabytes. ddbtLocalSecondaryIndexes :: Lens' DynamoDBTable (Maybe [DynamoDBLocalSecondaryIndex]) -- | Throughput for the specified table, consisting of values for -- ReadCapacityUnits and WriteCapacityUnits. For more information about -- the contents of a provisioned throughput structure, see DynamoDB -- Provisioned Throughput. ddbtProvisionedThroughput :: Lens' DynamoDBTable DynamoDBProvisionedThroughput -- | The settings for the DynamoDB table stream, which capture changes to -- items stored in the table. ddbtStreamSpecification :: Lens' DynamoDBTable (Maybe DynamoDBStreamSpecification) -- | A name for the table. If you don't specify a name, AWS CloudFormation -- generates a unique physical ID and uses that ID for the table name. -- For more information, see Name Type. Important If you specify a name, -- you cannot do updates that require this resource to be replaced. You -- can still do updates that require no or some interruption. If you must -- replace the resource, specify a new name. ddbtTableName :: Lens' DynamoDBTable (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.DynamoDBTable.DynamoDBTable instance GHC.Show.Show Stratosphere.Resources.DynamoDBTable.DynamoDBTable instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.DynamoDBTable.DynamoDBTable instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.DynamoDBTable.DynamoDBTable -- | ConnectionSettings is a property of the -- AWS::ElasticLoadBalancing::LoadBalancer resource that describes how -- long the front-end and back-end connections of your load balancer can -- remain idle. For more information, see Configure Idle Connection -- Timeout in the Elastic Load Balancing Developer Guide. module Stratosphere.ResourceProperties.ConnectionSettings -- | Full data type definition for ConnectionSettings. See -- connectionSettings for a more convenient constructor. data ConnectionSettings ConnectionSettings :: Val Integer' -> ConnectionSettings [_connectionSettingsIdleTimeout] :: ConnectionSettings -> Val Integer' -- | Constructor for ConnectionSettings containing required fields -- as arguments. connectionSettings :: Val Integer' -> ConnectionSettings -- | The time (in seconds) that a connection to the load balancer can -- remain idle, which means no data is sent over the connection. After -- the specified time, the load balancer closes the connection. csIdleTimeout :: Lens' ConnectionSettings (Val Integer') instance GHC.Generics.Generic Stratosphere.ResourceProperties.ConnectionSettings.ConnectionSettings instance GHC.Show.Show Stratosphere.ResourceProperties.ConnectionSettings.ConnectionSettings instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ConnectionSettings.ConnectionSettings instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ConnectionSettings.ConnectionSettings -- | The ConnectionDrainingPolicy property describes how deregistered or -- unhealthy instances handle in-flight requests for the -- AWS::ElasticLoadBalancing::LoadBalancer resource. Connection draining -- ensures that the load balancer completes serving all in-flight -- requests made to a registered instance when the instance is -- deregistered or becomes unhealthy. Without connection draining, the -- load balancer closes connections to deregistered or unhealthy -- instances, and any in-flight requests are not completed. For more -- information about connection draining and default values, see Enable -- or Disable Connection Draining for Your Load Balancer in the Elastic -- Load Balancing Developer Guide. module Stratosphere.ResourceProperties.ConnectionDrainingPolicy -- | Full data type definition for ConnectionDrainingPolicy. See -- connectionDrainingPolicy for a more convenient constructor. data ConnectionDrainingPolicy ConnectionDrainingPolicy :: Val Bool' -> Maybe (Val Integer') -> ConnectionDrainingPolicy [_connectionDrainingPolicyEnabled] :: ConnectionDrainingPolicy -> Val Bool' [_connectionDrainingPolicyTimeout] :: ConnectionDrainingPolicy -> Maybe (Val Integer') -- | Constructor for ConnectionDrainingPolicy containing required -- fields as arguments. connectionDrainingPolicy :: Val Bool' -> ConnectionDrainingPolicy -- | Whether or not connection draining is enabled for the load balancer. cdpEnabled :: Lens' ConnectionDrainingPolicy (Val Bool') -- | The time in seconds after the load balancer closes all connections to -- a deregistered or unhealthy instance. cdpTimeout :: Lens' ConnectionDrainingPolicy (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ConnectionDrainingPolicy.ConnectionDrainingPolicy instance GHC.Show.Show Stratosphere.ResourceProperties.ConnectionDrainingPolicy.ConnectionDrainingPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ConnectionDrainingPolicy.ConnectionDrainingPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ConnectionDrainingPolicy.ConnectionDrainingPolicy -- | The Auto Scaling Tags property is an embedded property of the -- AWS::AutoScaling::AutoScalingGroup type. For more information about -- tags, go to Tagging Auto Scaling Groups and Amazon EC2 Instances in -- the Auto Scaling User Guide. AWS CloudFormation adds the following -- tags to all Auto Scaling groups and associated instances: module Stratosphere.ResourceProperties.AutoScalingTags -- | Full data type definition for AutoScalingTags. See -- autoScalingTags for a more convenient constructor. data AutoScalingTags AutoScalingTags :: Val Text -> Val Text -> Val Bool' -> AutoScalingTags [_autoScalingTagsKey] :: AutoScalingTags -> Val Text [_autoScalingTagsValue] :: AutoScalingTags -> Val Text [_autoScalingTagsPropagateAtLaunch] :: AutoScalingTags -> Val Bool' -- | Constructor for AutoScalingTags containing required fields as -- arguments. autoScalingTags :: Val Text -> Val Text -> Val Bool' -> AutoScalingTags -- | The key name of the tag. astKey :: Lens' AutoScalingTags (Val Text) -- | The value for the tag. astValue :: Lens' AutoScalingTags (Val Text) -- | Set to true if you want AWS CloudFormation to copy the tag to EC2 -- instances that are launched as part of the auto scaling group. Set to -- false if you want the tag attached only to the auto scaling group and -- not copied to any instances launched as part of the auto scaling -- group. astPropagateAtLaunch :: Lens' AutoScalingTags (Val Bool') instance GHC.Generics.Generic Stratosphere.ResourceProperties.AutoScalingTags.AutoScalingTags instance GHC.Show.Show Stratosphere.ResourceProperties.AutoScalingTags.AutoScalingTags instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.AutoScalingTags.AutoScalingTags instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.AutoScalingTags.AutoScalingTags -- | The NotificationConfigurations property is an embedded property of the -- AWS::AutoScaling::AutoScalingGroup resource that specifies the events -- for which the Auto Scaling group sends notifications. module Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations -- | Full data type definition for AutoScalingNotificationConfigurations. -- See autoScalingNotificationConfigurations for a more convenient -- constructor. data AutoScalingNotificationConfigurations AutoScalingNotificationConfigurations :: [Val Text] -> Val Text -> AutoScalingNotificationConfigurations [_autoScalingNotificationConfigurationsNotificationTypes] :: AutoScalingNotificationConfigurations -> [Val Text] [_autoScalingNotificationConfigurationsTopicARN] :: AutoScalingNotificationConfigurations -> Val Text -- | Constructor for AutoScalingNotificationConfigurations -- containing required fields as arguments. autoScalingNotificationConfigurations :: [Val Text] -> Val Text -> AutoScalingNotificationConfigurations -- | A list of event types that trigger a notification. Event types can -- include any of the following types: autoscaling:EC2_INSTANCE_LAUNCH, -- autoscaling:EC2_INSTANCE_LAUNCH_ERROR, -- autoscaling:EC2_INSTANCE_TERMINATE, -- autoscaling:EC2_INSTANCE_TERMINATE_ERROR, and -- autoscaling:TEST_NOTIFICATION. For more information about event types, -- see DescribeAutoScalingNotificationTypes in the Auto Scaling API -- Reference. asncNotificationTypes :: Lens' AutoScalingNotificationConfigurations [Val Text] -- | The Amazon Resource Name (ARN) of the Amazon Simple Notification -- Service (SNS) topic. asncTopicARN :: Lens' AutoScalingNotificationConfigurations (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations.AutoScalingNotificationConfigurations instance GHC.Show.Show Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations.AutoScalingNotificationConfigurations instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations.AutoScalingNotificationConfigurations instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations.AutoScalingNotificationConfigurations -- | The MetricsCollection is a property of the -- AWS::AutoScaling::AutoScalingGroup resource that describes the group -- metrics that an Auto Scaling group sends to CloudWatch. These metrics -- describe the group rather than any of its instances. For more -- information, see EnableMetricsCollection in the Auto Scaling API -- Reference. module Stratosphere.ResourceProperties.AutoScalingMetricsCollection -- | Full data type definition for AutoScalingMetricsCollection. See -- autoScalingMetricsCollection for a more convenient constructor. data AutoScalingMetricsCollection AutoScalingMetricsCollection :: Val Text -> Maybe [Val Text] -> AutoScalingMetricsCollection [_autoScalingMetricsCollectionGranularity] :: AutoScalingMetricsCollection -> Val Text [_autoScalingMetricsCollectionMetrics] :: AutoScalingMetricsCollection -> Maybe [Val Text] -- | Constructor for AutoScalingMetricsCollection containing -- required fields as arguments. autoScalingMetricsCollection :: Val Text -> AutoScalingMetricsCollection -- | The frequency at which Auto Scaling sends aggregated data to -- CloudWatch. For example, you can specify 1Minute to send aggregated -- data to CloudWatch every minute. asmcGranularity :: Lens' AutoScalingMetricsCollection (Val Text) -- | The list of metrics to collect. If you don't specify any metrics, all -- metrics are enabled. asmcMetrics :: Lens' AutoScalingMetricsCollection (Maybe [Val Text]) instance GHC.Generics.Generic Stratosphere.ResourceProperties.AutoScalingMetricsCollection.AutoScalingMetricsCollection instance GHC.Show.Show Stratosphere.ResourceProperties.AutoScalingMetricsCollection.AutoScalingMetricsCollection instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.AutoScalingMetricsCollection.AutoScalingMetricsCollection instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.AutoScalingMetricsCollection.AutoScalingMetricsCollection -- | The AWS::AutoScaling::AutoScalingGroup type creates an Auto Scaling -- group. You can add an UpdatePolicy attribute to your Auto Scaling -- group to control how rolling updates are performed when a change has -- been made to the Auto Scaling group's launch configuration or subnet -- group membership. module Stratosphere.Resources.AutoScalingGroup -- | Full data type definition for AutoScalingGroup. See -- autoScalingGroup for a more convenient constructor. data AutoScalingGroup AutoScalingGroup :: Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [Val Text] -> Val Text -> Maybe [AutoScalingMetricsCollection] -> Val Text -> Maybe [AutoScalingNotificationConfigurations] -> Maybe (Val Text) -> Maybe [AutoScalingTags] -> Maybe [Val Text] -> Maybe [Val Text] -> AutoScalingGroup [_autoScalingGroupAvailabilityZones] :: AutoScalingGroup -> Maybe [Val Text] [_autoScalingGroupCooldown] :: AutoScalingGroup -> Maybe (Val Text) [_autoScalingGroupDesiredCapacity] :: AutoScalingGroup -> Maybe (Val Text) [_autoScalingGroupHealthCheckGracePeriod] :: AutoScalingGroup -> Maybe (Val Integer') [_autoScalingGroupHealthCheckType] :: AutoScalingGroup -> Maybe (Val Text) [_autoScalingGroupInstanceId] :: AutoScalingGroup -> Maybe (Val Text) [_autoScalingGroupLaunchConfigurationName] :: AutoScalingGroup -> Maybe (Val Text) [_autoScalingGroupLoadBalancerNames] :: AutoScalingGroup -> Maybe [Val Text] [_autoScalingGroupMaxSize] :: AutoScalingGroup -> Val Text [_autoScalingGroupMetricsCollection] :: AutoScalingGroup -> Maybe [AutoScalingMetricsCollection] [_autoScalingGroupMinSize] :: AutoScalingGroup -> Val Text [_autoScalingGroupNotificationConfigurations] :: AutoScalingGroup -> Maybe [AutoScalingNotificationConfigurations] [_autoScalingGroupPlacementGroup] :: AutoScalingGroup -> Maybe (Val Text) [_autoScalingGroupTags] :: AutoScalingGroup -> Maybe [AutoScalingTags] [_autoScalingGroupTerminationPolicies] :: AutoScalingGroup -> Maybe [Val Text] [_autoScalingGroupVPCZoneIdentifier] :: AutoScalingGroup -> Maybe [Val Text] -- | Constructor for AutoScalingGroup containing required fields as -- arguments. autoScalingGroup :: Val Text -> Val Text -> AutoScalingGroup -- | Contains a list of availability zones for the group. asgAvailabilityZones :: Lens' AutoScalingGroup (Maybe [Val Text]) -- | The number of seconds after a scaling activity is completed before any -- further scaling activities can start. asgCooldown :: Lens' AutoScalingGroup (Maybe (Val Text)) -- | Specifies the desired capacity for the Auto Scaling group. If -- SpotPrice is not set in the AWS::AutoScaling::LaunchConfiguration for -- this Auto Scaling group, then Auto Scaling will begin to bring -- instances online based on DesiredCapacity. CloudFormation will not -- mark the Auto Scaling group as successful (by setting its status to -- CREATE_COMPLETE) until the desired capacity is reached. If SpotPrice -- is set, then DesiredCapacity will not be used as a criteria for -- success, since instances will only be started when the spot price has -- been matched. After the spot price has been matched, however, Auto -- Scaling uses DesiredCapacity as the target capacity for the group. asgDesiredCapacity :: Lens' AutoScalingGroup (Maybe (Val Text)) -- | The length of time in seconds after a new EC2 instance comes into -- service that Auto Scaling starts checking its health. asgHealthCheckGracePeriod :: Lens' AutoScalingGroup (Maybe (Val Integer')) -- | The service you want the health status from, Amazon EC2 or Elastic -- Load Balancer. Valid values are EC2 or ELB. asgHealthCheckType :: Lens' AutoScalingGroup (Maybe (Val Text)) -- | The ID of the Amazon EC2 instance you want to use to create the Auto -- Scaling group. Use this property if you want to create an Auto Scaling -- group that uses an existing Amazon EC2 instance instead of a launch -- configuration. When you use an Amazon EC2 instance to create an Auto -- Scaling group, a new launch configuration is first created and then -- associated with the Auto Scaling group. The new launch configuration -- derives all its properties from the instance, with the exception of -- BlockDeviceMapping and AssociatePublicIpAddress. asgInstanceId :: Lens' AutoScalingGroup (Maybe (Val Text)) -- | Specifies the name of the associated -- AWS::AutoScaling::LaunchConfiguration. Note If this resource has a -- public IP address and is also in a VPC that is defined in the same -- template, you must use the DependsOn attribute to declare a dependency -- on the VPC-gateway attachment. For more information, see DependsOn -- Attribute. asgLaunchConfigurationName :: Lens' AutoScalingGroup (Maybe (Val Text)) -- | A list of load balancers associated with this Auto Scaling group. asgLoadBalancerNames :: Lens' AutoScalingGroup (Maybe [Val Text]) -- | The maximum size of the Auto Scaling group. asgMaxSize :: Lens' AutoScalingGroup (Val Text) -- | Enables the monitoring of group metrics of an Auto Scaling group. asgMetricsCollection :: Lens' AutoScalingGroup (Maybe [AutoScalingMetricsCollection]) -- | The minimum size of the Auto Scaling group. asgMinSize :: Lens' AutoScalingGroup (Val Text) -- | An embedded property that configures an Auto Scaling group to send -- notifications when specified events take place. asgNotificationConfigurations :: Lens' AutoScalingGroup (Maybe [AutoScalingNotificationConfigurations]) -- | The name of an existing cluster placement group into which you want to -- launch your instances. A placement group is a logical grouping of -- instances within a single Availability Zone. You cannot specify -- multiple Availability Zones and a placement group. asgPlacementGroup :: Lens' AutoScalingGroup (Maybe (Val Text)) -- | The tags you want to attach to this resource. For more information -- about tags, go to Tagging Auto Scaling Groups and Amazon EC2 Instances -- in the Auto Scaling User Guide. asgTags :: Lens' AutoScalingGroup (Maybe [AutoScalingTags]) -- | A policy or a list of policies that are used to select the instances -- to terminate. The policies are executed in the order that you list -- them. For more information on configuring a termination policy for -- your Auto Scaling group, see Instance Termination Policy for Your Auto -- Scaling Group in the Auto Scaling User Guide. asgTerminationPolicies :: Lens' AutoScalingGroup (Maybe [Val Text]) -- | A list of subnet identifiers of Amazon Virtual Private Cloud (Amazon -- VPCs). If you specify the AvailabilityZones property, the subnets that -- you specify for this property must reside in those Availability Zones. -- For more information, go to Using EC2 Dedicated Instances Within Your -- VPC in the Auto Scaling User Guide. asgVPCZoneIdentifier :: Lens' AutoScalingGroup (Maybe [Val Text]) instance GHC.Generics.Generic Stratosphere.Resources.AutoScalingGroup.AutoScalingGroup instance GHC.Show.Show Stratosphere.Resources.AutoScalingGroup.AutoScalingGroup instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.AutoScalingGroup.AutoScalingGroup instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.AutoScalingGroup.AutoScalingGroup -- | The AutoScaling EBS Block Device type is an embedded property of the -- AutoScaling Block Device Mapping type. module Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice -- | Full data type definition for AutoScalingEBSBlockDevice. See -- autoScalingEBSBlockDevice for a more convenient constructor. data AutoScalingEBSBlockDevice AutoScalingEBSBlockDevice :: Maybe (Val Bool') -> Maybe (Val Bool') -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe (Val Text) -> AutoScalingEBSBlockDevice [_autoScalingEBSBlockDeviceDeleteOnTermination] :: AutoScalingEBSBlockDevice -> Maybe (Val Bool') [_autoScalingEBSBlockDeviceEncrypted] :: AutoScalingEBSBlockDevice -> Maybe (Val Bool') [_autoScalingEBSBlockDeviceIops] :: AutoScalingEBSBlockDevice -> Maybe (Val Integer') [_autoScalingEBSBlockDeviceSnapshotId] :: AutoScalingEBSBlockDevice -> Maybe (Val Text) [_autoScalingEBSBlockDeviceVolumeSize] :: AutoScalingEBSBlockDevice -> Maybe (Val Integer') [_autoScalingEBSBlockDeviceVolumeType] :: AutoScalingEBSBlockDevice -> Maybe (Val Text) -- | Constructor for AutoScalingEBSBlockDevice containing required -- fields as arguments. autoScalingEBSBlockDevice :: AutoScalingEBSBlockDevice -- | Indicates whether to delete the volume when the instance is -- terminated. By default, Auto Scaling uses true. asebsbdDeleteOnTermination :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Bool')) -- | Indicates whether the volume is encrypted. Encrypted EBS volumes must -- be attached to instances that support Amazon EBS encryption. Volumes -- that you create from encrypted snapshots are automatically encrypted. -- You cannot create an encrypted volume from an unencrypted snapshot or -- an unencrypted volume from an encrypted snapshot. asebsbdEncrypted :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Bool')) -- | The number of I/O operations per second (IOPS) that the volume -- supports. The maximum ratio of IOPS to volume size is 30. asebsbdIops :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Integer')) -- | The snapshot ID of the volume to use. asebsbdSnapshotId :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Text)) -- | The volume size, in Gibibytes (GiB). This can be a number from 1 – -- 1024. If the volume type is EBS optimized, the minimum value is 10. -- For more information about specifying the volume type, see -- EbsOptimized in AWS::AutoScaling::LaunchConfiguration. asebsbdVolumeSize :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Integer')) -- | The volume type. By default, Auto Scaling uses the standard volume -- type. For more information, see Ebs in the Auto Scaling API Reference. asebsbdVolumeType :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice.AutoScalingEBSBlockDevice instance GHC.Show.Show Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice.AutoScalingEBSBlockDevice instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice.AutoScalingEBSBlockDevice instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice.AutoScalingEBSBlockDevice -- | The AutoScaling Block Device Mapping type is an embedded property of -- the AWS::AutoScaling::LaunchConfiguration type. module Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping -- | Full data type definition for AutoScalingBlockDeviceMapping. See -- autoScalingBlockDeviceMapping for a more convenient -- constructor. data AutoScalingBlockDeviceMapping AutoScalingBlockDeviceMapping :: Val Text -> Maybe AutoScalingEBSBlockDevice -> Maybe (Val Bool') -> Maybe (Val Text) -> AutoScalingBlockDeviceMapping [_autoScalingBlockDeviceMappingDeviceName] :: AutoScalingBlockDeviceMapping -> Val Text [_autoScalingBlockDeviceMappingEbs] :: AutoScalingBlockDeviceMapping -> Maybe AutoScalingEBSBlockDevice [_autoScalingBlockDeviceMappingNoDevice] :: AutoScalingBlockDeviceMapping -> Maybe (Val Bool') [_autoScalingBlockDeviceMappingVirtualName] :: AutoScalingBlockDeviceMapping -> Maybe (Val Text) -- | Constructor for AutoScalingBlockDeviceMapping containing -- required fields as arguments. autoScalingBlockDeviceMapping :: Val Text -> AutoScalingBlockDeviceMapping -- | The name of the device within Amazon EC2. asbdmDeviceName :: Lens' AutoScalingBlockDeviceMapping (Val Text) -- | The Amazon Elastic Block Store volume information. asbdmEbs :: Lens' AutoScalingBlockDeviceMapping (Maybe AutoScalingEBSBlockDevice) -- | Suppresses the device mapping. If NoDevice is set to true for the root -- device, the instance might fail the Amazon EC2 health check. Auto -- Scaling launches a replacement instance if the instance fails the -- health check. asbdmNoDevice :: Lens' AutoScalingBlockDeviceMapping (Maybe (Val Bool')) -- | The name of the virtual device. The name must be in the form -- ephemeralX where X is a number starting from zero (0), for example, -- ephemeral0. asbdmVirtualName :: Lens' AutoScalingBlockDeviceMapping (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping.AutoScalingBlockDeviceMapping instance GHC.Show.Show Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping.AutoScalingBlockDeviceMapping instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping.AutoScalingBlockDeviceMapping instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping.AutoScalingBlockDeviceMapping -- | The AWS::AutoScaling::LaunchConfiguration type creates an Auto Scaling -- launch configuration that can be used by an Auto Scaling group to -- configure Amazon EC2 instances in the Auto Scaling group. module Stratosphere.Resources.LaunchConfiguration -- | Full data type definition for LaunchConfiguration. See -- launchConfiguration for a more convenient constructor. data LaunchConfiguration LaunchConfiguration :: Maybe (Val Bool') -> Maybe [AutoScalingBlockDeviceMapping] -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Bool') -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe (Val Bool') -> Val Text -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Text) -> LaunchConfiguration [_launchConfigurationAssociatePublicIpAddress] :: LaunchConfiguration -> Maybe (Val Bool') [_launchConfigurationBlockDeviceMappings] :: LaunchConfiguration -> Maybe [AutoScalingBlockDeviceMapping] [_launchConfigurationClassicLinkVPCId] :: LaunchConfiguration -> Maybe (Val Text) [_launchConfigurationClassicLinkVPCSecurityGroups] :: LaunchConfiguration -> Maybe [Val Text] [_launchConfigurationEbsOptimized] :: LaunchConfiguration -> Maybe (Val Bool') [_launchConfigurationIamInstanceProfile] :: LaunchConfiguration -> Maybe (Val Text) [_launchConfigurationImageId] :: LaunchConfiguration -> Val Text [_launchConfigurationInstanceId] :: LaunchConfiguration -> Maybe (Val Text) [_launchConfigurationInstanceMonitoring] :: LaunchConfiguration -> Maybe (Val Bool') [_launchConfigurationInstanceType] :: LaunchConfiguration -> Val Text [_launchConfigurationKernelId] :: LaunchConfiguration -> Maybe (Val Text) [_launchConfigurationKeyName] :: LaunchConfiguration -> Maybe (Val Text) [_launchConfigurationPlacementTenancy] :: LaunchConfiguration -> Maybe (Val Text) [_launchConfigurationRamDiskId] :: LaunchConfiguration -> Maybe (Val Text) [_launchConfigurationSecurityGroups] :: LaunchConfiguration -> Maybe [Val Text] [_launchConfigurationSpotPrice] :: LaunchConfiguration -> Maybe (Val Text) [_launchConfigurationUserData] :: LaunchConfiguration -> Maybe (Val Text) -- | Constructor for LaunchConfiguration containing required fields -- as arguments. launchConfiguration :: Val Text -> Val Text -> LaunchConfiguration -- | For Amazon EC2 instances in a VPC, indicates whether instances in the -- Auto Scaling group receive public IP addresses. If you specify true, -- each instance in the Auto Scaling receives a unique public IP address. -- Note If this resource has a public IP address and is also in a VPC -- that is defined in the same template, you must use the DependsOn -- attribute to declare a dependency on the VPC-gateway attachment. For -- more information, see DependsOn Attribute. lcAssociatePublicIpAddress :: Lens' LaunchConfiguration (Maybe (Val Bool')) -- | Specifies how block devices are exposed to the instance. You can -- specify virtual devices and EBS volumes. lcBlockDeviceMappings :: Lens' LaunchConfiguration (Maybe [AutoScalingBlockDeviceMapping]) -- | The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances -- to. You can specify this property only for EC2-Classic instances. For -- more information, see ClassicLink in the Amazon Elastic Compute Cloud -- User Guide. lcClassicLinkVPCId :: Lens' LaunchConfiguration (Maybe (Val Text)) -- | The IDs of one or more security groups for the VPC that you specified -- in the ClassicLinkVPCId property. lcClassicLinkVPCSecurityGroups :: Lens' LaunchConfiguration (Maybe [Val Text]) -- | Specifies whether the launch configuration is optimized for EBS I/O. -- This optimization provides dedicated throughput to Amazon EBS and an -- optimized configuration stack to provide optimal EBS I/O performance. -- Additional fees are incurred when using EBS-optimized instances. For -- more information about fees and supported instance types, see -- EBS-Optimized Instances in the Amazon EC2 User Guide for Linux -- Instances. lcEbsOptimized :: Lens' LaunchConfiguration (Maybe (Val Bool')) -- | Provides the name or the Amazon Resource Name (ARN) of the instance -- profile associated with the IAM role for the instance. The instance -- profile contains the IAM role. lcIamInstanceProfile :: Lens' LaunchConfiguration (Maybe (Val Text)) -- | Provides the unique ID of the Amazon Machine Image (AMI) that was -- assigned during registration. lcImageId :: Lens' LaunchConfiguration (Val Text) -- | The ID of the Amazon EC2 instance you want to use to create the launch -- configuration. Use this property if you want the launch configuration -- to use settings from an existing Amazon EC2 instance. When you use an -- instance to create a launch configuration, all properties are derived -- from the instance with the exception of BlockDeviceMapping and -- AssociatePublicIpAddress. You can override any properties from the -- instance by specifying them in the launch configuration. lcInstanceId :: Lens' LaunchConfiguration (Maybe (Val Text)) -- | Indicates whether detailed instance monitoring is enabled for the Auto -- Scaling group. By default, this property is set to true (enabled). -- When detailed monitoring is enabled, Amazon CloudWatch (CloudWatch) -- generates metrics every minute and your account is charged a fee. When -- you disable detailed monitoring, CloudWatch generates metrics every 5 -- minutes. For more information, see Monitor Your Auto Scaling Instances -- in the Auto Scaling Developer Guide. lcInstanceMonitoring :: Lens' LaunchConfiguration (Maybe (Val Bool')) -- | Specifies the instance type of the EC2 instance. lcInstanceType :: Lens' LaunchConfiguration (Val Text) -- | Provides the ID of the kernel associated with the EC2 AMI. lcKernelId :: Lens' LaunchConfiguration (Maybe (Val Text)) -- | Provides the name of the EC2 key pair. lcKeyName :: Lens' LaunchConfiguration (Maybe (Val Text)) -- | The tenancy of the instance. An instance with a tenancy of dedicated -- runs on single-tenant hardware and can only be launched in a VPC. You -- must set the value of this parameter to dedicated if want to launch -- dedicated instances in a shared tenancy VPC (a VPC with the instance -- placement tenancy attribute set to default). For more information, see -- CreateLaunchConfiguration in the Auto Scaling API Reference. If you -- specify this property, you must specify at least one subnet in the -- VPCZoneIdentifier property of the AWS::AutoScaling::AutoScalingGroup -- resource. lcPlacementTenancy :: Lens' LaunchConfiguration (Maybe (Val Text)) -- | The ID of the RAM disk to select. Some kernels require additional -- drivers at launch. Check the kernel requirements for information about -- whether you need to specify a RAM disk. To find kernel requirements, -- refer to the AWS Resource Center and search for the kernel ID. lcRamDiskId :: Lens' LaunchConfiguration (Maybe (Val Text)) -- | A list that contains the EC2 security groups to assign to the Amazon -- EC2 instances in the Auto Scaling group. The list can contain the name -- of existing EC2 security groups or references to -- AWS::EC2::SecurityGroup resources created in the template. If your -- instances are launched within VPC, specify Amazon VPC security group -- IDs. lcSecurityGroups :: Lens' LaunchConfiguration (Maybe [Val Text]) -- | The spot price for this autoscaling group. If a spot price is set, -- then the autoscaling group will launch when the current spot price is -- less than the amount specified in the template. When you have -- specified a spot price for an auto scaling group, the group will only -- launch when the spot price has been met, regardless of the setting in -- the autoscaling group's DesiredCapacity. For more information about -- configuring a spot price for an autoscaling group, see Using Auto -- Scaling to Launch Spot Instances in the AutoScaling Developer Guide. lcSpotPrice :: Lens' LaunchConfiguration (Maybe (Val Text)) -- | The user data available to the launched EC2 instances. lcUserData :: Lens' LaunchConfiguration (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.LaunchConfiguration.LaunchConfiguration instance GHC.Show.Show Stratosphere.Resources.LaunchConfiguration.LaunchConfiguration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LaunchConfiguration.LaunchConfiguration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LaunchConfiguration.LaunchConfiguration -- | The AppCookieStickinessPolicy type is an embedded property of the -- AWS::ElasticLoadBalancing::LoadBalancer type. module Stratosphere.ResourceProperties.AppCookieStickinessPolicy -- | Full data type definition for AppCookieStickinessPolicy. See -- appCookieStickinessPolicy for a more convenient constructor. data AppCookieStickinessPolicy AppCookieStickinessPolicy :: Val Text -> Val Text -> AppCookieStickinessPolicy [_appCookieStickinessPolicyCookieName] :: AppCookieStickinessPolicy -> Val Text [_appCookieStickinessPolicyPolicyName] :: AppCookieStickinessPolicy -> Val Text -- | Constructor for AppCookieStickinessPolicy containing required -- fields as arguments. appCookieStickinessPolicy :: Val Text -> Val Text -> AppCookieStickinessPolicy -- | Name of the application cookie used for stickiness. acspCookieName :: Lens' AppCookieStickinessPolicy (Val Text) -- | The name of the policy being created. The name must be unique within -- the set of policies for this Load Balancer. Note To associate this -- policy with a listener, include the policy name in the listener's -- PolicyNames property. acspPolicyName :: Lens' AppCookieStickinessPolicy (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.AppCookieStickinessPolicy.AppCookieStickinessPolicy instance GHC.Show.Show Stratosphere.ResourceProperties.AppCookieStickinessPolicy.AppCookieStickinessPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.AppCookieStickinessPolicy.AppCookieStickinessPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.AppCookieStickinessPolicy.AppCookieStickinessPolicy -- | ThrottleSettings is a property of the AWS::ApiGateway::UsagePlan -- resource that specifies the overall request rate (average requests per -- second) and burst capacity when users call your Amazon API Gateway -- (API Gateway) APIs. module Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings -- | Full data type definition for ApiGatewayUsagePlanThrottleSettings. See -- apiGatewayUsagePlanThrottleSettings for a more convenient -- constructor. data ApiGatewayUsagePlanThrottleSettings ApiGatewayUsagePlanThrottleSettings :: Maybe (Val Integer') -> Maybe Double' -> ApiGatewayUsagePlanThrottleSettings [_apiGatewayUsagePlanThrottleSettingsBurstLimit] :: ApiGatewayUsagePlanThrottleSettings -> Maybe (Val Integer') [_apiGatewayUsagePlanThrottleSettingsRateLimit] :: ApiGatewayUsagePlanThrottleSettings -> Maybe Double' -- | Constructor for ApiGatewayUsagePlanThrottleSettings containing -- required fields as arguments. apiGatewayUsagePlanThrottleSettings :: ApiGatewayUsagePlanThrottleSettings -- | The maximum API request rate limit over a time ranging from one to a -- few seconds. The maximum API request rate limit depends on whether the -- underlying token bucket is at its full capacity. For more information -- about request throttling, see Manage API Request Throttling in the API -- Gateway Developer Guide. aguptsBurstLimit :: Lens' ApiGatewayUsagePlanThrottleSettings (Maybe (Val Integer')) -- | The API request steady-state rate limit (average requests per second -- over an extended period of time). For more information about request -- throttling, see Manage API Request Throttling in the API Gateway -- Developer Guide. aguptsRateLimit :: Lens' ApiGatewayUsagePlanThrottleSettings (Maybe Double') instance GHC.Generics.Generic Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings.ApiGatewayUsagePlanThrottleSettings instance GHC.Show.Show Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings.ApiGatewayUsagePlanThrottleSettings instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings.ApiGatewayUsagePlanThrottleSettings instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings.ApiGatewayUsagePlanThrottleSettings -- | QuotaSettings is a property of the AWS::ApiGateway::UsagePlan resource -- that specifies the maximum number of requests users can make to your -- Amazon API Gateway (API Gateway) APIs. module Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings -- | Full data type definition for ApiGatewayUsagePlanQuotaSettings. See -- apiGatewayUsagePlanQuotaSettings for a more convenient -- constructor. data ApiGatewayUsagePlanQuotaSettings ApiGatewayUsagePlanQuotaSettings :: Maybe (Val Integer') -> Maybe (Val Integer') -> Maybe Period -> ApiGatewayUsagePlanQuotaSettings [_apiGatewayUsagePlanQuotaSettingsLimit] :: ApiGatewayUsagePlanQuotaSettings -> Maybe (Val Integer') [_apiGatewayUsagePlanQuotaSettingsOffset] :: ApiGatewayUsagePlanQuotaSettings -> Maybe (Val Integer') [_apiGatewayUsagePlanQuotaSettingsPeriod] :: ApiGatewayUsagePlanQuotaSettings -> Maybe Period -- | Constructor for ApiGatewayUsagePlanQuotaSettings containing -- required fields as arguments. apiGatewayUsagePlanQuotaSettings :: ApiGatewayUsagePlanQuotaSettings -- | The maximum number of requests that users can make within the -- specified time period. agupqsLimit :: Lens' ApiGatewayUsagePlanQuotaSettings (Maybe (Val Integer')) -- | For the initial time period, the number of requests to subtract from -- the specified limit. When you first implement a usage plan, the plan -- might start in the middle of the week or month. With this property, -- you can decrease the limit for this initial time period. agupqsOffset :: Lens' ApiGatewayUsagePlanQuotaSettings (Maybe (Val Integer')) -- | The time period for which the maximum limit of requests applies, such -- as DAY or WEEK. For valid values, see the period property for the -- UsagePlan resource in the Amazon API Gateway REST API Reference. agupqsPeriod :: Lens' ApiGatewayUsagePlanQuotaSettings (Maybe Period) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings.ApiGatewayUsagePlanQuotaSettings instance GHC.Show.Show Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings.ApiGatewayUsagePlanQuotaSettings instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings.ApiGatewayUsagePlanQuotaSettings instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings.ApiGatewayUsagePlanQuotaSettings -- | ApiStage is a property of the AWS::ApiGateway::UsagePlan resource that -- specifies which Amazon API Gateway (API Gateway) stages and APIs to -- associate with a usage plan. module Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage -- | Full data type definition for ApiGatewayUsagePlanApiStage. See -- apiGatewayUsagePlanApiStage for a more convenient constructor. data ApiGatewayUsagePlanApiStage ApiGatewayUsagePlanApiStage :: Maybe (Val Text) -> Maybe (Val Text) -> ApiGatewayUsagePlanApiStage [_apiGatewayUsagePlanApiStageApiId] :: ApiGatewayUsagePlanApiStage -> Maybe (Val Text) [_apiGatewayUsagePlanApiStageStage] :: ApiGatewayUsagePlanApiStage -> Maybe (Val Text) -- | Constructor for ApiGatewayUsagePlanApiStage containing required -- fields as arguments. apiGatewayUsagePlanApiStage :: ApiGatewayUsagePlanApiStage -- | The ID of an API that is in the specified Stage property that you want -- to associate with the usage plan. agupasApiId :: Lens' ApiGatewayUsagePlanApiStage (Maybe (Val Text)) -- | The name of an API Gateway stage to associate with the usage plan. agupasStage :: Lens' ApiGatewayUsagePlanApiStage (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage.ApiGatewayUsagePlanApiStage instance GHC.Show.Show Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage.ApiGatewayUsagePlanApiStage instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage.ApiGatewayUsagePlanApiStage instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage.ApiGatewayUsagePlanApiStage -- | The AWS::ApiGateway::UsagePlan resource specifies a usage plan for -- deployed Amazon API Gateway (API Gateway) APIs. A usage plan enforces -- throttling and quota limits on individual client API keys. For more -- information, see Creating and Using API Usage Plans in Amazon API -- Gateway in the API Gateway Developer Guide. module Stratosphere.Resources.ApiGatewayUsagePlan -- | Full data type definition for ApiGatewayUsagePlan. See -- apiGatewayUsagePlan for a more convenient constructor. data ApiGatewayUsagePlan ApiGatewayUsagePlan :: Maybe [ApiGatewayUsagePlanApiStage] -> Maybe (Val Text) -> Maybe ApiGatewayUsagePlanQuotaSettings -> Maybe ApiGatewayUsagePlanThrottleSettings -> Maybe (Val Text) -> ApiGatewayUsagePlan [_apiGatewayUsagePlanApiStages] :: ApiGatewayUsagePlan -> Maybe [ApiGatewayUsagePlanApiStage] [_apiGatewayUsagePlanDescription] :: ApiGatewayUsagePlan -> Maybe (Val Text) [_apiGatewayUsagePlanQuota] :: ApiGatewayUsagePlan -> Maybe ApiGatewayUsagePlanQuotaSettings [_apiGatewayUsagePlanThrottle] :: ApiGatewayUsagePlan -> Maybe ApiGatewayUsagePlanThrottleSettings [_apiGatewayUsagePlanUsagePlanName] :: ApiGatewayUsagePlan -> Maybe (Val Text) -- | Constructor for ApiGatewayUsagePlan containing required fields -- as arguments. apiGatewayUsagePlan :: ApiGatewayUsagePlan -- | The APIs and API stages to associate with this usage plan. agupApiStages :: Lens' ApiGatewayUsagePlan (Maybe [ApiGatewayUsagePlanApiStage]) -- | The purpose of this usage plan. agupDescription :: Lens' ApiGatewayUsagePlan (Maybe (Val Text)) -- | Configures the number of requests that users can make within a given -- interval. agupQuota :: Lens' ApiGatewayUsagePlan (Maybe ApiGatewayUsagePlanQuotaSettings) -- | Configures the overall request rate (average requests per second) and -- burst capacity. agupThrottle :: Lens' ApiGatewayUsagePlan (Maybe ApiGatewayUsagePlanThrottleSettings) -- | A name for this usage plan. agupUsagePlanName :: Lens' ApiGatewayUsagePlan (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.ApiGatewayUsagePlan.ApiGatewayUsagePlan instance GHC.Show.Show Stratosphere.Resources.ApiGatewayUsagePlan.ApiGatewayUsagePlan instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ApiGatewayUsagePlan.ApiGatewayUsagePlan instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ApiGatewayUsagePlan.ApiGatewayUsagePlan -- | MethodSetting is a property of the AWS::ApiGateway::Stage resource -- that configures settings for all methods in an Amazon API Gateway (API -- Gateway) stage. module Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting -- | Full data type definition for ApiGatewayStageMethodSetting. See -- apiGatewayStageMethodSetting for a more convenient constructor. data ApiGatewayStageMethodSetting ApiGatewayStageMethodSetting :: Maybe (Val Bool') -> Maybe (Val Integer') -> Maybe (Val Bool') -> Maybe (Val Bool') -> HttpMethod -> Maybe LoggingLevel -> Maybe (Val Bool') -> Val Text -> Maybe (Val Integer') -> Maybe Double' -> ApiGatewayStageMethodSetting [_apiGatewayStageMethodSettingCacheDataEncrypted] :: ApiGatewayStageMethodSetting -> Maybe (Val Bool') [_apiGatewayStageMethodSettingCacheTtlInSeconds] :: ApiGatewayStageMethodSetting -> Maybe (Val Integer') [_apiGatewayStageMethodSettingCachingEnabled] :: ApiGatewayStageMethodSetting -> Maybe (Val Bool') [_apiGatewayStageMethodSettingDataTraceEnabled] :: ApiGatewayStageMethodSetting -> Maybe (Val Bool') [_apiGatewayStageMethodSettingHttpMethod] :: ApiGatewayStageMethodSetting -> HttpMethod [_apiGatewayStageMethodSettingLoggingLevel] :: ApiGatewayStageMethodSetting -> Maybe LoggingLevel [_apiGatewayStageMethodSettingMetricsEnabled] :: ApiGatewayStageMethodSetting -> Maybe (Val Bool') [_apiGatewayStageMethodSettingResourcePath] :: ApiGatewayStageMethodSetting -> Val Text [_apiGatewayStageMethodSettingThrottlingBurstLimit] :: ApiGatewayStageMethodSetting -> Maybe (Val Integer') [_apiGatewayStageMethodSettingThrottlingRateLimit] :: ApiGatewayStageMethodSetting -> Maybe Double' -- | Constructor for ApiGatewayStageMethodSetting containing -- required fields as arguments. apiGatewayStageMethodSetting :: HttpMethod -> Val Text -> ApiGatewayStageMethodSetting -- | Indicates whether the cached responses are encrypted. agsmsCacheDataEncrypted :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Bool')) -- | The time-to-live (TTL) period, in seconds, that specifies how long API -- Gateway caches responses. agsmsCacheTtlInSeconds :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Integer')) -- | Indicates whether responses are cached and returned for requests. You -- must enable a cache cluster on the stage to cache responses. agsmsCachingEnabled :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Bool')) -- | Indicates whether data trace logging is enabled for methods in the -- stage. API Gateway pushes these logs to Amazon CloudWatch Logs. agsmsDataTraceEnabled :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Bool')) -- | The HTTP method. agsmsHttpMethod :: Lens' ApiGatewayStageMethodSetting HttpMethod -- | The logging level for this method. For valid values, see the -- loggingLevel property of the Stage resource in the Amazon API Gateway -- API Reference. agsmsLoggingLevel :: Lens' ApiGatewayStageMethodSetting (Maybe LoggingLevel) -- | Indicates whether Amazon CloudWatch metrics are enabled for methods in -- the stage. agsmsMetricsEnabled :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Bool')) -- | The resource path for this method. Forward slashes (/) are encoded as -- ~1 and the initial slash must include a forward slash. For example, -- the path value resourcesubresource must be encoded as -- /~1resource~1subresource. To specify the root path, use only a slash -- (/). agsmsResourcePath :: Lens' ApiGatewayStageMethodSetting (Val Text) -- | The number of burst requests per second that API Gateway permits -- across all APIs, stages, and methods in your AWS account. For more -- information, see Manage API Request Throttling in the API Gateway -- Developer Guide. agsmsThrottlingBurstLimit :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Integer')) -- | The number of steady-state requests per second that API Gateway -- permits across all APIs, stages, and methods in your AWS account. For -- more information, see Manage API Request Throttling in the API Gateway -- Developer Guide. agsmsThrottlingRateLimit :: Lens' ApiGatewayStageMethodSetting (Maybe Double') instance GHC.Generics.Generic Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting.ApiGatewayStageMethodSetting instance GHC.Show.Show Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting.ApiGatewayStageMethodSetting instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting.ApiGatewayStageMethodSetting instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting.ApiGatewayStageMethodSetting -- | The AWS::ApiGateway::Stage resource creates a stage for an Amazon API -- Gateway (API Gateway) deployment. module Stratosphere.Resources.ApiGatewayStage -- | Full data type definition for ApiGatewayStage. See -- apiGatewayStage for a more convenient constructor. data ApiGatewayStage ApiGatewayStage :: Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe [ApiGatewayStageMethodSetting] -> Val Text -> Val Text -> Maybe Object -> ApiGatewayStage [_apiGatewayStageCacheClusterEnabled] :: ApiGatewayStage -> Maybe (Val Bool') [_apiGatewayStageCacheClusterSize] :: ApiGatewayStage -> Maybe (Val Text) [_apiGatewayStageClientCertificateId] :: ApiGatewayStage -> Maybe (Val Text) [_apiGatewayStageDeploymentId] :: ApiGatewayStage -> Val Text [_apiGatewayStageDescription] :: ApiGatewayStage -> Maybe (Val Text) [_apiGatewayStageMethodSettings] :: ApiGatewayStage -> Maybe [ApiGatewayStageMethodSetting] [_apiGatewayStageRestApiId] :: ApiGatewayStage -> Val Text [_apiGatewayStageStageName] :: ApiGatewayStage -> Val Text [_apiGatewayStageVariables] :: ApiGatewayStage -> Maybe Object -- | Constructor for ApiGatewayStage containing required fields as -- arguments. apiGatewayStage :: Val Text -> Val Text -> Val Text -> ApiGatewayStage -- | Indicates whether cache clustering is enabled for the stage. agsCacheClusterEnabled :: Lens' ApiGatewayStage (Maybe (Val Bool')) -- | The stage's cache cluster size. agsCacheClusterSize :: Lens' ApiGatewayStage (Maybe (Val Text)) -- | The identifier of the client certificate that API Gateway uses to call -- your integration endpoints in the stage. agsClientCertificateId :: Lens' ApiGatewayStage (Maybe (Val Text)) -- | The ID of the deployment that the stage points to. agsDeploymentId :: Lens' ApiGatewayStage (Val Text) -- | A description of the stage's purpose. agsDescription :: Lens' ApiGatewayStage (Maybe (Val Text)) -- | Settings for all methods in the stage. agsMethodSettings :: Lens' ApiGatewayStage (Maybe [ApiGatewayStageMethodSetting]) -- | The ID of the RestApi resource that you're deploying with this stage. agsRestApiId :: Lens' ApiGatewayStage (Val Text) -- | The name of the stage, which API Gateway uses as the first path -- segment in the invoke Uniform Resource Identifier (URI). agsStageName :: Lens' ApiGatewayStage (Val Text) -- | A map (string to string map) that defines the stage variables, where -- the variable name is the key and the variable value is the value. -- Variable names are limited to alphanumeric characters. Values must -- match the following regular expression: -- [A-Za-z0-9-._~:/?#&=,]+. agsVariables :: Lens' ApiGatewayStage (Maybe Object) instance GHC.Generics.Generic Stratosphere.Resources.ApiGatewayStage.ApiGatewayStage instance GHC.Show.Show Stratosphere.Resources.ApiGatewayStage.ApiGatewayStage instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ApiGatewayStage.ApiGatewayStage instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ApiGatewayStage.ApiGatewayStage -- | S3Location is a property of the AWS::ApiGateway::RestApi resource that -- specifies the Amazon Simple Storage Service (Amazon S3) location of a -- Swagger file that defines a set of RESTful APIs in JSON or YAML for an -- Amazon API Gateway (API Gateway) RestApi. module Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location -- | Full data type definition for ApiGatewayRestApiS3Location. See -- apiGatewayRestApiS3Location for a more convenient constructor. data ApiGatewayRestApiS3Location ApiGatewayRestApiS3Location :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> ApiGatewayRestApiS3Location [_apiGatewayRestApiS3LocationBucket] :: ApiGatewayRestApiS3Location -> Maybe (Val Text) [_apiGatewayRestApiS3LocationETag] :: ApiGatewayRestApiS3Location -> Maybe (Val Text) [_apiGatewayRestApiS3LocationKey] :: ApiGatewayRestApiS3Location -> Maybe (Val Text) [_apiGatewayRestApiS3LocationVersion] :: ApiGatewayRestApiS3Location -> Maybe (Val Text) -- | Constructor for ApiGatewayRestApiS3Location containing required -- fields as arguments. apiGatewayRestApiS3Location :: ApiGatewayRestApiS3Location -- | The name of the S3 bucket where the Swagger file is stored. agraslBucket :: Lens' ApiGatewayRestApiS3Location (Maybe (Val Text)) -- | The Amazon S3 ETag (a file checksum) of the Swagger file. If you don't -- specify a value, API Gateway skips ETag validation of your Swagger -- file. agraslETag :: Lens' ApiGatewayRestApiS3Location (Maybe (Val Text)) -- | The file name of the Swagger file (Amazon S3 object name). agraslKey :: Lens' ApiGatewayRestApiS3Location (Maybe (Val Text)) -- | For versioning-enabled buckets, a specific version of the Swagger -- file. agraslVersion :: Lens' ApiGatewayRestApiS3Location (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location.ApiGatewayRestApiS3Location instance GHC.Show.Show Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location.ApiGatewayRestApiS3Location instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location.ApiGatewayRestApiS3Location instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location.ApiGatewayRestApiS3Location -- | The AWS::ApiGateway::RestApi resource contains a collection of Amazon -- API Gateway (API Gateway) resources and methods that can be invoked -- through HTTPS endpoints. module Stratosphere.Resources.ApiGatewayRestApi -- | Full data type definition for ApiGatewayRestApi. See -- apiGatewayRestApi for a more convenient constructor. data ApiGatewayRestApi ApiGatewayRestApi :: Maybe Object -> Maybe ApiGatewayRestApiS3Location -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Bool') -> Val Text -> Maybe [Val Text] -> ApiGatewayRestApi [_apiGatewayRestApiBody] :: ApiGatewayRestApi -> Maybe Object [_apiGatewayRestApiBodyS3Location] :: ApiGatewayRestApi -> Maybe ApiGatewayRestApiS3Location [_apiGatewayRestApiCloneFrom] :: ApiGatewayRestApi -> Maybe (Val Text) [_apiGatewayRestApiDescription] :: ApiGatewayRestApi -> Maybe (Val Text) [_apiGatewayRestApiFailOnWarnings] :: ApiGatewayRestApi -> Maybe (Val Bool') [_apiGatewayRestApiName] :: ApiGatewayRestApi -> Val Text [_apiGatewayRestApiParameters] :: ApiGatewayRestApi -> Maybe [Val Text] -- | Constructor for ApiGatewayRestApi containing required fields as -- arguments. apiGatewayRestApi :: Val Text -> ApiGatewayRestApi -- | A Swagger specification that defines a set of RESTful APIs in the JSON -- format. agraBody :: Lens' ApiGatewayRestApi (Maybe Object) -- | The Amazon Simple Storage Service (Amazon S3) location that points to -- a Swagger file, which defines a set of RESTful APIs in JSON or YAML -- format. agraBodyS3Location :: Lens' ApiGatewayRestApi (Maybe ApiGatewayRestApiS3Location) -- | The ID of the API Gateway RestApi resource that you want to clone. agraCloneFrom :: Lens' ApiGatewayRestApi (Maybe (Val Text)) -- | A description of the purpose of this API Gateway RestApi resource. agraDescription :: Lens' ApiGatewayRestApi (Maybe (Val Text)) -- | If a warning occurs while API Gateway is creating the RestApi -- resource, indicates whether to roll back the resource. agraFailOnWarnings :: Lens' ApiGatewayRestApi (Maybe (Val Bool')) -- | A name for the API Gateway RestApi resource. agraName :: Lens' ApiGatewayRestApi (Val Text) -- | Custom header parameters for the request. agraParameters :: Lens' ApiGatewayRestApi (Maybe [Val Text]) instance GHC.Generics.Generic Stratosphere.Resources.ApiGatewayRestApi.ApiGatewayRestApi instance GHC.Show.Show Stratosphere.Resources.ApiGatewayRestApi.ApiGatewayRestApi instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ApiGatewayRestApi.ApiGatewayRestApi instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ApiGatewayRestApi.ApiGatewayRestApi -- | MethodResponse is a property of the AWS::ApiGateway::Method resource -- that defines the responses that can be sent to the client who calls an -- Amazon API Gateway (API Gateway) method. module Stratosphere.ResourceProperties.ApiGatewayMethodResponse -- | Full data type definition for ApiGatewayMethodResponse. See -- apiGatewayMethodResponse for a more convenient constructor. data ApiGatewayMethodResponse ApiGatewayMethodResponse :: Maybe Object -> Maybe Object -> Val Text -> ApiGatewayMethodResponse [_apiGatewayMethodResponseResponseModels] :: ApiGatewayMethodResponse -> Maybe Object [_apiGatewayMethodResponseResponseParameters] :: ApiGatewayMethodResponse -> Maybe Object [_apiGatewayMethodResponseStatusCode] :: ApiGatewayMethodResponse -> Val Text -- | Constructor for ApiGatewayMethodResponse containing required -- fields as arguments. apiGatewayMethodResponse :: Val Text -> ApiGatewayMethodResponse -- | The resources used for the response's content type. Specify response -- models as key-value pairs (string-to-string maps), with a content type -- as the key and a Model resource name as the value. agmrResponseModels :: Lens' ApiGatewayMethodResponse (Maybe Object) -- | Response parameters that API Gateway sends to the client that called a -- method. Specify response parameters as key-value pairs -- (string-to-Boolean maps), with a destination as the key and a Boolean -- as the value. Specify the destination using the following pattern: -- method.response.header.name, where the name is a valid, unique header -- name. The Boolean specifies whether a parameter is required. agmrResponseParameters :: Lens' ApiGatewayMethodResponse (Maybe Object) -- | The method response's status code, which you map to an -- IntegrationResponse. agmrStatusCode :: Lens' ApiGatewayMethodResponse (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ApiGatewayMethodResponse.ApiGatewayMethodResponse instance GHC.Show.Show Stratosphere.ResourceProperties.ApiGatewayMethodResponse.ApiGatewayMethodResponse instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ApiGatewayMethodResponse.ApiGatewayMethodResponse instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ApiGatewayMethodResponse.ApiGatewayMethodResponse -- | IntegrationResponse is a property of the Amazon API Gateway Method -- Integration property that specifies the response that Amazon API -- Gateway (API Gateway) sends after a method's back end finishes -- processing a request. module Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse -- | Full data type definition for ApiGatewayIntegrationResponse. See -- apiGatewayIntegrationResponse for a more convenient -- constructor. data ApiGatewayIntegrationResponse ApiGatewayIntegrationResponse :: Maybe Object -> Maybe Object -> Maybe (Val Text) -> Maybe (Val Text) -> ApiGatewayIntegrationResponse [_apiGatewayIntegrationResponseResponseParameters] :: ApiGatewayIntegrationResponse -> Maybe Object [_apiGatewayIntegrationResponseResponseTemplates] :: ApiGatewayIntegrationResponse -> Maybe Object [_apiGatewayIntegrationResponseSelectionPattern] :: ApiGatewayIntegrationResponse -> Maybe (Val Text) [_apiGatewayIntegrationResponseStatusCode] :: ApiGatewayIntegrationResponse -> Maybe (Val Text) -- | Constructor for ApiGatewayIntegrationResponse containing -- required fields as arguments. apiGatewayIntegrationResponse :: ApiGatewayIntegrationResponse -- | The response parameters from the back-end response that API Gateway -- sends to the method response. Specify response parameters as key-value -- pairs (string-to-string maps), with a destination as the key and a -- source as the value. For more information, see API Gateway API Request -- and Response Parameter-Mapping Reference in the API Gateway Developer -- Guide. The destination must be an existing response parameter in the -- MethodResponse property. The source must be an existing method request -- parameter or a static value. Static values must be enclosed in single -- quotation marks and pre-encoded based on their destination in the -- request. agirResponseParameters :: Lens' ApiGatewayIntegrationResponse (Maybe Object) -- | The templates used to transform the integration response body. Specify -- templates as key-value pairs (string-to-string maps), with a content -- type as the key and a template as the value. For more information, see -- API Gateway API Request and Response Payload-Mapping Template -- Reference in the API Gateway Developer Guide. agirResponseTemplates :: Lens' ApiGatewayIntegrationResponse (Maybe Object) -- | A regular expression that specifies which error strings or status -- codes from the back end map to the integration response. agirSelectionPattern :: Lens' ApiGatewayIntegrationResponse (Maybe (Val Text)) -- | The status code that API Gateway uses to map the integration response -- to a MethodResponse status code. agirStatusCode :: Lens' ApiGatewayIntegrationResponse (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse.ApiGatewayIntegrationResponse instance GHC.Show.Show Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse.ApiGatewayIntegrationResponse instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse.ApiGatewayIntegrationResponse instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse.ApiGatewayIntegrationResponse -- | Integration is a property of the AWS::ApiGateway::Method resource that -- specifies information about the target back end that an Amazon API -- Gateway (API Gateway) method calls. module Stratosphere.ResourceProperties.ApiGatewayIntegration -- | Full data type definition for ApiGatewayIntegration. See -- apiGatewayIntegration for a more convenient constructor. data ApiGatewayIntegration ApiGatewayIntegration :: Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe HttpMethod -> Maybe [ApiGatewayIntegrationResponse] -> Maybe PassthroughBehavior -> Maybe Object -> Maybe Object -> ApiBackendType -> Maybe (Val Text) -> ApiGatewayIntegration [_apiGatewayIntegrationCacheKeyParameters] :: ApiGatewayIntegration -> Maybe [Val Text] [_apiGatewayIntegrationCacheNamespace] :: ApiGatewayIntegration -> Maybe (Val Text) [_apiGatewayIntegrationCredentials] :: ApiGatewayIntegration -> Maybe (Val Text) [_apiGatewayIntegrationIntegrationHttpMethod] :: ApiGatewayIntegration -> Maybe HttpMethod [_apiGatewayIntegrationIntegrationResponses] :: ApiGatewayIntegration -> Maybe [ApiGatewayIntegrationResponse] [_apiGatewayIntegrationPassthroughBehavior] :: ApiGatewayIntegration -> Maybe PassthroughBehavior [_apiGatewayIntegrationRequestParameters] :: ApiGatewayIntegration -> Maybe Object [_apiGatewayIntegrationRequestTemplates] :: ApiGatewayIntegration -> Maybe Object [_apiGatewayIntegrationType] :: ApiGatewayIntegration -> ApiBackendType [_apiGatewayIntegrationUri] :: ApiGatewayIntegration -> Maybe (Val Text) -- | Constructor for ApiGatewayIntegration containing required -- fields as arguments. apiGatewayIntegration :: ApiBackendType -> ApiGatewayIntegration -- | A list of request parameters whose values API Gateway will cache. agiCacheKeyParameters :: Lens' ApiGatewayIntegration (Maybe [Val Text]) -- | An API-specific tag group of related cached parameters. agiCacheNamespace :: Lens' ApiGatewayIntegration (Maybe (Val Text)) -- | The credentials required for the integration. To specify an AWS -- Identity and Access Management (IAM) role that API Gateway assumes, -- specify the role's Amazon Resource Name (ARN). To require that the -- caller's identity be passed through from the request, specify -- arn:aws:iam::*:user/*. To use resource-based permissions on the AWS -- Lambda (Lambda) function, don't specify this property. Use the -- AWS::Lambda::Permission resource to permit API Gateway to call the -- function. For more information, see Allow Amazon API Gateway to Invoke -- a Lambda Function in the AWS Lambda Developer Guide. agiCredentials :: Lens' ApiGatewayIntegration (Maybe (Val Text)) -- | The integration's HTTP method type. agiIntegrationHttpMethod :: Lens' ApiGatewayIntegration (Maybe HttpMethod) -- | The response that API Gateway provides after a method's back end -- completes processing a request. API Gateway intercepts the back end's -- response so that you can control how API Gateway surfaces back-end -- responses. For example, you can map the back-end status codes to codes -- that you define. agiIntegrationResponses :: Lens' ApiGatewayIntegration (Maybe [ApiGatewayIntegrationResponse]) -- | Indicates when API Gateway passes requests to the targeted back end. -- This behavior depends on the request's Content-Type header and whether -- you defined a mapping template for it. For more information and valid -- values, see the passthroughBehavior field in the API Gateway API -- Reference. agiPassthroughBehavior :: Lens' ApiGatewayIntegration (Maybe PassthroughBehavior) -- | The request parameters that API Gateway sends with the back-end -- request. Specify request parameters as key-value pairs -- (string-to-string maps), with a destination as the key and a source as -- the value. Specify the destination using the following pattern -- integration.request.location.name, where location is querystring, -- path, or header, and name is a valid, unique parameter name. The -- source must be an existing method request parameter or a static value. -- Static values must be enclosed in single quotation marks and -- pre-encoded based on their destination in the request. agiRequestParameters :: Lens' ApiGatewayIntegration (Maybe Object) -- | A map of Apache Velocity templates that are applied on the request -- payload. The template that API Gateway uses is based on the value of -- the Content-Type header sent by the client. The content type value is -- the key, and the template is the value (specified as a string), such -- as the following snippet: For more information about templates, see -- API Gateway API Request and Response Payload-Mapping Template -- Reference in the API Gateway Developer Guide. agiRequestTemplates :: Lens' ApiGatewayIntegration (Maybe Object) -- | The type of back end your method is running, such as HTTP, AWS, or -- MOCK. For valid values, see the type property in the Amazon API -- Gateway REST API Reference. agiType :: Lens' ApiGatewayIntegration ApiBackendType -- | The integration's Uniform Resource Identifier (URI). If you specify -- HTTP for the Type property, specify the API endpoint URL. If you -- specify MOCK for the Type property, don't specify this property. If -- you specify AWS for the Type property, specify an AWS service that -- follows the form: -- arn:aws:apigateway:region:subdomain.service|service:path|action/service_api. -- For example, a Lambda function URI follows the form: -- arn:aws:apigateway:region:lambda:path/path. The path is usually in the -- form 2015-03-31functionsLambdaFunctionARNinvocations. -- For more information, see the uri property of the Integration resource -- in the Amazon API Gateway REST API Reference. agiUri :: Lens' ApiGatewayIntegration (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.ApiGatewayIntegration.ApiGatewayIntegration instance GHC.Show.Show Stratosphere.ResourceProperties.ApiGatewayIntegration.ApiGatewayIntegration instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.ApiGatewayIntegration.ApiGatewayIntegration instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.ApiGatewayIntegration.ApiGatewayIntegration -- | The AWS::ApiGateway::Method resource creates Amazon API Gateway (API -- Gateway) methods that define the parameters and body that clients must -- send in their requests. module Stratosphere.Resources.ApiGatewayMethod -- | Full data type definition for ApiGatewayMethod. See -- apiGatewayMethod for a more convenient constructor. data ApiGatewayMethod ApiGatewayMethod :: Maybe (Val Bool') -> AuthorizationType -> Maybe (Val Text) -> HttpMethod -> Maybe ApiGatewayIntegration -> Maybe [ApiGatewayMethodResponse] -> Maybe Object -> Maybe Object -> Val Text -> Val Text -> ApiGatewayMethod [_apiGatewayMethodApiKeyRequired] :: ApiGatewayMethod -> Maybe (Val Bool') [_apiGatewayMethodAuthorizationType] :: ApiGatewayMethod -> AuthorizationType [_apiGatewayMethodAuthorizerId] :: ApiGatewayMethod -> Maybe (Val Text) [_apiGatewayMethodHttpMethod] :: ApiGatewayMethod -> HttpMethod [_apiGatewayMethodIntegration] :: ApiGatewayMethod -> Maybe ApiGatewayIntegration [_apiGatewayMethodMethodResponses] :: ApiGatewayMethod -> Maybe [ApiGatewayMethodResponse] [_apiGatewayMethodRequestModels] :: ApiGatewayMethod -> Maybe Object [_apiGatewayMethodRequestParameters] :: ApiGatewayMethod -> Maybe Object [_apiGatewayMethodResourceId] :: ApiGatewayMethod -> Val Text [_apiGatewayMethodRestApiId] :: ApiGatewayMethod -> Val Text -- | Constructor for ApiGatewayMethod containing required fields as -- arguments. apiGatewayMethod :: AuthorizationType -> HttpMethod -> Val Text -> Val Text -> ApiGatewayMethod -- | Indicates whether the method requires clients to submit a valid API -- key. agmeApiKeyRequired :: Lens' ApiGatewayMethod (Maybe (Val Bool')) -- | The method's authorization type. agmeAuthorizationType :: Lens' ApiGatewayMethod AuthorizationType -- | The identifier of the authorizer to use on this method. If you specify -- this property, specify CUSTOM for the AuthorizationType property. agmeAuthorizerId :: Lens' ApiGatewayMethod (Maybe (Val Text)) -- | The HTTP method that clients will use to call this method. agmeHttpMethod :: Lens' ApiGatewayMethod HttpMethod -- | The back-end system that the method calls when it receives a request. agmeIntegration :: Lens' ApiGatewayMethod (Maybe ApiGatewayIntegration) -- | The responses that can be sent to the client who calls the method. agmeMethodResponses :: Lens' ApiGatewayMethod (Maybe [ApiGatewayMethodResponse]) -- | The resources used for the response's content type. Specify response -- models as key-value pairs (string-to-string map), with a content type -- as the key and a Model resource name as the value. agmeRequestModels :: Lens' ApiGatewayMethod (Maybe Object) -- | Request parameters that API Gateway accepts. Specify request -- parameters as key-value pairs (string-to-Boolean map), with a source -- as the key and a Boolean as the value. The Boolean specifies whether a -- parameter is required. A source must match the following format -- method.request.location.name, where the location is querystring, path, -- or header, and name is a valid, unique parameter name. agmeRequestParameters :: Lens' ApiGatewayMethod (Maybe Object) -- | The ID of an API Gateway resource. For root resource methods, specify -- the RestApi root resource ID, such as { Fn::GetAtt: -- [MyRestApi, RootResourceId] }. agmeResourceId :: Lens' ApiGatewayMethod (Val Text) -- | The ID of the RestApi resource in which API Gateway creates the -- method. agmeRestApiId :: Lens' ApiGatewayMethod (Val Text) instance GHC.Generics.Generic Stratosphere.Resources.ApiGatewayMethod.ApiGatewayMethod instance GHC.Show.Show Stratosphere.Resources.ApiGatewayMethod.ApiGatewayMethod instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ApiGatewayMethod.ApiGatewayMethod instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ApiGatewayMethod.ApiGatewayMethod -- | AliasTarget is a property of the AWS::Route53::RecordSet resource. For -- more information about alias resource record sets, see Creating Alias -- Resource Record Sets in the Amazon Route 53 Developer Guide. module Stratosphere.ResourceProperties.AliasTarget -- | Full data type definition for AliasTarget. See aliasTarget for -- a more convenient constructor. data AliasTarget AliasTarget :: Val Text -> Maybe (Val Bool') -> Val Text -> AliasTarget [_aliasTargetDNSName] :: AliasTarget -> Val Text [_aliasTargetEvaluateTargetHealth] :: AliasTarget -> Maybe (Val Bool') [_aliasTargetHostedZoneId] :: AliasTarget -> Val Text -- | Constructor for AliasTarget containing required fields as -- arguments. aliasTarget :: Val Text -> Val Text -> AliasTarget -- | The DNS name of the load balancer, the domain name of the CloudFront -- distribution, the website endpoint of the Amazon S3 bucket, or another -- record set in the same hosted zone that is the target of the alias. -- Type: String atDNSName :: Lens' AliasTarget (Val Text) -- | Whether Amazon Route 53 checks the health of the resource record sets -- in the alias target when responding to DNS queries. For more -- information about using this property, see EvaluateTargetHealth in the -- Amazon Route 53 API Reference. Type: Boolean atEvaluateTargetHealth :: Lens' AliasTarget (Maybe (Val Bool')) -- | The hosted zone ID. For load balancers, use the canonical hosted zone -- ID of the load balancer. For Amazon S3, use the hosted zone ID for -- your bucket's website endpoint. For CloudFront, use Z2FDTNDATAQYW2. -- For examples, see Example: Creating Alias Resource Record Sets in the -- Amazon Route 53 API Reference. Type: String atHostedZoneId :: Lens' AliasTarget (Val Text) instance GHC.Generics.Generic Stratosphere.ResourceProperties.AliasTarget.AliasTarget instance GHC.Show.Show Stratosphere.ResourceProperties.AliasTarget.AliasTarget instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.AliasTarget.AliasTarget instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.AliasTarget.AliasTarget -- | The AWS::Route53::RecordSet type can be used as a standalone resource -- or as an embedded property in the AWS::Route53::RecordSetGroup type. -- Note that some AWS::Route53::RecordSet properties are valid only when -- used within AWS::Route53::RecordSetGroup. For more information about -- constraints and values for each property, see POST CreateHostedZone -- for hosted zones and POST ChangeResourceRecordSet for resource record -- sets. module Stratosphere.Resources.RecordSet -- | Full data type definition for RecordSet. See recordSet for a -- more convenient constructor. data RecordSet RecordSet :: Maybe AliasTarget -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe [RecordSetGeoLocation] -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Text) -> Maybe (Val Text) -> Val Text -> Maybe (Val Integer') -> RecordSet [_recordSetAliasTarget] :: RecordSet -> Maybe AliasTarget [_recordSetComment] :: RecordSet -> Maybe (Val Text) [_recordSetFailover] :: RecordSet -> Maybe (Val Text) [_recordSetGeoLocation] :: RecordSet -> Maybe [RecordSetGeoLocation] [_recordSetHealthCheckId] :: RecordSet -> Maybe (Val Text) [_recordSetHostedZoneId] :: RecordSet -> Maybe (Val Text) [_recordSetHostedZoneName] :: RecordSet -> Maybe (Val Text) [_recordSetName] :: RecordSet -> Val Text [_recordSetRegion] :: RecordSet -> Maybe (Val Text) [_recordSetResourceRecords] :: RecordSet -> Maybe [Val Text] [_recordSetSetIdentifier] :: RecordSet -> Maybe (Val Text) [_recordSetTTL] :: RecordSet -> Maybe (Val Text) [_recordSetType] :: RecordSet -> Val Text [_recordSetWeight] :: RecordSet -> Maybe (Val Integer') -- | Constructor for RecordSet containing required fields as -- arguments. recordSet :: Val Text -> Val Text -> RecordSet -- | Alias resource record sets only: Information about the domain to which -- you are redirecting traffic. If you specify this property, do not -- specify the TTL property. The alias uses a TTL value from the alias -- target record. For more information about alias resource record sets, -- see Creating Alias Resource Record Sets in the Amazon Route 53 -- Developer Guide and POST ChangeResourceRecordSets in the Amazon Route -- 53 API reference. rsAliasTarget :: Lens' RecordSet (Maybe AliasTarget) -- | Any comments that you want to include about the hosted zone. Important -- If the record set is part of a record set group, this property isn't -- valid. Don't specify this property. rsComment :: Lens' RecordSet (Maybe (Val Text)) -- | Designates the record set as a PRIMARY or SECONDARY failover record -- set. When you have more than one resource performing the same -- function, you can configure Amazon Route 53 to check the health of -- your resources and use only health resources to respond to DNS -- queries. You cannot create nonfailover resource record sets that have -- the same Name and Type property values as failover resource record -- sets. For more information, see the Failover element in the Amazon -- Route 53 API Reference. If you specify this property, you must specify -- the SetIdentifier property. rsFailover :: Lens' RecordSet (Maybe (Val Text)) -- | Describes how Amazon Route 53 responds to DNS queries based on the -- geographic origin of the query. rsGeoLocation :: Lens' RecordSet (Maybe [RecordSetGeoLocation]) -- | The health check ID that you want to apply to this record set. Amazon -- Route 53 returns this resource record set in response to a DNS query -- only while record set is healthy. rsHealthCheckId :: Lens' RecordSet (Maybe (Val Text)) -- | The ID of the hosted zone. rsHostedZoneId :: Lens' RecordSet (Maybe (Val Text)) -- | The name of the domain for the hosted zone where you want to add the -- record set. When you create a stack using an AWS::Route53::RecordSet -- that specifies HostedZoneName, AWS CloudFormation attempts to find a -- hosted zone whose name matches the HostedZoneName. If AWS -- CloudFormation cannot find a hosted zone with a matching domain name, -- or if there is more than one hosted zone with the specified domain -- name, AWS CloudFormation will not create the stack. If you have -- multiple hosted zones with the same domain name, you must explicitly -- specify the hosted zone using HostedZoneId. rsHostedZoneName :: Lens' RecordSet (Maybe (Val Text)) -- | The name of the domain. You must specify a fully qualified domain name -- that ends with a period as the last label indication. If you omit the -- final period, AWS CloudFormation adds it. rsName :: Lens' RecordSet (Val Text) -- | Latency resource record sets only: The Amazon EC2 region where the -- resource that is specified in this resource record set resides. The -- resource typically is an AWS resource, for example, Amazon EC2 -- instance or an Elastic Load Balancing load balancer, and is referred -- to by an IP address or a DNS domain name, depending on the record -- type. When Amazon Route 53 receives a DNS query for a domain name and -- type for which you have created latency resource record sets, Amazon -- Route 53 selects the latency resource record set that has the lowest -- latency between the end user and the associated Amazon EC2 region. -- Amazon Route 53 then returns the value that is associated with the -- selected resource record set. The following restrictions must be -- followed: You can only specify one resource record per latency -- resource record set. You can only create one latency resource record -- set for each Amazon EC2 region. You are not required to create latency -- resource record sets for all Amazon EC2 regions. Amazon Route 53 will -- choose the region with the best latency from among the regions for -- which you create latency resource record sets. You cannot create both -- weighted and latency resource record sets that have the same values -- for the Name and Type elements. To see a list of regions by service, -- see Regions and Endpoints in the AWS General Reference. rsRegion :: Lens' RecordSet (Maybe (Val Text)) -- | List of resource records to add. Each record should be in the format -- appropriate for the record type specified by the Type property. For -- information about different record types and their record formats, see -- Appendix: Domain Name Format in the Amazon Route 53 Developer Guide. rsResourceRecords :: Lens' RecordSet (Maybe [Val Text]) -- | A unique identifier that differentiates among multiple resource record -- sets that have the same combination of DNS name and type. rsSetIdentifier :: Lens' RecordSet (Maybe (Val Text)) -- | The resource record cache time to live (TTL), in seconds. If you -- specify this property, do not specify the AliasTarget property. For -- alias target records, the alias uses a TTL value from the target. If -- you specify this property, you must specify the ResourceRecords -- property. rsTTL :: Lens' RecordSet (Maybe (Val Text)) -- | The type of records to add. rsType :: Lens' RecordSet (Val Text) -- | Weighted resource record sets only: Among resource record sets that -- have the same combination of DNS name and type, a value that -- determines what portion of traffic for the current resource record set -- is routed to the associated location. For more information about -- weighted resource record sets, see Setting Up Weighted Resource Record -- Sets in the Amazon Route 53 Developer Guide. rsWeight :: Lens' RecordSet (Maybe (Val Integer')) instance GHC.Generics.Generic Stratosphere.Resources.RecordSet.RecordSet instance GHC.Show.Show Stratosphere.Resources.RecordSet.RecordSet instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.RecordSet.RecordSet instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.RecordSet.RecordSet -- | The AWS::Route53::RecordSetGroup resource creates record sets for a -- hosted zone. For more information about constraints and values for -- each property, see POST CreateHostedZone for hosted zones and POST -- ChangeResourceRecordSet for resource record sets. module Stratosphere.Resources.RecordSetGroup -- | Full data type definition for RecordSetGroup. See -- recordSetGroup for a more convenient constructor. data RecordSetGroup RecordSetGroup :: Maybe (Val Text) -> Maybe (Val Text) -> Maybe (Val Text) -> [RecordSet] -> RecordSetGroup [_recordSetGroupComment] :: RecordSetGroup -> Maybe (Val Text) [_recordSetGroupHostedZoneId] :: RecordSetGroup -> Maybe (Val Text) [_recordSetGroupHostedZoneName] :: RecordSetGroup -> Maybe (Val Text) [_recordSetGroupRecordSets] :: RecordSetGroup -> [RecordSet] -- | Constructor for RecordSetGroup containing required fields as -- arguments. recordSetGroup :: [RecordSet] -> RecordSetGroup -- | Any comments you want to include about the hosted zone. rsgComment :: Lens' RecordSetGroup (Maybe (Val Text)) -- | The ID of the hosted zone. rsgHostedZoneId :: Lens' RecordSetGroup (Maybe (Val Text)) -- | The name of the domain for the hosted zone where you want to add the -- record set. When you create a stack using an AWS::Route53::RecordSet -- that specifies HostedZoneName, AWS CloudFormation attempts to find a -- hosted zone whose name matches the HostedZoneName. If AWS -- CloudFormation cannot find a hosted zone with a matching domain name, -- or if there is more than one hosted zone with the specified domain -- name, AWS CloudFormation will not create the stack. If you have -- multiple hosted zones with the same domain name, you must explicitly -- specify the hosted zone using HostedZoneId. rsgHostedZoneName :: Lens' RecordSetGroup (Maybe (Val Text)) -- | List of resource record sets to add. rsgRecordSets :: Lens' RecordSetGroup [RecordSet] instance GHC.Generics.Generic Stratosphere.Resources.RecordSetGroup.RecordSetGroup instance GHC.Show.Show Stratosphere.Resources.RecordSetGroup.RecordSetGroup instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.RecordSetGroup.RecordSetGroup instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.RecordSetGroup.RecordSetGroup -- | The AccessLoggingPolicy property describes where and how access logs -- are stored for the AWS::ElasticLoadBalancing::LoadBalancer resource. module Stratosphere.ResourceProperties.AccessLoggingPolicy -- | Full data type definition for AccessLoggingPolicy. See -- accessLoggingPolicy for a more convenient constructor. data AccessLoggingPolicy AccessLoggingPolicy :: Maybe (Val Integer') -> Val Bool' -> Val Text -> Maybe (Val Text) -> AccessLoggingPolicy [_accessLoggingPolicyEmitInterval] :: AccessLoggingPolicy -> Maybe (Val Integer') [_accessLoggingPolicyEnabled] :: AccessLoggingPolicy -> Val Bool' [_accessLoggingPolicyS3BucketName] :: AccessLoggingPolicy -> Val Text [_accessLoggingPolicyS3BucketPrefix] :: AccessLoggingPolicy -> Maybe (Val Text) -- | Constructor for AccessLoggingPolicy containing required fields -- as arguments. accessLoggingPolicy :: Val Bool' -> Val Text -> AccessLoggingPolicy -- | The interval for publishing access logs in minutes. You can specify an -- interval of either 5 minutes or 60 minutes. alpEmitInterval :: Lens' AccessLoggingPolicy (Maybe (Val Integer')) -- | Whether logging is enabled for the load balancer. alpEnabled :: Lens' AccessLoggingPolicy (Val Bool') -- | The name of an Amazon S3 bucket where access log files are stored. alpS3BucketName :: Lens' AccessLoggingPolicy (Val Text) -- | A prefix for the all log object keys, such as -- my-load-balancer-logs/prod. If you store log files from multiple -- sources in a single bucket, you can use a prefix to distinguish each -- log file and its source. alpS3BucketPrefix :: Lens' AccessLoggingPolicy (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceProperties.AccessLoggingPolicy.AccessLoggingPolicy instance GHC.Show.Show Stratosphere.ResourceProperties.AccessLoggingPolicy.AccessLoggingPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.AccessLoggingPolicy.AccessLoggingPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.AccessLoggingPolicy.AccessLoggingPolicy -- | The AWS::ElasticLoadBalancing::LoadBalancer type creates a -- LoadBalancer. module Stratosphere.Resources.LoadBalancer -- | Full data type definition for LoadBalancer. See loadBalancer -- for a more convenient constructor. data LoadBalancer LoadBalancer :: Maybe AccessLoggingPolicy -> Maybe [AppCookieStickinessPolicy] -> Maybe [Val Text] -> Maybe ConnectionDrainingPolicy -> Maybe ConnectionSettings -> Maybe (Val Bool') -> Maybe HealthCheck -> Maybe [Val Text] -> Maybe [LBCookieStickinessPolicy] -> Maybe (Val Text) -> [ListenerProperty] -> Maybe [ELBPolicy] -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe [Val Text] -> Maybe [ResourceTag] -> LoadBalancer [_loadBalancerAccessLoggingPolicy] :: LoadBalancer -> Maybe AccessLoggingPolicy [_loadBalancerAppCookieStickinessPolicy] :: LoadBalancer -> Maybe [AppCookieStickinessPolicy] [_loadBalancerAvailabilityZones] :: LoadBalancer -> Maybe [Val Text] [_loadBalancerConnectionDrainingPolicy] :: LoadBalancer -> Maybe ConnectionDrainingPolicy [_loadBalancerConnectionSettings] :: LoadBalancer -> Maybe ConnectionSettings [_loadBalancerCrossZone] :: LoadBalancer -> Maybe (Val Bool') [_loadBalancerHealthCheck] :: LoadBalancer -> Maybe HealthCheck [_loadBalancerInstances] :: LoadBalancer -> Maybe [Val Text] [_loadBalancerLBCookieStickinessPolicy] :: LoadBalancer -> Maybe [LBCookieStickinessPolicy] [_loadBalancerLoadBalancerName] :: LoadBalancer -> Maybe (Val Text) [_loadBalancerListeners] :: LoadBalancer -> [ListenerProperty] [_loadBalancerPolicies] :: LoadBalancer -> Maybe [ELBPolicy] [_loadBalancerScheme] :: LoadBalancer -> Maybe (Val Text) [_loadBalancerSecurityGroups] :: LoadBalancer -> Maybe [Val Text] [_loadBalancerSubnets] :: LoadBalancer -> Maybe [Val Text] [_loadBalancerTags] :: LoadBalancer -> Maybe [ResourceTag] -- | Constructor for LoadBalancer containing required fields as -- arguments. loadBalancer :: [ListenerProperty] -> LoadBalancer -- | Captures detailed information for all requests made to your load -- balancer, such as the time a request was received, client’s IP -- address, latencies, request path, and server responses. lbAccessLoggingPolicy :: Lens' LoadBalancer (Maybe AccessLoggingPolicy) -- | Generates one or more stickiness policies with sticky session -- lifetimes that follow that of an application-generated cookie. These -- policies can be associated only with HTTP/HTTPS listeners. lbAppCookieStickinessPolicy :: Lens' LoadBalancer (Maybe [AppCookieStickinessPolicy]) -- | The Availability Zones in which to create the load balancer. You can -- specify the AvailabilityZones or Subnets property, but not both. Note -- For load balancers that are in a VPC, specify the Subnets property. lbAvailabilityZones :: Lens' LoadBalancer (Maybe [Val Text]) -- | Whether deregistered or unhealthy instances can complete all in-flight -- requests. lbConnectionDrainingPolicy :: Lens' LoadBalancer (Maybe ConnectionDrainingPolicy) -- | Specifies how long front-end and back-end connections of your load -- balancer can remain idle. lbConnectionSettings :: Lens' LoadBalancer (Maybe ConnectionSettings) -- | Whether cross-zone load balancing is enabled for the load balancer. -- With cross-zone load balancing, your load balancer nodes route traffic -- to the back-end instances across all Availability Zones. By default -- the CrossZone property is false. lbCrossZone :: Lens' LoadBalancer (Maybe (Val Bool')) -- | Application health check for the instances. lbHealthCheck :: Lens' LoadBalancer (Maybe HealthCheck) -- | A list of EC2 instance IDs for the load balancer. lbInstances :: Lens' LoadBalancer (Maybe [Val Text]) -- | Generates a stickiness policy with sticky session lifetimes controlled -- by the lifetime of the browser (user-agent), or by a specified -- expiration period. This policy can be associated only with HTTP/HTTPS -- listeners. lbLBCookieStickinessPolicy :: Lens' LoadBalancer (Maybe [LBCookieStickinessPolicy]) -- | A name for the load balancer. If you don't specify a name, AWS -- CloudFormation generates a unique physical ID and uses that ID for the -- load balancer. The name must be unique within your set of load -- balancers. For more information, see Name Type. Important If you -- specify a name, you cannot do updates that require this resource to be -- replaced. You can still do updates that require no or some -- interruption. If you must replace the resource, specify a new name. lbLoadBalancerName :: Lens' LoadBalancer (Maybe (Val Text)) -- | One or more listeners for this load balancer. Each listener must be -- registered for a specific port, and you cannot have more than one -- listener for a given port. Important If you update the property values -- for a listener specified by the Listeners property, AWS CloudFormation -- will delete the existing listener and create a new one with the -- updated properties. During the time that AWS CloudFormation is -- performing this action, clients will not be able to connect to the -- load balancer. lbListeners :: Lens' LoadBalancer [ListenerProperty] -- | A list of elastic load balancing policies to apply to this elastic -- load balancer. lbPolicies :: Lens' LoadBalancer (Maybe [ELBPolicy]) -- | For load balancers attached to an Amazon VPC, this parameter can be -- used to specify the type of load balancer to use. Specify internal to -- create an internal load balancer with a DNS name that resolves to -- private IP addresses or internet-facing to create a load balancer with -- a publicly resolvable DNS name, which resolves to public IP addresses. -- Note If you specify internal, you must specify subnets to associate -- with the load balancer, not Availability Zones. lbScheme :: Lens' LoadBalancer (Maybe (Val Text)) lbSecurityGroups :: Lens' LoadBalancer (Maybe [Val Text]) -- | A list of subnet IDs in your virtual private cloud (VPC) to attach to -- your load balancer. Do not specify multiple subnets that are in the -- same Availability Zone. You can specify the AvailabilityZones or -- Subnets property, but not both. For more information about using -- Elastic Load Balancing in a VPC, see How Do I Use Elastic Load -- Balancing in Amazon VPC in the Elastic Load Balancing Developer Guide. lbSubnets :: Lens' LoadBalancer (Maybe [Val Text]) -- | An arbitrary set of tags (key-value pairs) for this load balancer. lbTags :: Lens' LoadBalancer (Maybe [ResourceTag]) instance GHC.Generics.Generic Stratosphere.Resources.LoadBalancer.LoadBalancer instance GHC.Show.Show Stratosphere.Resources.LoadBalancer.LoadBalancer instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.LoadBalancer.LoadBalancer instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.LoadBalancer.LoadBalancer -- | MethodSetting is a property of the Amazon API Gateway Deployment -- StageDescription property that configures settings for all methods in -- an Amazon API Gateway (API Gateway) stage. module Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting -- | Full data type definition for -- APIGatewayDeploymentStageDescriptionMethodSetting. See -- apiGatewayDeploymentStageDescriptionMethodSetting for a more -- convenient constructor. data APIGatewayDeploymentStageDescriptionMethodSetting APIGatewayDeploymentStageDescriptionMethodSetting :: Maybe (Val Bool') -> Maybe (Val Integer') -> Maybe (Val Bool') -> Maybe (Val Bool') -> Maybe HttpMethod -> Maybe LoggingLevel -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe Double' -> APIGatewayDeploymentStageDescriptionMethodSetting [_aPIGatewayDeploymentStageDescriptionMethodSettingCacheDataEncrypted] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionMethodSettingCacheTtlInSeconds] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe (Val Integer') [_aPIGatewayDeploymentStageDescriptionMethodSettingCachingEnabled] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionMethodSettingDataTraceEnabled] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionMethodSettingHttpMethod] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe HttpMethod [_aPIGatewayDeploymentStageDescriptionMethodSettingLoggingLevel] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe LoggingLevel [_aPIGatewayDeploymentStageDescriptionMethodSettingMetricsEnabled] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionMethodSettingResourcePath] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe (Val Text) [_aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingBurstLimit] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe (Val Integer') [_aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingRateLimit] :: APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe Double' -- | Constructor for -- APIGatewayDeploymentStageDescriptionMethodSetting containing -- required fields as arguments. apiGatewayDeploymentStageDescriptionMethodSetting :: APIGatewayDeploymentStageDescriptionMethodSetting -- | Indicates whether the cached responses are encrypted. apigdsdmsCacheDataEncrypted :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Bool')) -- | The time-to-live (TTL) period, in seconds, that specifies how long API -- Gateway caches responses. apigdsdmsCacheTtlInSeconds :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Integer')) -- | Indicates whether responses are cached and returned for requests. You -- must enable a cache cluster on the stage to cache responses. For more -- information, see Enable API Gateway Caching in a Stage to Enhance API -- Performance in the API Gateway Developer Guide. apigdsdmsCachingEnabled :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Bool')) -- | Indicates whether data trace logging is enabled for methods in the -- stage. API Gateway pushes these logs to Amazon CloudWatch Logs. apigdsdmsDataTraceEnabled :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Bool')) -- | The HTTP method. apigdsdmsHttpMethod :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe HttpMethod) -- | The logging level for this method. For valid values, see the -- loggingLevel property of the Stage resource in the Amazon API Gateway -- API Reference. apigdsdmsLoggingLevel :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe LoggingLevel) -- | Indicates whether Amazon CloudWatch metrics are enabled for methods in -- the stage. apigdsdmsMetricsEnabled :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Bool')) -- | The resource path for this method. Forward slashes (/) are encoded as -- ~1 and the initial slash must include a forward slash. For example, -- the path value resourcesubresource must be encoded as -- /~1resource~1subresource. To specify the root path, use only a slash -- (/). apigdsdmsResourcePath :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Text)) -- | The number of burst requests per second that API Gateway permits -- across all APIs, stages, and methods in your AWS account. For more -- information, see Manage API Request Throttling in the API Gateway -- Developer Guide. apigdsdmsThrottlingBurstLimit :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Integer')) -- | The number of steady-state requests per second that API Gateway -- permits across all APIs, stages, and methods in your AWS account. For -- more information, see Manage API Request Throttling in the API Gateway -- Developer Guide. apigdsdmsThrottlingRateLimit :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe Double') instance GHC.Generics.Generic Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting.APIGatewayDeploymentStageDescriptionMethodSetting instance GHC.Show.Show Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting.APIGatewayDeploymentStageDescriptionMethodSetting instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting.APIGatewayDeploymentStageDescriptionMethodSetting instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting.APIGatewayDeploymentStageDescriptionMethodSetting -- | StageDescription is a property of the AWS::ApiGateway::Deployment -- resource that configures an Amazon API Gateway (API Gateway) -- deployment stage. module Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription -- | Full data type definition for APIGatewayDeploymentStageDescription. -- See apiGatewayDeploymentStageDescription for a more convenient -- constructor. data APIGatewayDeploymentStageDescription APIGatewayDeploymentStageDescription :: Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Bool') -> Maybe (Val Integer') -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Text) -> Maybe APIGatewayDeploymentStageDescriptionMethodSetting -> Maybe (Val Bool') -> Maybe (Val Text) -> Maybe (Val Integer') -> Maybe Double' -> Maybe Object -> APIGatewayDeploymentStageDescription [_aPIGatewayDeploymentStageDescriptionCacheClusterEnabled] :: APIGatewayDeploymentStageDescription -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionCacheClusterSize] :: APIGatewayDeploymentStageDescription -> Maybe (Val Text) [_aPIGatewayDeploymentStageDescriptionCacheDataEncrypted] :: APIGatewayDeploymentStageDescription -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionCacheTtlInSeconds] :: APIGatewayDeploymentStageDescription -> Maybe (Val Integer') [_aPIGatewayDeploymentStageDescriptionCachingEnabled] :: APIGatewayDeploymentStageDescription -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionClientCertificateId] :: APIGatewayDeploymentStageDescription -> Maybe (Val Text) [_aPIGatewayDeploymentStageDescriptionDataTraceEnabled] :: APIGatewayDeploymentStageDescription -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionDescription] :: APIGatewayDeploymentStageDescription -> Maybe (Val Text) [_aPIGatewayDeploymentStageDescriptionLoggingLevel] :: APIGatewayDeploymentStageDescription -> Maybe (Val Text) [_aPIGatewayDeploymentStageDescriptionMethodSettings] :: APIGatewayDeploymentStageDescription -> Maybe APIGatewayDeploymentStageDescriptionMethodSetting [_aPIGatewayDeploymentStageDescriptionMetricsEnabled] :: APIGatewayDeploymentStageDescription -> Maybe (Val Bool') [_aPIGatewayDeploymentStageDescriptionStageName] :: APIGatewayDeploymentStageDescription -> Maybe (Val Text) [_aPIGatewayDeploymentStageDescriptionThrottlingBurstLimit] :: APIGatewayDeploymentStageDescription -> Maybe (Val Integer') [_aPIGatewayDeploymentStageDescriptionThrottlingRateLimit] :: APIGatewayDeploymentStageDescription -> Maybe Double' [_aPIGatewayDeploymentStageDescriptionVariables] :: APIGatewayDeploymentStageDescription -> Maybe Object -- | Constructor for APIGatewayDeploymentStageDescription containing -- required fields as arguments. apiGatewayDeploymentStageDescription :: APIGatewayDeploymentStageDescription -- | Indicates whether cache clustering is enabled for the stage. apigdsdCacheClusterEnabled :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool')) -- | The size of the stage's cache cluster. apigdsdCacheClusterSize :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text)) -- | Indicates whether the cached responses are encrypted. apigdsdCacheDataEncrypted :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool')) -- | The time-to-live (TTL) period, in seconds, that specifies how long API -- Gateway caches responses. apigdsdCacheTtlInSeconds :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Integer')) -- | Indicates whether responses are cached and returned for requests. You -- must enable a cache cluster on the stage to cache responses. For more -- information, see Enable API Gateway Caching in a Stage to Enhance API -- Performance in the API Gateway Developer Guide. apigdsdCachingEnabled :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool')) -- | The identifier of the client certificate that API Gateway uses to call -- your integration endpoints in the stage. apigdsdClientCertificateId :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text)) -- | Indicates whether data trace logging is enabled for methods in the -- stage. API Gateway pushes these logs to Amazon CloudWatch Logs. apigdsdDataTraceEnabled :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool')) -- | A description of the purpose of the stage. apigdsdDescription :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text)) -- | The logging level for this method. For valid values, see the -- loggingLevel property of the Stage resource in the Amazon API Gateway -- API Reference. apigdsdLoggingLevel :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text)) -- | Configures settings for all of the stage's methods. apigdsdMethodSettings :: Lens' APIGatewayDeploymentStageDescription (Maybe APIGatewayDeploymentStageDescriptionMethodSetting) -- | Indicates whether Amazon CloudWatch metrics are enabled for methods in -- the stage. apigdsdMetricsEnabled :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool')) -- | The name of the stage, which API Gateway uses as the first path -- segment in the invoke Uniform Resource Identifier (URI). apigdsdStageName :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text)) -- | The number of burst requests per second that API Gateway permits -- across all APIs, stages, and methods in your AWS account. For more -- information, see Manage API Request Throttling in the API Gateway -- Developer Guide. apigdsdThrottlingBurstLimit :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Integer')) -- | The number of steady-state requests per second that API Gateway -- permits across all APIs, stages, and methods in your AWS account. For -- more information, see Manage API Request Throttling in the API Gateway -- Developer Guide. apigdsdThrottlingRateLimit :: Lens' APIGatewayDeploymentStageDescription (Maybe Double') -- | A map that defines the stage variables. Variable names must consist of -- alphanumeric characters, and the values must match the following -- regular expression: [A-Za-z0-9-._~:/?#&=,]+. apigdsdVariables :: Lens' APIGatewayDeploymentStageDescription (Maybe Object) instance GHC.Generics.Generic Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription.APIGatewayDeploymentStageDescription instance GHC.Show.Show Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription.APIGatewayDeploymentStageDescription instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription.APIGatewayDeploymentStageDescription instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription.APIGatewayDeploymentStageDescription -- | The AWS::ApiGateway::Deployment resource deploys an Amazon API Gateway -- (API Gateway) RestApi resource to a stage so that clients can call the -- API over the Internet. The stage acts as an environment. module Stratosphere.Resources.ApiGatewayDeployment -- | Full data type definition for ApiGatewayDeployment. See -- apiGatewayDeployment for a more convenient constructor. data ApiGatewayDeployment ApiGatewayDeployment :: Maybe (Val Text) -> Val Text -> Maybe APIGatewayDeploymentStageDescription -> Maybe (Val Text) -> ApiGatewayDeployment [_apiGatewayDeploymentDescription] :: ApiGatewayDeployment -> Maybe (Val Text) [_apiGatewayDeploymentRestApiId] :: ApiGatewayDeployment -> Val Text [_apiGatewayDeploymentStageDescription] :: ApiGatewayDeployment -> Maybe APIGatewayDeploymentStageDescription [_apiGatewayDeploymentStageName] :: ApiGatewayDeployment -> Maybe (Val Text) -- | Constructor for ApiGatewayDeployment containing required fields -- as arguments. apiGatewayDeployment :: Val Text -> ApiGatewayDeployment -- | A description of the purpose of the API Gateway deployment. agdDescription :: Lens' ApiGatewayDeployment (Maybe (Val Text)) -- | The ID of the RestApi resource to deploy. agdRestApiId :: Lens' ApiGatewayDeployment (Val Text) -- | Configures the stage that API Gateway creates with this deployment. agdStageDescription :: Lens' ApiGatewayDeployment (Maybe APIGatewayDeploymentStageDescription) -- | A name for the stage that API Gateway creates with this deployment. -- Use only alphanumeric characters. agdStageName :: Lens' ApiGatewayDeployment (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.ApiGatewayDeployment.ApiGatewayDeployment instance GHC.Show.Show Stratosphere.Resources.ApiGatewayDeployment.ApiGatewayDeployment instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.ApiGatewayDeployment.ApiGatewayDeployment instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.ApiGatewayDeployment.ApiGatewayDeployment module Stratosphere.ResourceAttributes.ResourceSignal -- | Full data type definition for ResourceSignal. See -- resourceSignal for a more convenient constructor. data ResourceSignal ResourceSignal :: Maybe (Val Integer') -> Maybe (Val Text) -> ResourceSignal [_resourceSignalCount] :: ResourceSignal -> Maybe (Val Integer') [_resourceSignalTimeout] :: ResourceSignal -> Maybe (Val Text) -- | Constructor for ResourceSignal containing required fields as -- arguments. resourceSignal :: ResourceSignal -- | The number of success signals AWS CloudFormation must receive before -- it sets the resource status as CREATE_COMPLETE. If the resource -- receives a failure signal or doesn't receive the specified number of -- signals before the timeout period expires, the resource creation fails -- and AWS CloudFormation rolls the stack back. rsCount :: Lens' ResourceSignal (Maybe (Val Integer')) -- | The length of time that AWS CloudFormation waits for the number of -- signals that was specified in the Count property. The timeout period -- starts after AWS CloudFormation starts creating the resource, and the -- timeout expires no sooner than the time you specify but can occur -- shortly thereafter. The maximum time that you can specify is 12 hours. -- The value must be in ISO8601 duration format, in the form: -- PT#H#M#S, where each # is the number of hours, minutes, and -- seconds, respectively. For best results, specify a period of time that -- gives your instances plenty of time to get up and running. A shorter -- timeout can cause a rollback. rsTimeout :: Lens' ResourceSignal (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.ResourceAttributes.ResourceSignal.ResourceSignal instance GHC.Show.Show Stratosphere.ResourceAttributes.ResourceSignal.ResourceSignal instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceAttributes.ResourceSignal.ResourceSignal instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceAttributes.ResourceSignal.ResourceSignal -- | You associate the CreationPolicy attribute with a resource to prevent -- its status from reaching create complete until AWS CloudFormation -- receives a specified number of success signals or the timeout period -- is exceeded. To signal a resource, you can use the cfn-signal helper -- script or SignalResource API. AWS CloudFormation publishes valid -- signals to the stack events so that you track the number of signals -- sent. The creation policy is invoked only when AWS CloudFormation -- creates the associated resource. Currently, the only AWS -- CloudFormation resources that support creation policies are -- AWS::AutoScaling::AutoScalingGroup, AWS::EC2::Instance, and -- AWS::CloudFormation::WaitCondition. The CreationPolicy attribute is -- helpful when you want to wait on resource configuration actions before -- stack creation proceeds. For example, if you install and configure -- software applications on an Amazon EC2 instance, you might want those -- applications up and running before proceeding. In such cases, you can -- add a CreationPolicy attribute to the instance and then send a success -- signal to the instance after the applications are installed and -- configured. For a detailed example, see Deploying Applications on -- Amazon EC2 with AWS CloudFormation. module Stratosphere.ResourceAttributes.CreationPolicy -- | Full data type definition for CreationPolicy. See -- creationPolicy for a more convenient constructor. data CreationPolicy CreationPolicy :: ResourceSignal -> CreationPolicy [_creationPolicyResourceSignal] :: CreationPolicy -> ResourceSignal -- | Constructor for CreationPolicy containing required fields as -- arguments. creationPolicy :: ResourceSignal -> CreationPolicy cpResourceSignal :: Lens' CreationPolicy ResourceSignal instance GHC.Generics.Generic Stratosphere.ResourceAttributes.CreationPolicy.CreationPolicy instance GHC.Show.Show Stratosphere.ResourceAttributes.CreationPolicy.CreationPolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceAttributes.CreationPolicy.CreationPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceAttributes.CreationPolicy.CreationPolicy -- | To specify how AWS CloudFormation handles updates for the MinSize, -- MaxSize, and DesiredCapacity properties when the -- AWS::AutoScaling::AutoScalingGroup resource has an associated -- scheduled action, use the AutoScalingScheduledAction policy. With -- scheduled actions, the group size properties of an Auto Scaling group -- can change at any time. When you update a stack with an Auto Scaling -- group and scheduled action, AWS CloudFormation always sets the group -- size property values of your Auto Scaling group to the values that are -- defined in the AWS::AutoScaling::AutoScalingGroup resource of your -- template, even if a scheduled action is in effect. If you do not want -- AWS CloudFormation to change any of the group size property values -- when you have a scheduled action in effect, use the -- AutoScalingScheduledAction update policy to prevent AWS CloudFormation -- from changing the MinSize, MaxSize, or DesiredCapacity properties -- unless you have modified these values in your template. module Stratosphere.ResourceAttributes.AutoScalingScheduledAction -- | Full data type definition for AutoScalingScheduledAction. See -- autoScalingScheduledAction for a more convenient constructor. data AutoScalingScheduledAction AutoScalingScheduledAction :: Maybe (Val Bool') -> AutoScalingScheduledAction [_autoScalingScheduledActionIgnoreUnmodifiedGroupSizeProperties] :: AutoScalingScheduledAction -> Maybe (Val Bool') -- | Constructor for AutoScalingScheduledAction containing required -- fields as arguments. autoScalingScheduledAction :: AutoScalingScheduledAction -- | Specifies whether AWS CloudFormation ignores differences in group size -- properties between your current Auto Scaling group and the Auto -- Scaling group described in the AWS::AutoScaling::AutoScalingGroup -- resource of your template during a stack update. If you modify any of -- the group size property values in your template, AWS CloudFormation -- uses the modified values and updates your Auto Scaling group. assaIgnoreUnmodifiedGroupSizeProperties :: Lens' AutoScalingScheduledAction (Maybe (Val Bool')) instance GHC.Generics.Generic Stratosphere.ResourceAttributes.AutoScalingScheduledAction.AutoScalingScheduledAction instance GHC.Show.Show Stratosphere.ResourceAttributes.AutoScalingScheduledAction.AutoScalingScheduledAction instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceAttributes.AutoScalingScheduledAction.AutoScalingScheduledAction instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceAttributes.AutoScalingScheduledAction.AutoScalingScheduledAction -- | To specify how AWS CloudFormation handles rolling updates for an Auto -- Scaling group, use the AutoScalingRollingUpdate policy. module Stratosphere.ResourceAttributes.AutoScalingRollingUpdate -- | Full data type definition for AutoScalingRollingUpdate. See -- autoScalingRollingUpdate for a more convenient constructor. data AutoScalingRollingUpdate AutoScalingRollingUpdate :: Maybe (Val Integer') -> Maybe (Val Integer') -> Maybe (Val Integer') -> Maybe (Val Text) -> Maybe [Val Text] -> Maybe (Val Bool') -> AutoScalingRollingUpdate [_autoScalingRollingUpdateMaxBatchSize] :: AutoScalingRollingUpdate -> Maybe (Val Integer') [_autoScalingRollingUpdateMinInstancesInService] :: AutoScalingRollingUpdate -> Maybe (Val Integer') [_autoScalingRollingUpdateMinSuccessfulInstancesPercent] :: AutoScalingRollingUpdate -> Maybe (Val Integer') [_autoScalingRollingUpdatePauseTime] :: AutoScalingRollingUpdate -> Maybe (Val Text) [_autoScalingRollingUpdateSuspendProcess] :: AutoScalingRollingUpdate -> Maybe [Val Text] [_autoScalingRollingUpdateWaitOnResourceSignals] :: AutoScalingRollingUpdate -> Maybe (Val Bool') -- | Constructor for AutoScalingRollingUpdate containing required -- fields as arguments. autoScalingRollingUpdate :: AutoScalingRollingUpdate -- | Specifies the maximum number of instances that AWS CloudFormation -- terminates. asruMaxBatchSize :: Lens' AutoScalingRollingUpdate (Maybe (Val Integer')) -- | Specifies the minimum number of instances that must be in service -- within the Auto Scaling group while AWS CloudFormation terminates -- obsolete instances. asruMinInstancesInService :: Lens' AutoScalingRollingUpdate (Maybe (Val Integer')) -- | Specifies the percentage of instances in an Auto Scaling rolling -- update that must signal success for an update to succeed. You can -- specify a value from 0 to 100. AWS CloudFormation rounds to the -- nearest tenth of a percent. For example, if you update five instances -- with a minimum successful percentage of 50, three instances must -- signal success. If an instance doesn't send a signal within the time -- specified using the PauseTime property, AWS CloudFormation assumes -- that the instance wasn't successfully updated. If you specify this -- property, you must also enable the WaitOnResourceSignals and PauseTime -- properties. asruMinSuccessfulInstancesPercent :: Lens' AutoScalingRollingUpdate (Maybe (Val Integer')) -- | Specifies the amount of time that AWS CloudFormation should pause -- after making a change to a batch of instances to give these instances -- time to start software applications. For example, you might need -- PauseTime when scaling up the number of instances in an Auto Scaling -- group. If you enable the WaitOnResourceSignals property, PauseTime is -- the amount of time AWS CloudFormation should wait for the Auto Scaling -- group to receive the required number of valid signals from added or -- replaced instances. If the PauseTime is exceeded before the Auto -- Scaling group receives the required number of signals, the update -- fails. For best results, specify a time period that gives your -- instances sufficient time to get started. If the update needs to be -- rolled back, a short PauseTime can cause the rollback to fail. Specify -- PauseTime in the ISO8601 duration format (in the format PTM is the -- number of hours, minutes, and seconds, respectively). The maximum -- PauseTime is one hour (PT1H). asruPauseTime :: Lens' AutoScalingRollingUpdate (Maybe (Val Text)) -- | Specifies the Auto Scaling processes to suspend during a stack update. -- Suspending processes prevents Auto Scaling from interfering with a -- stack update. For example, you can suspend alarming so that Auto -- Scaling doesn't execute scaling policies associated with an alarm. For -- valid values, see the ScalingProcesses.member.N parameter for the -- SuspendProcesses action in the Auto Scaling API Reference. asruSuspendProcess :: Lens' AutoScalingRollingUpdate (Maybe [Val Text]) -- | Specifies whether the Auto Scaling group waits on signals from new -- instances during an update. AWS CloudFormation suspends the update of -- an Auto Scaling group after new Amazon EC2 instances are launched into -- the group. AWS CloudFormation must receive a signal from each new -- instance within the specified PauseTime before continuing the update. -- To signal the Auto Scaling group, use the cfn-signal helper script or -- SignalResource API. Use this property to ensure that instances have -- completed installing and configuring applications before the Auto -- Scaling group update proceeds. asruWaitOnResourceSignals :: Lens' AutoScalingRollingUpdate (Maybe (Val Bool')) instance GHC.Generics.Generic Stratosphere.ResourceAttributes.AutoScalingRollingUpdate.AutoScalingRollingUpdate instance GHC.Show.Show Stratosphere.ResourceAttributes.AutoScalingRollingUpdate.AutoScalingRollingUpdate instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceAttributes.AutoScalingRollingUpdate.AutoScalingRollingUpdate instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceAttributes.AutoScalingRollingUpdate.AutoScalingRollingUpdate -- | To specify how AWS CloudFormation handles replacing updates for an -- Auto Scaling group, use the AutoScalingReplacingUpdate policy. module Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate -- | Full data type definition for AutoScalingReplacingUpdate. See -- autoScalingReplacingUpdate for a more convenient constructor. data AutoScalingReplacingUpdate AutoScalingReplacingUpdate :: Maybe (Val Bool') -> AutoScalingReplacingUpdate [_autoScalingReplacingUpdateWillReplace] :: AutoScalingReplacingUpdate -> Maybe (Val Bool') -- | Constructor for AutoScalingReplacingUpdate containing required -- fields as arguments. autoScalingReplacingUpdate :: AutoScalingReplacingUpdate -- | Specifies whether an Auto Scaling group and the instances it contains -- are replaced during an update. During replacement, AWS CloudFormation -- retains the old group until it finishes creating the new one. This -- allows AWS CloudFormation to roll back to the old Auto Scaling group -- if the update doesn't succeed. While AWS CloudFormation creates the -- new group, it doesn't detach or attach any instances. After creating -- the new Auto Scaling group, AWS CloudFormation removes the old Auto -- Scaling group during the cleanup process. If the update doesn't -- succeed, AWS CloudFormation removes the new Auto Scaling group. asruWillReplace :: Lens' AutoScalingReplacingUpdate (Maybe (Val Bool')) instance GHC.Generics.Generic Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate.AutoScalingReplacingUpdate instance GHC.Show.Show Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate.AutoScalingReplacingUpdate instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate.AutoScalingReplacingUpdate instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate.AutoScalingReplacingUpdate -- | Use the UpdatePolicy attribute to specify how AWS CloudFormation -- handles updates to the AWS::AutoScaling::AutoScalingGroup resource. -- AWS CloudFormation invokes one of three update policies depending on -- the type of change you make or on whether a scheduled action is -- associated with the Auto Scaling group. module Stratosphere.ResourceAttributes.UpdatePolicy -- | Full data type definition for UpdatePolicy. See updatePolicy -- for a more convenient constructor. data UpdatePolicy UpdatePolicy :: Maybe AutoScalingReplacingUpdate -> Maybe AutoScalingRollingUpdate -> Maybe AutoScalingScheduledAction -> UpdatePolicy [_updatePolicyAutoScalingReplacingUpdate] :: UpdatePolicy -> Maybe AutoScalingReplacingUpdate [_updatePolicyAutoScalingRollingUpdate] :: UpdatePolicy -> Maybe AutoScalingRollingUpdate [_updatePolicyAutoScalingScheduledAction] :: UpdatePolicy -> Maybe AutoScalingScheduledAction -- | Constructor for UpdatePolicy containing required fields as -- arguments. updatePolicy :: UpdatePolicy upAutoScalingReplacingUpdate :: Lens' UpdatePolicy (Maybe AutoScalingReplacingUpdate) upAutoScalingRollingUpdate :: Lens' UpdatePolicy (Maybe AutoScalingRollingUpdate) upAutoScalingScheduledAction :: Lens' UpdatePolicy (Maybe AutoScalingScheduledAction) instance GHC.Generics.Generic Stratosphere.ResourceAttributes.UpdatePolicy.UpdatePolicy instance GHC.Show.Show Stratosphere.ResourceAttributes.UpdatePolicy.UpdatePolicy instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.ResourceAttributes.UpdatePolicy.UpdatePolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.ResourceAttributes.UpdatePolicy.UpdatePolicy module Stratosphere.Helpers -- | Might create an aeson pair from a Maybe value. maybeField :: ToJSON a => Text -> Maybe a -> Maybe (Text, Value) -- | Similar to camelCaseNamer, except we specify the prefix -- exactly. We use this because camelCaseNamer is terrible with names -- that start in all caps, like EC2. We would like to start the field -- names with "ec2...", but camelCaseNamer wants "eC2...". prefixNamer :: String -> Name -> [Name] -> Name -> [DefName] -- | See prefixNamer prefixFieldRules :: String -> LensRules -- | Used for the JSON instances in Template. It is put here because it -- must be in a separate module. modTemplateJSONField :: String -> String -- | This class defines items with names in them. It is used to extract the -- name from JSON fields so we can get an Object with the names as keys -- instead of just an array. class NamedItem a itemName :: NamedItem a => a -> Text nameToJSON :: NamedItem a => a -> Value nameParseJSON :: NamedItem a => Text -> Object -> Parser a namedItemToJSON :: (NamedItem a) => [a] -> Value namedItemFromJSON :: (NamedItem a) => Value -> Parser [a] -- | See: -- http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html -- -- You can use the optional Parameters section to pass values into your -- template when you create a stack. With parameters, you can create -- templates that are customized each time you create a stack. Each -- parameter must contain a value when you create a stack. You can -- specify a default value to make the parameter optional. For more -- information about creating stacks, see Working with Stacks. module Stratosphere.Parameters data Parameter Parameter :: Text -> Text -> Maybe Value -> Maybe Bool' -> Maybe Array -> Maybe Text -> Maybe Integer' -> Maybe Integer' -> Maybe Integer' -> Maybe Integer' -> Maybe Text -> Maybe Text -> Parameter [parameterName] :: Parameter -> Text -- | The data type for the parameter. [parameterType'] :: Parameter -> Text -- | A value of the appropriate type for the template to use if no value is -- specified when a stack is created. If you define constraints for the -- parameter, you must specify a value that adheres to those constraints. [parameterDefault'] :: Parameter -> Maybe Value -- | Whether to mask the parameter value whenever anyone makes a call that -- describes the stack. If you set the value to true, the parameter value -- is masked with asterisks (*****). [parameterNoEcho] :: Parameter -> Maybe Bool' -- | An array containing the list of values allowed for the parameter. [parameterAllowedValues] :: Parameter -> Maybe Array -- | A regular expression that represents the patterns you want to allow -- for String types. [parameterAllowedPattern] :: Parameter -> Maybe Text -- | An integer value that determines the largest number of characters you -- want to allow for String types. [parameterMaxLength] :: Parameter -> Maybe Integer' -- | An integer value that determines the smallest number of characters you -- want to allow for String types. [parameterMinLength] :: Parameter -> Maybe Integer' -- | A numeric value that determines the largest numeric value you want to -- allow for Number types. [parameterMaxValue] :: Parameter -> Maybe Integer' -- | A numeric value that determines the smallest numeric value you want to -- allow for Number types. [parameterMinValue] :: Parameter -> Maybe Integer' -- | A string of up to 4000 characters that describes the parameter. [parameterDescription] :: Parameter -> Maybe Text -- | A string that explains the constraint when the constraint is violated. [parameterConstraintDescription] :: Parameter -> Maybe Text class HasAllowedPattern s a | s -> a allowedPattern :: HasAllowedPattern s a => Lens' s a class HasAllowedValues s a | s -> a allowedValues :: HasAllowedValues s a => Lens' s a class HasConstraintDescription s a | s -> a constraintDescription :: HasConstraintDescription s a => Lens' s a class HasDefault' s a | s -> a default' :: HasDefault' s a => Lens' s a class HasDescription s a | s -> a description :: HasDescription s a => Lens' s a class HasMaxLength s a | s -> a maxLength :: HasMaxLength s a => Lens' s a class HasMaxValue s a | s -> a maxValue :: HasMaxValue s a => Lens' s a class HasMinLength s a | s -> a minLength :: HasMinLength s a => Lens' s a class HasMinValue s a | s -> a minValue :: HasMinValue s a => Lens' s a class HasName s a | s -> a name :: HasName s a => Lens' s a class HasNoEcho s a | s -> a noEcho :: HasNoEcho s a => Lens' s a class HasType' s a | s -> a type' :: HasType' s a => Lens' s a parameterToJSON :: Parameter -> Value parameterFromJSON :: Text -> Object -> Parser Parameter -- | Constructor for Parameter with required arguments. parameter :: Text -> Text -> Parameter -- | Wrapper around a list of Parameterss to we can modify the aeson -- instances. newtype Parameters Parameters :: [Parameter] -> Parameters [unParameters] :: Parameters -> [Parameter] instance GHC.Base.Monoid Stratosphere.Parameters.Parameters instance GHC.Classes.Eq Stratosphere.Parameters.Parameters instance GHC.Show.Show Stratosphere.Parameters.Parameters instance Stratosphere.Parameters.HasAllowedPattern Stratosphere.Parameters.Parameter (GHC.Base.Maybe Data.Text.Internal.Text) instance Stratosphere.Parameters.HasAllowedValues Stratosphere.Parameters.Parameter (GHC.Base.Maybe Data.Aeson.Types.Internal.Array) instance Stratosphere.Parameters.HasConstraintDescription Stratosphere.Parameters.Parameter (GHC.Base.Maybe Data.Text.Internal.Text) instance Stratosphere.Parameters.HasDefault' Stratosphere.Parameters.Parameter (GHC.Base.Maybe Data.Aeson.Types.Internal.Value) instance Stratosphere.Parameters.HasDescription Stratosphere.Parameters.Parameter (GHC.Base.Maybe Data.Text.Internal.Text) instance Stratosphere.Parameters.HasMaxLength Stratosphere.Parameters.Parameter (GHC.Base.Maybe Stratosphere.Values.Integer') instance Stratosphere.Parameters.HasMaxValue Stratosphere.Parameters.Parameter (GHC.Base.Maybe Stratosphere.Values.Integer') instance Stratosphere.Parameters.HasMinLength Stratosphere.Parameters.Parameter (GHC.Base.Maybe Stratosphere.Values.Integer') instance Stratosphere.Parameters.HasMinValue Stratosphere.Parameters.Parameter (GHC.Base.Maybe Stratosphere.Values.Integer') instance Stratosphere.Parameters.HasName Stratosphere.Parameters.Parameter Data.Text.Internal.Text instance Stratosphere.Parameters.HasNoEcho Stratosphere.Parameters.Parameter (GHC.Base.Maybe Stratosphere.Values.Bool') instance Stratosphere.Parameters.HasType' Stratosphere.Parameters.Parameter Data.Text.Internal.Text instance Stratosphere.Values.ToRef Stratosphere.Parameters.Parameter b instance GHC.Exts.IsList Stratosphere.Parameters.Parameters instance Stratosphere.Helpers.NamedItem Stratosphere.Parameters.Parameter instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Parameters.Parameters instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Parameters.Parameters instance GHC.Classes.Eq Stratosphere.Parameters.Parameter instance GHC.Show.Show Stratosphere.Parameters.Parameter -- | See: -- http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/outputs-section-structure.html -- -- The optional Outputs section declares output values that you want to -- view from the AWS CloudFormation console or that you want to return in -- response to describe stack calls. For example, you can output the -- Amazon S3 bucket name for a stack so that you can easily find it. module Stratosphere.Outputs -- | See output for a convenient constructor. data Output Output :: Text -> Maybe Text -> Val Text -> Output -- | An identifier for this output. The logical ID must be alphanumeric -- (A-Za-z0-9) and unique within the template. [outputName] :: Output -> Text -- | A String type up to 4K in length describing the output value. [outputDescription] :: Output -> Maybe Text -- | The value of the property that is returned by the aws cloudformation -- describe-stacks command. The value of an output can be literals, -- parameter references, pseudo parameters, a mapping value, and -- intrinsic functions. [outputValue] :: Output -> Val Text -- | Constructor for Output output :: Text -> Val Text -> Output -- | Wrapper around a list of Outputs to we can modify the aeson -- instances. newtype Outputs Outputs :: [Output] -> Outputs [unOutputs] :: Outputs -> [Output] name :: HasName s a => Lens' s a description :: HasDescription s a => Lens' s a value :: HasValue s a => Lens' s a instance GHC.Base.Monoid Stratosphere.Outputs.Outputs instance GHC.Show.Show Stratosphere.Outputs.Outputs instance Stratosphere.Parameters.HasDescription Stratosphere.Outputs.Output (GHC.Base.Maybe Data.Text.Internal.Text) instance Stratosphere.Parameters.HasName Stratosphere.Outputs.Output Data.Text.Internal.Text instance Stratosphere.Outputs.HasValue Stratosphere.Outputs.Output (Stratosphere.Values.Val Data.Text.Internal.Text) instance Stratosphere.Values.ToRef Stratosphere.Outputs.Output b instance GHC.Exts.IsList Stratosphere.Outputs.Outputs instance Stratosphere.Helpers.NamedItem Stratosphere.Outputs.Output instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Outputs.Outputs instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Outputs.Outputs instance GHC.Show.Show Stratosphere.Outputs.Output -- | The AWS::CloudFormation::Stack type nests a stack as a resource in a -- top-level template. You can add output values from a nested stack -- within the containing template. You use the GetAtt function with the -- nested stack's logical name and the name of the output value in the -- nested stack in the format Outputs.NestedStackOutputName. When you -- apply template changes to update a top-level stack, AWS CloudFormation -- updates the top-level stack and initiates an update to its nested -- stacks. AWS CloudFormation updates the resources of modified nested -- stacks, but does not update the resources of unmodified nested stacks. -- For more information, see AWS CloudFormation Stacks Updates. module Stratosphere.Resources.Stack -- | Full data type definition for Stack. See stack for a more -- convenient constructor. data Stack Stack :: Maybe [Val Text] -> Maybe Parameters -> Maybe [ResourceTag] -> Val Text -> Maybe (Val Text) -> Stack [_stackNotificationARNs] :: Stack -> Maybe [Val Text] [_stackParameters] :: Stack -> Maybe Parameters [_stackResourceTags] :: Stack -> Maybe [ResourceTag] [_stackTemplateURL] :: Stack -> Val Text [_stackTimeoutInMinutes] :: Stack -> Maybe (Val Text) -- | Constructor for Stack containing required fields as arguments. stack :: Val Text -> Stack -- | A list of existing Amazon SNS topics where notifications about stack -- events are sent. sNotificationARNs :: Lens' Stack (Maybe [Val Text]) -- | The set of parameters passed to AWS CloudFormation when this nested -- stack is created. Note If you use the ref function to pass a parameter -- value to a nested stack, comma-delimited list parameters must be of -- type String. In other words, you cannot pass values that are of type -- CommaDelimitedList to nested stacks. sParameters :: Lens' Stack (Maybe Parameters) -- | An arbitrary set of tags (key–value pairs) to describe this stack. sResourceTags :: Lens' Stack (Maybe [ResourceTag]) -- | The URL of a template that specifies the stack that you want to create -- as a resource. The template must be stored on an Amazon S3 bucket, so -- the URL must have the form: -- https://s3.amazonaws.com/.../TemplateName.template sTemplateURL :: Lens' Stack (Val Text) -- | The length of time, in minutes, that AWS CloudFormation waits for the -- nested stack to reach the CREATE_COMPLETE state. The default is no -- timeout. When AWS CloudFormation detects that the nested stack has -- reached the CREATE_COMPLETE state, it marks the nested stack resource -- as CREATE_COMPLETE in the parent stack and resumes creating the parent -- stack. If the timeout period expires before the nested stack reaches -- CREATE_COMPLETE, AWS CloudFormation marks the nested stack as failed -- and rolls back both the nested stack and parent stack. sTimeoutInMinutes :: Lens' Stack (Maybe (Val Text)) instance GHC.Generics.Generic Stratosphere.Resources.Stack.Stack instance GHC.Show.Show Stratosphere.Resources.Stack.Stack instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Stack.Stack instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Stack.Stack -- | See: -- http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html -- -- The required Resources section declare the AWS resources that you want -- as part of your stack, such as an Amazon EC2 instance or an Amazon S3 -- bucket. You must declare each resource separately; however, you can -- specify multiple resources of the same type. If you declare multiple -- resources, separate them with commas. module Stratosphere.Resources data Resource Resource :: Text -> ResourceProperties -> Maybe DeletionPolicy -> Maybe CreationPolicy -> Maybe UpdatePolicy -> Maybe [Text] -> Resource [resourceResName] :: Resource -> Text [resourceProperties] :: Resource -> ResourceProperties [resourceDeletionPolicy] :: Resource -> Maybe DeletionPolicy [resourceResCreationPolicy] :: Resource -> Maybe CreationPolicy [resourceResUpdatePolicy] :: Resource -> Maybe UpdatePolicy [resourceDependsOn] :: Resource -> Maybe [Text] -- | Convenient constructor for Resource with required arguments. resource :: Text -> ResourceProperties -> Resource resName :: HasResName s a => Lens' s a properties :: HasProperties s a => Lens' s a deletionPolicy :: HasDeletionPolicy s a => Lens' s a resCreationPolicy :: HasResCreationPolicy s a => Lens' s a resUpdatePolicy :: HasResUpdatePolicy s a => Lens' s a dependsOn :: HasDependsOn s a => Lens' s a data ResourceProperties AccessKeyProperties :: AccessKey -> ResourceProperties ApiGatewayAccountProperties :: ApiGatewayAccount -> ResourceProperties ApiGatewayDeploymentProperties :: ApiGatewayDeployment -> ResourceProperties ApiGatewayMethodProperties :: ApiGatewayMethod -> ResourceProperties ApiGatewayModelProperties :: ApiGatewayModel -> ResourceProperties ApiGatewayResourceProperties :: ApiGatewayResource -> ResourceProperties ApiGatewayRestApiProperties :: ApiGatewayRestApi -> ResourceProperties ApiGatewayStageProperties :: ApiGatewayStage -> ResourceProperties ApiGatewayUsagePlanProperties :: ApiGatewayUsagePlan -> ResourceProperties AutoScalingGroupProperties :: AutoScalingGroup -> ResourceProperties BucketProperties :: Bucket -> ResourceProperties CacheClusterProperties :: CacheCluster -> ResourceProperties CacheSubnetGroupProperties :: CacheSubnetGroup -> ResourceProperties DBInstanceProperties :: DBInstance -> ResourceProperties DBParameterGroupProperties :: DBParameterGroup -> ResourceProperties DBSecurityGroupProperties :: DBSecurityGroup -> ResourceProperties DBSecurityGroupIngressProperties :: DBSecurityGroupIngress -> ResourceProperties DBSubnetGroupProperties :: DBSubnetGroup -> ResourceProperties DeliveryStreamProperties :: DeliveryStream -> ResourceProperties DynamoDBTableProperties :: DynamoDBTable -> ResourceProperties EC2InstanceProperties :: EC2Instance -> ResourceProperties EIPProperties :: EIP -> ResourceProperties EIPAssociationProperties :: EIPAssociation -> ResourceProperties EventsRuleProperties :: EventsRule -> ResourceProperties GroupProperties :: Group -> ResourceProperties IAMRoleProperties :: IAMRole -> ResourceProperties InstanceProfileProperties :: InstanceProfile -> ResourceProperties InternetGatewayProperties :: InternetGateway -> ResourceProperties KinesisStreamProperties :: KinesisStream -> ResourceProperties LambdaAliasProperties :: LambdaAlias -> ResourceProperties LambdaFunctionProperties :: LambdaFunction -> ResourceProperties LambdaPermissionProperties :: LambdaPermission -> ResourceProperties LambdaVersionProperties :: LambdaVersion -> ResourceProperties LaunchConfigurationProperties :: LaunchConfiguration -> ResourceProperties LifecycleHookProperties :: LifecycleHook -> ResourceProperties LoadBalancerProperties :: LoadBalancer -> ResourceProperties LogGroupProperties :: LogGroup -> ResourceProperties LogStreamProperties :: LogStream -> ResourceProperties ManagedPolicyProperties :: ManagedPolicy -> ResourceProperties NatGatewayProperties :: NatGateway -> ResourceProperties PolicyProperties :: Policy -> ResourceProperties RecordSetProperties :: RecordSet -> ResourceProperties RecordSetGroupProperties :: RecordSetGroup -> ResourceProperties RouteProperties :: Route -> ResourceProperties RouteTableProperties :: RouteTable -> ResourceProperties S3BucketPolicyProperties :: S3BucketPolicy -> ResourceProperties SNSSubscriptionProperties :: SNSSubscription -> ResourceProperties SNSTopicProperties :: SNSTopic -> ResourceProperties SNSTopicPolicyProperties :: SNSTopicPolicy -> ResourceProperties SQSQueueProperties :: SQSQueue -> ResourceProperties SQSQueuePolicyProperties :: SQSQueuePolicy -> ResourceProperties ScalingPolicyProperties :: ScalingPolicy -> ResourceProperties ScheduledActionProperties :: ScheduledAction -> ResourceProperties SecurityGroupProperties :: SecurityGroup -> ResourceProperties SecurityGroupEgressProperties :: SecurityGroupEgress -> ResourceProperties SecurityGroupIngressProperties :: SecurityGroupIngress -> ResourceProperties StackProperties :: Stack -> ResourceProperties SubnetProperties :: Subnet -> ResourceProperties SubnetRouteTableAssociationProperties :: SubnetRouteTableAssociation -> ResourceProperties TrailProperties :: Trail -> ResourceProperties UserProperties :: User -> ResourceProperties UserToGroupAdditionProperties :: UserToGroupAddition -> ResourceProperties VPCProperties :: VPC -> ResourceProperties VPCEndpointProperties :: VPCEndpoint -> ResourceProperties VPCGatewayAttachmentProperties :: VPCGatewayAttachment -> ResourceProperties VolumeProperties :: Volume -> ResourceProperties VolumeAttachmentProperties :: VolumeAttachment -> ResourceProperties data DeletionPolicy Delete :: DeletionPolicy Retain :: DeletionPolicy Snapshot :: DeletionPolicy -- | Wrapper around a list of Resourcess to we can modify the aeson -- instances. newtype Resources Resources :: [Resource] -> Resources [unResources] :: Resources -> [Resource] instance GHC.Base.Monoid Stratosphere.Resources.Resources instance GHC.Show.Show Stratosphere.Resources.Resources instance Stratosphere.Resources.HasDeletionPolicy Stratosphere.Resources.Resource (GHC.Base.Maybe Stratosphere.Resources.DeletionPolicy) instance Stratosphere.Resources.HasDependsOn Stratosphere.Resources.Resource (GHC.Base.Maybe [Data.Text.Internal.Text]) instance Stratosphere.Resources.HasProperties Stratosphere.Resources.Resource Stratosphere.Resources.ResourceProperties instance Stratosphere.Resources.HasResCreationPolicy Stratosphere.Resources.Resource (GHC.Base.Maybe Stratosphere.ResourceAttributes.CreationPolicy.CreationPolicy) instance Stratosphere.Resources.HasResName Stratosphere.Resources.Resource Data.Text.Internal.Text instance Stratosphere.Resources.HasResUpdatePolicy Stratosphere.Resources.Resource (GHC.Base.Maybe Stratosphere.ResourceAttributes.UpdatePolicy.UpdatePolicy) instance GHC.Exts.IsList Stratosphere.Resources.Resources instance Stratosphere.Helpers.NamedItem Stratosphere.Resources.Resource instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.Resources instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.Resources instance GHC.Show.Show Stratosphere.Resources.Resource instance GHC.Generics.Generic Stratosphere.Resources.DeletionPolicy instance GHC.Show.Show Stratosphere.Resources.DeletionPolicy instance GHC.Show.Show Stratosphere.Resources.ResourceProperties instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Resources.DeletionPolicy instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Resources.DeletionPolicy instance Stratosphere.Values.ToRef Stratosphere.Resources.Resource b -- | See: -- http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html module Stratosphere.Template data Template Template :: Maybe Text -> Maybe Text -> Maybe Object -> Maybe Parameters -> Maybe (HashMap Text Mapping) -> Maybe Object -> Resources -> Maybe Outputs -> Template -- | Specifies the AWS CloudFormation template version that the template -- conforms to. The template format version is not the same as the API or -- WSDL version. The template format version can change independently of -- the API and WSDL versions. [templateFormatVersion] :: Template -> Maybe Text -- | A text string that describes the template. This section must always -- follow the template format version section. [templateDescription] :: Template -> Maybe Text -- | JSON objects that provide additional information about the template. [templateMetadata] :: Template -> Maybe Object -- | Specifies values that you can pass in to your template at runtime -- (when you create or update a stack). You can refer to parameters in -- the Resources and Outputs sections of the template. [templateParameters] :: Template -> Maybe Parameters -- | A mapping of keys and associated values that you can use to specify -- conditional parameter values, similar to a lookup table. You can match -- a key to a corresponding value by using the Fn::FindInMap intrinsic -- function in the Resources and Outputs section. [templateMappings] :: Template -> Maybe (HashMap Text Mapping) -- | Defines conditions that control whether certain resources are created -- or whether certain resource properties are assigned a value during -- stack creation or update. For example, you could conditionally create -- a resource that depends on whether the stack is for a production or -- test environment. [templateConditions] :: Template -> Maybe Object -- | Specifies the stack resources and their properties, such as an Amazon -- Elastic Compute Cloud instance or an Amazon Simple Storage Service -- bucket. You can refer to resources in the Resources and Outputs -- sections of the template. [templateResources] :: Template -> Resources -- | Describes the values that are returned whenever you view your stack's -- properties. For example, you can declare an output for an Amazon S3 -- bucket name and then call the aws cloudformation describe-stacks AWS -- CLI command to view the name. [templateOutputs] :: Template -> Maybe Outputs -- | Convenient constructor for Template with required arguments. template :: Resources -> Template -- | Pretty print a template using aeson-pretty. encodeTemplate :: Template -> ByteString type Mapping = HashMap Text Object formatVersion :: HasFormatVersion s a => Lens' s a description :: HasDescription s a => Lens' s a metadata :: HasMetadata s a => Lens' s a parameters :: HasParameters s a => Lens' s a mappings :: HasMappings s a => Lens' s a conditions :: HasConditions s a => Lens' s a resources :: HasResources s a => Lens' s a outputs :: HasOutputs s a => Lens' s a instance Stratosphere.Template.HasConditions Stratosphere.Template.Template (GHC.Base.Maybe Data.Aeson.Types.Internal.Object) instance Stratosphere.Parameters.HasDescription Stratosphere.Template.Template (GHC.Base.Maybe Data.Text.Internal.Text) instance Stratosphere.Template.HasFormatVersion Stratosphere.Template.Template (GHC.Base.Maybe Data.Text.Internal.Text) instance Stratosphere.Template.HasMappings Stratosphere.Template.Template (GHC.Base.Maybe (Data.HashMap.Base.HashMap Data.Text.Internal.Text Stratosphere.Template.Mapping)) instance Stratosphere.Template.HasMetadata Stratosphere.Template.Template (GHC.Base.Maybe Data.Aeson.Types.Internal.Object) instance Stratosphere.Template.HasOutputs Stratosphere.Template.Template (GHC.Base.Maybe Stratosphere.Outputs.Outputs) instance Stratosphere.Template.HasParameters Stratosphere.Template.Template (GHC.Base.Maybe Stratosphere.Parameters.Parameters) instance Stratosphere.Template.HasResources Stratosphere.Template.Template Stratosphere.Resources.Resources instance Data.Aeson.Types.ToJSON.ToJSON Stratosphere.Template.Template instance Data.Aeson.Types.FromJSON.FromJSON Stratosphere.Template.Template instance GHC.Show.Show Stratosphere.Template.Template -- | Check exports functions to catch errors that would be too -- expensive or unwieldy to encode in types. -- -- Stability: Experimental module Stratosphere.Check duplicateProperties :: Template -> [DuplicateProperty] instance GHC.Classes.Eq Stratosphere.Check.DuplicateProperty instance GHC.Show.Show Stratosphere.Check.DuplicateProperty -- | This is a library for creating AWS CloudFormation templates. -- -- CloudFormation is a system that creates AWS resources from declarative -- templates. One common criticism of CloudFormation is its use of JSON -- as the template specification language. Once you have a large number -- of templates, possibly including cross-references among themselves, -- raw JSON templates become unwieldy, and it becomes harder to -- confidently modify them. Stratosphere alleviates this issue by -- providing an Embedded Domain Specific Language (EDSL) to construct -- templates. module Stratosphere