stratosphere-codeguruprofiler (empty) → 1.0.0
raw patch · 7 files changed
+270/−0 lines, 7 filesdep +aesondep +basedep +stratosphere
Dependencies added: aeson, base, stratosphere
Files
- LICENSE.md +20/−0
- gen/Stratosphere/CodeGuruProfiler/ProfilingGroup.hs +80/−0
- gen/Stratosphere/CodeGuruProfiler/ProfilingGroup/AgentPermissionsProperty.hs +32/−0
- gen/Stratosphere/CodeGuruProfiler/ProfilingGroup/AgentPermissionsProperty.hs-boot +9/−0
- gen/Stratosphere/CodeGuruProfiler/ProfilingGroup/ChannelProperty.hs +45/−0
- gen/Stratosphere/CodeGuruProfiler/ProfilingGroup/ChannelProperty.hs-boot +9/−0
- stratosphere-codeguruprofiler.cabal +75/−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/CodeGuruProfiler/ProfilingGroup.hs view
@@ -0,0 +1,80 @@+module Stratosphere.CodeGuruProfiler.ProfilingGroup (+ module Exports, ProfilingGroup(..), mkProfilingGroup+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.CodeGuruProfiler.ProfilingGroup.AgentPermissionsProperty as Exports+import {-# SOURCE #-} Stratosphere.CodeGuruProfiler.ProfilingGroup.ChannelProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data ProfilingGroup+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html>+ ProfilingGroup {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-agentpermissions>+ agentPermissions :: (Prelude.Maybe AgentPermissionsProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-anomalydetectionnotificationconfiguration>+ anomalyDetectionNotificationConfiguration :: (Prelude.Maybe [ChannelProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-computeplatform>+ computePlatform :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-profilinggroupname>+ profilingGroupName :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-tags>+ tags :: (Prelude.Maybe [Tag])}+ deriving stock (Prelude.Eq, Prelude.Show)+mkProfilingGroup :: Value Prelude.Text -> ProfilingGroup+mkProfilingGroup profilingGroupName+ = ProfilingGroup+ {haddock_workaround_ = (), profilingGroupName = profilingGroupName,+ agentPermissions = Prelude.Nothing,+ anomalyDetectionNotificationConfiguration = Prelude.Nothing,+ computePlatform = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties ProfilingGroup where+ toResourceProperties ProfilingGroup {..}+ = ResourceProperties+ {awsType = "AWS::CodeGuruProfiler::ProfilingGroup",+ supportsTags = Prelude.True,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["ProfilingGroupName" JSON..= profilingGroupName]+ (Prelude.catMaybes+ [(JSON..=) "AgentPermissions" Prelude.<$> agentPermissions,+ (JSON..=) "AnomalyDetectionNotificationConfiguration"+ Prelude.<$> anomalyDetectionNotificationConfiguration,+ (JSON..=) "ComputePlatform" Prelude.<$> computePlatform,+ (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON ProfilingGroup where+ toJSON ProfilingGroup {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["ProfilingGroupName" JSON..= profilingGroupName]+ (Prelude.catMaybes+ [(JSON..=) "AgentPermissions" Prelude.<$> agentPermissions,+ (JSON..=) "AnomalyDetectionNotificationConfiguration"+ Prelude.<$> anomalyDetectionNotificationConfiguration,+ (JSON..=) "ComputePlatform" Prelude.<$> computePlatform,+ (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "AgentPermissions" ProfilingGroup where+ type PropertyType "AgentPermissions" ProfilingGroup = AgentPermissionsProperty+ set newValue ProfilingGroup {..}+ = ProfilingGroup {agentPermissions = Prelude.pure newValue, ..}+instance Property "AnomalyDetectionNotificationConfiguration" ProfilingGroup where+ type PropertyType "AnomalyDetectionNotificationConfiguration" ProfilingGroup = [ChannelProperty]+ set newValue ProfilingGroup {..}+ = ProfilingGroup+ {anomalyDetectionNotificationConfiguration = Prelude.pure newValue,+ ..}+instance Property "ComputePlatform" ProfilingGroup where+ type PropertyType "ComputePlatform" ProfilingGroup = Value Prelude.Text+ set newValue ProfilingGroup {..}+ = ProfilingGroup {computePlatform = Prelude.pure newValue, ..}+instance Property "ProfilingGroupName" ProfilingGroup where+ type PropertyType "ProfilingGroupName" ProfilingGroup = Value Prelude.Text+ set newValue ProfilingGroup {..}+ = ProfilingGroup {profilingGroupName = newValue, ..}+instance Property "Tags" ProfilingGroup where+ type PropertyType "Tags" ProfilingGroup = [Tag]+ set newValue ProfilingGroup {..}+ = ProfilingGroup {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/CodeGuruProfiler/ProfilingGroup/AgentPermissionsProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.CodeGuruProfiler.ProfilingGroup.AgentPermissionsProperty (+ AgentPermissionsProperty(..), mkAgentPermissionsProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data AgentPermissionsProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codeguruprofiler-profilinggroup-agentpermissions.html>+ AgentPermissionsProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codeguruprofiler-profilinggroup-agentpermissions.html#cfn-codeguruprofiler-profilinggroup-agentpermissions-principals>+ principals :: (ValueList Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkAgentPermissionsProperty ::+ ValueList Prelude.Text -> AgentPermissionsProperty+mkAgentPermissionsProperty principals+ = AgentPermissionsProperty+ {haddock_workaround_ = (), principals = principals}+instance ToResourceProperties AgentPermissionsProperty where+ toResourceProperties AgentPermissionsProperty {..}+ = ResourceProperties+ {awsType = "AWS::CodeGuruProfiler::ProfilingGroup.AgentPermissions",+ supportsTags = Prelude.False,+ properties = ["Principals" JSON..= principals]}+instance JSON.ToJSON AgentPermissionsProperty where+ toJSON AgentPermissionsProperty {..}+ = JSON.object ["Principals" JSON..= principals]+instance Property "Principals" AgentPermissionsProperty where+ type PropertyType "Principals" AgentPermissionsProperty = ValueList Prelude.Text+ set newValue AgentPermissionsProperty {..}+ = AgentPermissionsProperty {principals = newValue, ..}
+ gen/Stratosphere/CodeGuruProfiler/ProfilingGroup/AgentPermissionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.CodeGuruProfiler.ProfilingGroup.AgentPermissionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AgentPermissionsProperty :: Prelude.Type+instance ToResourceProperties AgentPermissionsProperty+instance Prelude.Eq AgentPermissionsProperty+instance Prelude.Show AgentPermissionsProperty+instance JSON.ToJSON AgentPermissionsProperty
+ gen/Stratosphere/CodeGuruProfiler/ProfilingGroup/ChannelProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.CodeGuruProfiler.ProfilingGroup.ChannelProperty (+ ChannelProperty(..), mkChannelProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ChannelProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codeguruprofiler-profilinggroup-channel.html>+ ChannelProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codeguruprofiler-profilinggroup-channel.html#cfn-codeguruprofiler-profilinggroup-channel-channelid>+ channelId :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codeguruprofiler-profilinggroup-channel.html#cfn-codeguruprofiler-profilinggroup-channel-channeluri>+ channelUri :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkChannelProperty :: Value Prelude.Text -> ChannelProperty+mkChannelProperty channelUri+ = ChannelProperty+ {haddock_workaround_ = (), channelUri = channelUri,+ channelId = Prelude.Nothing}+instance ToResourceProperties ChannelProperty where+ toResourceProperties ChannelProperty {..}+ = ResourceProperties+ {awsType = "AWS::CodeGuruProfiler::ProfilingGroup.Channel",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["channelUri" JSON..= channelUri]+ (Prelude.catMaybes [(JSON..=) "channelId" Prelude.<$> channelId]))}+instance JSON.ToJSON ChannelProperty where+ toJSON ChannelProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["channelUri" JSON..= channelUri]+ (Prelude.catMaybes [(JSON..=) "channelId" Prelude.<$> channelId])))+instance Property "channelId" ChannelProperty where+ type PropertyType "channelId" ChannelProperty = Value Prelude.Text+ set newValue ChannelProperty {..}+ = ChannelProperty {channelId = Prelude.pure newValue, ..}+instance Property "channelUri" ChannelProperty where+ type PropertyType "channelUri" ChannelProperty = Value Prelude.Text+ set newValue ChannelProperty {..}+ = ChannelProperty {channelUri = newValue, ..}
+ gen/Stratosphere/CodeGuruProfiler/ProfilingGroup/ChannelProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.CodeGuruProfiler.ProfilingGroup.ChannelProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ChannelProperty :: Prelude.Type+instance ToResourceProperties ChannelProperty+instance Prelude.Eq ChannelProperty+instance Prelude.Show ChannelProperty+instance JSON.ToJSON ChannelProperty
+ stratosphere-codeguruprofiler.cabal view
@@ -0,0 +1,75 @@+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-codeguruprofiler+version: 1.0.0+synopsis: Stratosphere integration for AWS CodeGuruProfiler.+description: Integration into stratosphere to generate resources and properties for AWS CodeGuruProfiler+category: AWS, Cloud, CodeGuruProfiler+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.CodeGuruProfiler.ProfilingGroup+ Stratosphere.CodeGuruProfiler.ProfilingGroup.AgentPermissionsProperty+ Stratosphere.CodeGuruProfiler.ProfilingGroup.ChannelProperty+ other-modules:+ Paths_stratosphere_codeguruprofiler+ 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