Safe Haskell | None |
---|
- data EC2 m a
- runEC2 :: MonadIO m => Credential -> EC2 m a -> m a
- data ResponseParserException = NextToken Text
- data EC2Context = EC2Context {}
- data EC2Endpoint
- = UsEast1
- | ApNortheast1
- setEndpoint :: (MonadResource m, MonadBaseControl IO m) => EC2Endpoint -> EC2 m ()
- describeInstances :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Filter] -> EC2 m (Source m Reservation)
- runInstances :: (MonadResource m, MonadBaseControl IO m) => RunInstancesParam -> EC2 m Reservation
- data RunInstancesParam = RunInstancesParam {
- riImageId :: Text
- riMinCount :: Int
- riMaxCount :: Int
- riKeyName :: Maybe Text
- riSecurityGroupIds :: [Text]
- riSecurityGroups :: [Text]
- riUserData :: Maybe ByteString
- riInstanceType :: Maybe Text
- riAvailabilityZone :: Maybe Text
- riPlacementGroup :: Maybe Text
- riTenancy :: Maybe Text
- riKernelId :: Maybe Text
- riRamdiskId :: Maybe Text
- riBlockDeviceMappings :: [BlockDeviceMappingParam]
- riMonitoringEnabled :: Maybe Bool
- riSubnetId :: Maybe Text
- riDisableApiTermination :: Maybe Bool
- riShutdownBehavior :: Maybe ShutdownBehavior
- riPrivateIpAddresses :: [Text]
- riClientToken :: Maybe Text
- riNetworkInterface :: [NetworkInterfaceParam]
- riIamInstanceProfile :: Maybe IamInstanceProfile
- riEbsOptimized :: Maybe Bool
- defaultRunInstancesParam :: Text -> Int -> Int -> RunInstancesParam
- terminateInstances :: (MonadResource m, MonadBaseControl IO m) => [Text] -> EC2 m (Source m InstanceStateChange)
- startInstances :: (MonadResource m, MonadBaseControl IO m) => [Text] -> EC2 m (Source m InstanceStateChange)
- stopInstances :: (MonadResource m, MonadBaseControl IO m) => [Text] -> Bool -> EC2 m (Source m InstanceStateChange)
- rebootInstances :: (MonadResource m, MonadBaseControl IO m) => [Text] -> EC2 m Bool
- getConsoleOutput :: (MonadResource m, MonadBaseControl IO m) => Text -> EC2 m ConsoleOutput
- getPasswordData :: (MonadResource m, MonadBaseControl IO m) => Text -> EC2 m PasswordData
- describeInstanceStatus :: (MonadResource m, MonadBaseControl IO m) => [Text] -> Bool -> [Filter] -> Maybe Text -> EC2 m (Source m InstanceStatus)
- describeInstanceAttribute :: (MonadResource m, MonadBaseControl IO m) => Text -> InstanceAttributeRequest -> EC2 m InstanceAttribute
- data InstanceAttributeRequest
- resetInstanceAttribute :: (MonadResource m, MonadBaseControl IO m) => Text -> ResetInstanceAttributeParam -> EC2 m Bool
- data ResetInstanceAttributeParam
- modifyInstanceAttribute :: (MonadResource m, MonadBaseControl IO m) => Text -> [ModifyInstanceAttributeParam] -> EC2 m Bool
- data ModifyInstanceAttributeParam
- = MIAPInstanceType Text
- | MIAPKernelId Text
- | MIAPRamdiskId Text
- | MIAPUserData Text
- | MIAPDisableApiTermination Bool
- | MIAPShutdownBehavior ShutdownBehavior
- | MIAPRootDeviceName Text
- | MIAPBlockDeviceMapping [BlockDeviceMappingParam]
- | MIAPSourceDestCheck Bool
- | MIAPGroupSet [Text]
- | MIAPEbsOptimized Bool
- describeImages :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Text] -> [Text] -> [Filter] -> EC2 m (Source m Image)
- createImage :: (MonadResource m, MonadBaseControl IO m) => Text -> Text -> Maybe Text -> Bool -> [BlockDeviceMappingParam] -> EC2 m Text
- describeVolumes :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Filter] -> EC2 m (Source m Volume)
- createVolume :: (MonadResource m, MonadBaseControl IO m) => CreateVolumeParam -> EC2 m Volume
- data CreateVolumeParam
- = CreateNewVolume { }
- | CreateFromSnapshot { }
- deleteVolume :: (MonadResource m, MonadBaseControl IO m) => Text -> EC2 m Bool
- attachVolume :: (MonadResource m, MonadBaseControl IO m) => Text -> Text -> Text -> EC2 m Attachment
- detachVolume :: (MonadResource m, MonadBaseControl IO m) => Text -> Maybe Text -> Maybe Text -> Maybe Bool -> EC2 m Attachment
- describeSnapshots :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Text] -> [Text] -> [Filter] -> EC2 m (Source m Snapshot)
- createSnapshot :: (MonadResource m, MonadBaseControl IO m) => Text -> Maybe Text -> EC2 m Snapshot
- deleteSnapshot :: (MonadResource m, MonadBaseControl IO m) => Text -> EC2 m Bool
- describeAddresses :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Text] -> [Filter] -> EC2 m (Source m Address)
- allocateAddress :: (MonadResource m, MonadBaseControl IO m) => Bool -> EC2 m AllocateAddressResponse
- releaseAddress :: (MonadResource m, MonadBaseControl IO m) => Maybe Text -> Maybe Text -> EC2 m EC2Return
- associateAddress :: (MonadResource m, MonadBaseControl IO m) => AssociateAddressParam -> EC2 m (Bool, Maybe Text)
- data AssociateAddressParam
- disassociateAddress :: (MonadResource m, MonadBaseControl IO m) => DisassociateAddressParam -> EC2 m Bool
- data DisassociateAddressParam
- describeKeyPairs :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Filter] -> EC2 m (Source m KeyPair)
- createKeyPair :: (MonadResource m, MonadBaseControl IO m) => Text -> EC2 m (KeyPair, Text)
- deleteKeyPair :: (MonadResource m, MonadBaseControl IO m) => Text -> EC2 m Bool
- importKeyPair :: (MonadResource m, MonadBaseControl IO m) => Text -> Text -> EC2 m KeyPair
- describeSecurityGroups :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Text] -> [Filter] -> EC2 m (Source m SecurityGroup)
- createSecurityGroup :: (MonadResource m, MonadBaseControl IO m) => Text -> Text -> Maybe Text -> EC2 m (Maybe Text)
- deleteSecurityGroup :: (MonadResource m, MonadBaseControl IO m) => SecurityGroupParam -> EC2 m Bool
- data SecurityGroupParam
- authorizeSecurityGroupIngress :: (MonadResource m, MonadBaseControl IO m) => SecurityGroupParam -> [IpPermission] -> EC2 m Bool
- authorizeSecurityGroupEgress :: (MonadResource m, MonadBaseControl IO m) => Text -> [IpPermission] -> EC2 m Bool
- revokeSecurityGroupIngress :: (MonadResource m, MonadBaseControl IO m) => SecurityGroupParam -> [IpPermission] -> EC2 m Bool
- revokeSecurityGroupEgress :: (MonadResource m, MonadBaseControl IO m) => Text -> [IpPermission] -> EC2 m Bool
- describeRegions :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Filter] -> EC2 m (Source m Region)
- describeAvailabilityZones :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [Filter] -> EC2 m (Source m AvailabilityZone)
- describeTags :: (MonadResource m, MonadBaseControl IO m) => [Filter] -> EC2 m (Source m Tag)
- createTags :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [(Text, Text)] -> EC2 m Bool
- deleteTags :: (MonadResource m, MonadBaseControl IO m) => [Text] -> [ResourceTag] -> EC2 m Bool
EC2 Environment
MonadTrans EC2 | |
MonadTransControl EC2 | |
(Applicative base, Applicative (EC2 m), Monad base, Monad (EC2 m), MonadBase base m) => MonadBase base (EC2 m) | |
(MonadBase base (EC2 m), MonadBaseControl base m) => MonadBaseControl base (EC2 m) | |
(Monad (EC2 m), Monad m) => MonadReader Credential (EC2 m) | |
(Monad (EC2 m), Monad m) => MonadState EC2Context (EC2 m) | |
Monad m => Monad (EC2 m) | |
Functor m => Functor (EC2 m) | |
(Functor (EC2 m), Monad m, Functor m) => Applicative (EC2 m) | |
(Monad (EC2 m), MonadIO m) => MonadIO (EC2 m) |
runEC2 :: MonadIO m => Credential -> EC2 m a -> m aSource
data EC2Context Source
(Monad (EC2 m), Monad m) => MonadState EC2Context (EC2 m) |
setEndpoint :: (MonadResource m, MonadBaseControl IO m) => EC2Endpoint -> EC2 m ()Source
Instances
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | InstanceIds |
-> [Filter] | Filters |
-> EC2 m (Source m Reservation) |
runInstances :: (MonadResource m, MonadBaseControl IO m) => RunInstancesParam -> EC2 m ReservationSource
RunInstancesParam
is genereted with defaultRunInstancesParam
data RunInstancesParam Source
RunInstancesParam | |
|
defaultRunInstancesParamSource
:: Text | ImageId |
-> Int | MinCount |
-> Int | MaxCount |
-> RunInstancesParam |
RunInstances parameter utility
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | InstanceIds |
-> EC2 m (Source m InstanceStateChange) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | InstanceIds |
-> EC2 m (Source m InstanceStateChange) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | InstanceIds |
-> Bool | Force |
-> EC2 m (Source m InstanceStateChange) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | InstanceIds |
-> EC2 m Bool |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | InstanceId |
-> EC2 m ConsoleOutput |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | InstanceId |
-> EC2 m PasswordData |
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | InstanceIds |
-> Bool | is all instance? |
-> [Filter] | Filters |
-> Maybe Text | next token |
-> EC2 m (Source m InstanceStatus) |
raise ResponseParserException
(NextToken
token)
describeInstanceAttributeSource
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | InstanceId |
-> InstanceAttributeRequest | Attribute |
-> EC2 m InstanceAttribute |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | InstanceId |
-> ResetInstanceAttributeParam | |
-> EC2 m Bool |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | InstanceId |
-> [ModifyInstanceAttributeParam] | |
-> EC2 m Bool |
not tested
Images
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | ImageIds |
-> [Text] | Owners (User Ids) |
-> [Text] | ExecutedBy (User Ids) |
-> [Filter] | Filers |
-> EC2 m (Source m Image) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | InstanceId |
-> Text | Name |
-> Maybe Text | Description |
-> Bool | NoReboot |
-> [BlockDeviceMappingParam] | BlockDeviceMapping |
-> EC2 m Text |
Volumes
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | VolumeIds |
-> [Filter] | Filters |
-> EC2 m (Source m Volume) |
createVolume :: (MonadResource m, MonadBaseControl IO m) => CreateVolumeParam -> EC2 m VolumeSource
data CreateVolumeParam Source
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | VolumeId |
-> EC2 m Bool |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | VolumeId |
-> Text | InstanceId |
-> Text | Device |
-> EC2 m Attachment |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | VolumeId |
-> Maybe Text | InstanceId |
-> Maybe Text | Device |
-> Maybe Bool | Force |
-> EC2 m Attachment |
Snapshots
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | SnapshotIds |
-> [Text] | Owners (UserId) |
-> [Text] | RestorableBy (UserId) |
-> [Filter] | Filters |
-> EC2 m (Source m Snapshot) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | SnapshotId |
-> Maybe Text | Description |
-> EC2 m Snapshot |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | SnapshotId |
-> EC2 m Bool |
Addresses
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | PublicIps |
-> [Text] | AllocationIds |
-> [Filter] | Filters |
-> EC2 m (Source m Address) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Bool | is VPC? |
-> EC2 m AllocateAddressResponse |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Maybe Text | PublicIp |
-> Maybe Text | AllocationId |
-> EC2 m EC2Return |
associateAddress :: (MonadResource m, MonadBaseControl IO m) => AssociateAddressParam -> EC2 m (Bool, Maybe Text)Source
disassociateAddress :: (MonadResource m, MonadBaseControl IO m) => DisassociateAddressParam -> EC2 m BoolSource
KeyPairs
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | PublicIps |
-> [Filter] | Filters |
-> EC2 m (Source m KeyPair) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | KeyName |
-> EC2 m (KeyPair, Text) | KeyPair and KeyMaterial |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | KeyName |
-> EC2 m Bool |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | KeyName |
-> Text | PublicKeyMaterial |
-> EC2 m KeyPair |
SecurityGroups
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | GroupNames |
-> [Text] | GroupIds |
-> [Filter] | Filters |
-> EC2 m (Source m SecurityGroup) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | GroupName |
-> Text | GroupDescription |
-> Maybe Text | VpcId |
-> EC2 m (Maybe Text) | GroupId |
deleteSecurityGroup :: (MonadResource m, MonadBaseControl IO m) => SecurityGroupParam -> EC2 m BoolSource
authorizeSecurityGroupIngress :: (MonadResource m, MonadBaseControl IO m) => SecurityGroupParam -> [IpPermission] -> EC2 m BoolSource
not tested
authorizeSecurityGroupEgressSource
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | GroupId |
-> [IpPermission] | |
-> EC2 m Bool |
not tested
revokeSecurityGroupIngress :: (MonadResource m, MonadBaseControl IO m) => SecurityGroupParam -> [IpPermission] -> EC2 m BoolSource
not tested
revokeSecurityGroupEgressSource
:: (MonadResource m, MonadBaseControl IO m) | |
=> Text | GroupId |
-> [IpPermission] | |
-> EC2 m Bool |
not tested
Placements
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | RegionNames |
-> [Filter] | Filters |
-> EC2 m (Source m Region) |
describeAvailabilityZonesSource
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | ZoneNames |
-> [Filter] | Filters |
-> EC2 m (Source m AvailabilityZone) |
Tags
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Filter] | Filters |
-> EC2 m (Source m Tag) |
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | ResourceId (instance-id, image-id,..) |
-> [(Text, Text)] | |
-> EC2 m Bool |
:: (MonadResource m, MonadBaseControl IO m) | |
=> [Text] | ResourceId (instance-id, image-id,..) |
-> [ResourceTag] | |
-> EC2 m Bool |