Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the virtual private gateway (any attachments to the virtual private gateway are also described).
You must wait for the attachment's state to switch to detached before you can delete the VPC or attach a different VPC to the virtual private gateway.
Parameters:
-
vpc_id
(Optional[VpcId], default:
None
)
–
-
vpn_gateway_id
(Optional[VpnGatewayId], default:
None
)
–
The ID of the virtual private gateway.
-
dry_run
(Optional[Boolean], default:
None
)
–
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.
Raises:
Source code in docs_src/capo_ec2/_services/ec2.py
| def detach_vpn_gateway(
self,
*,
config_overrides: Optional[EC2ClientConfig] = None,
vpc_id: Optional["capo_ec2.types.vpc_id.VpcId"] = None,
vpn_gateway_id: Optional["capo_ec2.types.vpn_gateway_id.VpnGatewayId"] = None,
dry_run: Optional["capo_ec2.types.boolean.Boolean"] = None,
) -> None:
"""<p>Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the virtual private gateway (any attachments to the virtual private gateway are also described).</p> <p>You must wait for the attachment's state to switch to <code>detached</code> before you can delete the VPC or attach a different VPC to the virtual private gateway.</p>
Args:
vpc_id: <p>The ID of the VPC.</p>
vpn_gateway_id: <p>The ID of the virtual private gateway.</p>
dry_run: <p>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 <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
Raises:
capo_ec2.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
def _handler(
req: "OperationRequest[capo_ec2.types.detach_vpn_gateway_request.DetachVpnGatewayRequest]",
) -> OperationResponse[None]:
import capo_ec2._operations.amazon_ec2.detach_vpn_gateway
output, http_response = (
capo_ec2._operations.amazon_ec2.detach_vpn_gateway.detach_vpn_gateway(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("DetachVpnGateway")
)
input_: capo_ec2.types.detach_vpn_gateway_request.DetachVpnGatewayRequest = {}
if vpc_id is not None:
input_["vpc_id"] = vpc_id
if vpn_gateway_id is not None:
input_["vpn_gateway_id"] = vpn_gateway_id
if dry_run is not None:
input_["dry_run"] = dry_run
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output
|