stratosphere-emrcontainers (empty) → 1.0.0
raw patch · 9 files changed
+304/−0 lines, 9 filesdep +aesondep +basedep +stratosphere
Dependencies added: aeson, base, stratosphere
Files
- LICENSE.md +20/−0
- gen/Stratosphere/EMRContainers/VirtualCluster.hs +70/−0
- gen/Stratosphere/EMRContainers/VirtualCluster/ContainerInfoProperty.hs +31/−0
- gen/Stratosphere/EMRContainers/VirtualCluster/ContainerInfoProperty.hs-boot +9/−0
- gen/Stratosphere/EMRContainers/VirtualCluster/ContainerProviderProperty.hs +50/−0
- gen/Stratosphere/EMRContainers/VirtualCluster/ContainerProviderProperty.hs-boot +9/−0
- gen/Stratosphere/EMRContainers/VirtualCluster/EksInfoProperty.hs +30/−0
- gen/Stratosphere/EMRContainers/VirtualCluster/EksInfoProperty.hs-boot +9/−0
- stratosphere-emrcontainers.cabal +76/−0
+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/EMRContainers/VirtualCluster.hs view
@@ -0,0 +1,70 @@+module Stratosphere.EMRContainers.VirtualCluster (+ module Exports, VirtualCluster(..), mkVirtualCluster+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMRContainers.VirtualCluster.ContainerProviderProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data VirtualCluster+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html>+ VirtualCluster {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html#cfn-emrcontainers-virtualcluster-containerprovider>+ containerProvider :: ContainerProviderProperty,+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html#cfn-emrcontainers-virtualcluster-name>+ name :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html#cfn-emrcontainers-virtualcluster-securityconfigurationid>+ securityConfigurationId :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html#cfn-emrcontainers-virtualcluster-tags>+ tags :: (Prelude.Maybe [Tag])}+ deriving stock (Prelude.Eq, Prelude.Show)+mkVirtualCluster ::+ ContainerProviderProperty -> Value Prelude.Text -> VirtualCluster+mkVirtualCluster containerProvider name+ = VirtualCluster+ {haddock_workaround_ = (), containerProvider = containerProvider,+ name = name, securityConfigurationId = Prelude.Nothing,+ tags = Prelude.Nothing}+instance ToResourceProperties VirtualCluster where+ toResourceProperties VirtualCluster {..}+ = ResourceProperties+ {awsType = "AWS::EMRContainers::VirtualCluster",+ supportsTags = Prelude.True,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["ContainerProvider" JSON..= containerProvider,+ "Name" JSON..= name]+ (Prelude.catMaybes+ [(JSON..=) "SecurityConfigurationId"+ Prelude.<$> securityConfigurationId,+ (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON VirtualCluster where+ toJSON VirtualCluster {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["ContainerProvider" JSON..= containerProvider,+ "Name" JSON..= name]+ (Prelude.catMaybes+ [(JSON..=) "SecurityConfigurationId"+ Prelude.<$> securityConfigurationId,+ (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "ContainerProvider" VirtualCluster where+ type PropertyType "ContainerProvider" VirtualCluster = ContainerProviderProperty+ set newValue VirtualCluster {..}+ = VirtualCluster {containerProvider = newValue, ..}+instance Property "Name" VirtualCluster where+ type PropertyType "Name" VirtualCluster = Value Prelude.Text+ set newValue VirtualCluster {..}+ = VirtualCluster {name = newValue, ..}+instance Property "SecurityConfigurationId" VirtualCluster where+ type PropertyType "SecurityConfigurationId" VirtualCluster = Value Prelude.Text+ set newValue VirtualCluster {..}+ = VirtualCluster+ {securityConfigurationId = Prelude.pure newValue, ..}+instance Property "Tags" VirtualCluster where+ type PropertyType "Tags" VirtualCluster = [Tag]+ set newValue VirtualCluster {..}+ = VirtualCluster {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/EMRContainers/VirtualCluster/ContainerInfoProperty.hs view
@@ -0,0 +1,31 @@+module Stratosphere.EMRContainers.VirtualCluster.ContainerInfoProperty (+ module Exports, ContainerInfoProperty(..), mkContainerInfoProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMRContainers.VirtualCluster.EksInfoProperty as Exports+import Stratosphere.ResourceProperties+data ContainerInfoProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerinfo.html>+ ContainerInfoProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerinfo.html#cfn-emrcontainers-virtualcluster-containerinfo-eksinfo>+ eksInfo :: EksInfoProperty}+ deriving stock (Prelude.Eq, Prelude.Show)+mkContainerInfoProperty :: EksInfoProperty -> ContainerInfoProperty+mkContainerInfoProperty eksInfo+ = ContainerInfoProperty+ {haddock_workaround_ = (), eksInfo = eksInfo}+instance ToResourceProperties ContainerInfoProperty where+ toResourceProperties ContainerInfoProperty {..}+ = ResourceProperties+ {awsType = "AWS::EMRContainers::VirtualCluster.ContainerInfo",+ supportsTags = Prelude.False,+ properties = ["EksInfo" JSON..= eksInfo]}+instance JSON.ToJSON ContainerInfoProperty where+ toJSON ContainerInfoProperty {..}+ = JSON.object ["EksInfo" JSON..= eksInfo]+instance Property "EksInfo" ContainerInfoProperty where+ type PropertyType "EksInfo" ContainerInfoProperty = EksInfoProperty+ set newValue ContainerInfoProperty {..}+ = ContainerInfoProperty {eksInfo = newValue, ..}
+ gen/Stratosphere/EMRContainers/VirtualCluster/ContainerInfoProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMRContainers.VirtualCluster.ContainerInfoProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ContainerInfoProperty :: Prelude.Type+instance ToResourceProperties ContainerInfoProperty+instance Prelude.Eq ContainerInfoProperty+instance Prelude.Show ContainerInfoProperty+instance JSON.ToJSON ContainerInfoProperty
+ gen/Stratosphere/EMRContainers/VirtualCluster/ContainerProviderProperty.hs view
@@ -0,0 +1,50 @@+module Stratosphere.EMRContainers.VirtualCluster.ContainerProviderProperty (+ module Exports, ContainerProviderProperty(..),+ mkContainerProviderProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EMRContainers.VirtualCluster.ContainerInfoProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ContainerProviderProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html>+ ContainerProviderProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html#cfn-emrcontainers-virtualcluster-containerprovider-id>+ id :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html#cfn-emrcontainers-virtualcluster-containerprovider-info>+ info :: ContainerInfoProperty,+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-containerprovider.html#cfn-emrcontainers-virtualcluster-containerprovider-type>+ type' :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkContainerProviderProperty ::+ Value Prelude.Text+ -> ContainerInfoProperty+ -> Value Prelude.Text -> ContainerProviderProperty+mkContainerProviderProperty id info type'+ = ContainerProviderProperty+ {haddock_workaround_ = (), id = id, info = info, type' = type'}+instance ToResourceProperties ContainerProviderProperty where+ toResourceProperties ContainerProviderProperty {..}+ = ResourceProperties+ {awsType = "AWS::EMRContainers::VirtualCluster.ContainerProvider",+ supportsTags = Prelude.False,+ properties = ["Id" JSON..= id, "Info" JSON..= info,+ "Type" JSON..= type']}+instance JSON.ToJSON ContainerProviderProperty where+ toJSON ContainerProviderProperty {..}+ = JSON.object+ ["Id" JSON..= id, "Info" JSON..= info, "Type" JSON..= type']+instance Property "Id" ContainerProviderProperty where+ type PropertyType "Id" ContainerProviderProperty = Value Prelude.Text+ set newValue ContainerProviderProperty {..}+ = ContainerProviderProperty {id = newValue, ..}+instance Property "Info" ContainerProviderProperty where+ type PropertyType "Info" ContainerProviderProperty = ContainerInfoProperty+ set newValue ContainerProviderProperty {..}+ = ContainerProviderProperty {info = newValue, ..}+instance Property "Type" ContainerProviderProperty where+ type PropertyType "Type" ContainerProviderProperty = Value Prelude.Text+ set newValue ContainerProviderProperty {..}+ = ContainerProviderProperty {type' = newValue, ..}
+ gen/Stratosphere/EMRContainers/VirtualCluster/ContainerProviderProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMRContainers.VirtualCluster.ContainerProviderProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ContainerProviderProperty :: Prelude.Type+instance ToResourceProperties ContainerProviderProperty+instance Prelude.Eq ContainerProviderProperty+instance Prelude.Show ContainerProviderProperty+instance JSON.ToJSON ContainerProviderProperty
+ gen/Stratosphere/EMRContainers/VirtualCluster/EksInfoProperty.hs view
@@ -0,0 +1,30 @@+module Stratosphere.EMRContainers.VirtualCluster.EksInfoProperty (+ EksInfoProperty(..), mkEksInfoProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EksInfoProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-eksinfo.html>+ EksInfoProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emrcontainers-virtualcluster-eksinfo.html#cfn-emrcontainers-virtualcluster-eksinfo-namespace>+ namespace :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkEksInfoProperty :: Value Prelude.Text -> EksInfoProperty+mkEksInfoProperty namespace+ = EksInfoProperty {haddock_workaround_ = (), namespace = namespace}+instance ToResourceProperties EksInfoProperty where+ toResourceProperties EksInfoProperty {..}+ = ResourceProperties+ {awsType = "AWS::EMRContainers::VirtualCluster.EksInfo",+ supportsTags = Prelude.False,+ properties = ["Namespace" JSON..= namespace]}+instance JSON.ToJSON EksInfoProperty where+ toJSON EksInfoProperty {..}+ = JSON.object ["Namespace" JSON..= namespace]+instance Property "Namespace" EksInfoProperty where+ type PropertyType "Namespace" EksInfoProperty = Value Prelude.Text+ set newValue EksInfoProperty {..}+ = EksInfoProperty {namespace = newValue, ..}
+ gen/Stratosphere/EMRContainers/VirtualCluster/EksInfoProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EMRContainers.VirtualCluster.EksInfoProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EksInfoProperty :: Prelude.Type+instance ToResourceProperties EksInfoProperty+instance Prelude.Eq EksInfoProperty+instance Prelude.Show EksInfoProperty+instance JSON.ToJSON EksInfoProperty
+ stratosphere-emrcontainers.cabal view
@@ -0,0 +1,76 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.38.2.+--+-- see: https://github.com/sol/hpack++name: stratosphere-emrcontainers+version: 1.0.0+synopsis: Stratosphere integration for AWS EMRContainers.+description: Integration into stratosphere to generate resources and properties for AWS EMRContainers+category: AWS, Cloud, EMRContainers+stability: experimental+homepage: https://github.com/mbj/stratosphere#readme+bug-reports: https://github.com/mbj/stratosphere/issues+maintainer: Markus Schirp+license: MIT+license-file: LICENSE.md+build-type: Simple++source-repository head+ type: git+ location: https://github.com/mbj/stratosphere++flag development+ description: Run GHC with development flags+ manual: True+ default: False++library+ exposed-modules:+ Stratosphere.EMRContainers.VirtualCluster+ Stratosphere.EMRContainers.VirtualCluster.ContainerInfoProperty+ Stratosphere.EMRContainers.VirtualCluster.ContainerProviderProperty+ Stratosphere.EMRContainers.VirtualCluster.EksInfoProperty+ other-modules:+ Paths_stratosphere_emrcontainers+ hs-source-dirs:+ gen+ default-extensions:+ DataKinds+ DeriveGeneric+ DerivingStrategies+ DerivingVia+ DuplicateRecordFields+ FlexibleContexts+ FlexibleInstances+ GADTs+ GeneralizedNewtypeDeriving+ InstanceSigs+ LambdaCase+ MultiParamTypeClasses+ NoFieldSelectors+ NoImplicitPrelude+ NumericUnderscores+ OverloadedLists+ OverloadedRecordDot+ OverloadedStrings+ PolyKinds+ RecordWildCards+ ScopedTypeVariables+ StandaloneDeriving+ Strict+ TemplateHaskell+ TupleSections+ TypeApplications+ TypeFamilies+ ghc-options: -Wall -Wcompat -Widentities -Wimplicit-prelude -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wredundant-constraints -fhide-source-paths -funbox-strict-fields -optP-Wno-nonportable-include-path -Wno-unused-imports+ build-depends:+ aeson ==2.*+ , base >=4.8 && <4.22+ , stratosphere ==1.0.0+ default-language: Haskell2010+ if flag(development)+ ghc-options: -Werror+ else+ ghc-options: -Wwarn