aws-sdk 0.1.1.0 → 0.1.2.0
raw patch · 3 files changed
+30/−7 lines, 3 files
Files
- AWS/EC2/Instance.hs +1/−1
- AWS/EC2/Snapshot.hs +28/−5
- aws-sdk.cabal +1/−1
AWS/EC2/Instance.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE FlexibleContexts, RankNTypes #-} module AWS.EC2.Instance ( describeInstances
AWS/EC2/Snapshot.hs view
@@ -2,6 +2,8 @@ module AWS.EC2.Snapshot ( describeSnapshots+ , createSnapshot+ , deleteSnapshot ) where import Data.Text (Text)@@ -25,7 +27,8 @@ -> [Filter] -- ^ Filters -> EC2 m (Source m Snapshot) describeSnapshots ssids owners restby filters =- ec2QuerySource "DescribeSnapshots" params snapshotSet+ ec2QuerySource "DescribeSnapshots" params $+ itemConduit "snapshotSet" snapshotSink where params = [ ArrayParams "SnapshotId" ssids@@ -33,10 +36,10 @@ , ArrayParams "RestorableBy" restby , FilterParams filters ]- snapshotSet :: MonadThrow m- => GLConduit Event m Snapshot- snapshotSet = itemConduit "snapshotSet" $- snapshot++snapshotSink :: MonadThrow m+ => GLSink Event m Snapshot+snapshotSink = snapshot <$> getT "snapshotId" <*> getT "volumeId" <*> getF "status" snapshotStatus@@ -47,3 +50,23 @@ <*> getT "description" <*> getMT "ownerAlias" <*> resourceTagSink++createSnapshot+ :: (MonadResource m, MonadBaseControl IO m)+ => Text -- ^ SnapshotId+ -> Maybe Text -- ^ Description+ -> EC2 m Snapshot+createSnapshot volid desc =+ ec2Query "CreateSnapshot" params snapshotSink+ where+ params = [ValueParam "VolumeId" volid]+ ++ maybe [] (\a -> [ValueParam "Description" a]) desc++deleteSnapshot+ :: (MonadResource m, MonadBaseControl IO m)+ => Text -- ^ SnapshotId+ -> EC2 m Bool+deleteSnapshot ssid =+ ec2Query "DeleteSnapshot" params $ getF "return" textToBool+ where+ params = [ValueParam "SnapshotId" ssid]
aws-sdk.cabal view
@@ -1,5 +1,5 @@ name: aws-sdk-version: 0.1.1.0+version: 0.1.2.0 synopsis: AWS SDK for Haskell description: An AWS(Amazon Web Services) liblary for Haskell. license: BSD3