amazonka-ec2-1.6.1: Amazon Elastic Compute Cloud SDK.

Copyright(c) 2013-2018 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.EC2.ReleaseAddress

Contents

Description

Releases the specified Elastic IP address.

EC2-Classic, default VPC
Releasing an Elastic IP address automatically disassociates it from any instance that it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress .
Nondefault VPC
You must use DisassociateAddress to disassociate the Elastic IP address before you can release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse ).

After releasing an Elastic IP address, it is released to the IP address pool. Be sure to update your DNS records and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address that you already released, you'll get an AuthFailure error if the address is already allocated to another AWS account.

EC2-VPC
After you release an Elastic IP address for use in a VPC, you might be able to recover it. For more information, see AllocateAddress .
Synopsis

Creating a Request

releaseAddress :: ReleaseAddress #

Creates a value of ReleaseAddress with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • raAllocationId - [EC2-VPC] The allocation ID. Required for EC2-VPC.
  • raPublicIP - [EC2-Classic] The Elastic IP address. Required for EC2-Classic.
  • raDryRun - Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .

data ReleaseAddress #

Contains the parameters for ReleaseAddress.

See: releaseAddress smart constructor.

Instances
Eq ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Data ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ReleaseAddress -> c ReleaseAddress #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ReleaseAddress #

toConstr :: ReleaseAddress -> Constr #

dataTypeOf :: ReleaseAddress -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ReleaseAddress) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ReleaseAddress) #

gmapT :: (forall b. Data b => b -> b) -> ReleaseAddress -> ReleaseAddress #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ReleaseAddress -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ReleaseAddress -> r #

gmapQ :: (forall d. Data d => d -> u) -> ReleaseAddress -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ReleaseAddress -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ReleaseAddress -> m ReleaseAddress #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ReleaseAddress -> m ReleaseAddress #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ReleaseAddress -> m ReleaseAddress #

Read ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Show ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Generic ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Associated Types

type Rep ReleaseAddress :: Type -> Type #

Hashable ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

AWSRequest ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Associated Types

type Rs ReleaseAddress :: Type #

ToHeaders ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

ToPath ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

ToQuery ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

NFData ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Methods

rnf :: ReleaseAddress -> () #

type Rep ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

type Rep ReleaseAddress = D1 (MetaData "ReleaseAddress" "Network.AWS.EC2.ReleaseAddress" "amazonka-ec2-1.6.1-H98Zd65xIYr2z4e5UhW9ck" False) (C1 (MetaCons "ReleaseAddress'" PrefixI True) (S1 (MetaSel (Just "_raAllocationId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "_raPublicIP") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_raDryRun") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)))))
type Rs ReleaseAddress # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Request Lenses

raAllocationId :: Lens' ReleaseAddress (Maybe Text) #

EC2-VPC
The allocation ID. Required for EC2-VPC.

raPublicIP :: Lens' ReleaseAddress (Maybe Text) #

EC2-Classic
The Elastic IP address. Required for EC2-Classic.

raDryRun :: Lens' ReleaseAddress (Maybe Bool) #

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .

Destructuring the Response

releaseAddressResponse :: ReleaseAddressResponse #

Creates a value of ReleaseAddressResponse with the minimum fields required to make a request.

data ReleaseAddressResponse #

See: releaseAddressResponse smart constructor.

Instances
Eq ReleaseAddressResponse # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Data ReleaseAddressResponse # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ReleaseAddressResponse -> c ReleaseAddressResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ReleaseAddressResponse #

toConstr :: ReleaseAddressResponse -> Constr #

dataTypeOf :: ReleaseAddressResponse -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ReleaseAddressResponse) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ReleaseAddressResponse) #

gmapT :: (forall b. Data b => b -> b) -> ReleaseAddressResponse -> ReleaseAddressResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ReleaseAddressResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ReleaseAddressResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> ReleaseAddressResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ReleaseAddressResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ReleaseAddressResponse -> m ReleaseAddressResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ReleaseAddressResponse -> m ReleaseAddressResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ReleaseAddressResponse -> m ReleaseAddressResponse #

Read ReleaseAddressResponse # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Show ReleaseAddressResponse # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Generic ReleaseAddressResponse # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Associated Types

type Rep ReleaseAddressResponse :: Type -> Type #

NFData ReleaseAddressResponse # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

Methods

rnf :: ReleaseAddressResponse -> () #

type Rep ReleaseAddressResponse # 
Instance details

Defined in Network.AWS.EC2.ReleaseAddress

type Rep ReleaseAddressResponse = D1 (MetaData "ReleaseAddressResponse" "Network.AWS.EC2.ReleaseAddress" "amazonka-ec2-1.6.1-H98Zd65xIYr2z4e5UhW9ck" False) (C1 (MetaCons "ReleaseAddressResponse'" PrefixI False) (U1 :: Type -> Type))