Skip to content

attach_vpn_gateway

attach_vpn_gateway(
    *,
    config_overrides: Optional[EC2ClientConfig] = None,
    vpc_id: Optional[VpcId] = None,
    vpn_gateway_id: Optional[VpnGatewayId] = None,
    dry_run: Optional[Boolean] = None,
) -> AttachVpnGatewayResult

Attaches an available virtual private gateway to a VPC. You can attach one virtual private gateway to one VPC at a time.

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN User Guide.

Parameters:

  • vpc_id (Optional[VpcId], default: None ) –

    The ID of the VPC.

  • 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 attach_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,
) -> "capo_ec2.types.attach_vpn_gateway_result.AttachVpnGatewayResult":
    """<p>Attaches an available virtual private gateway to a VPC. You can attach one virtual private gateway to one VPC at a time.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html">Amazon Web Services Site-to-Site VPN</a> in the <i>Amazon Web Services Site-to-Site VPN User Guide</i>.</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.attach_vpn_gateway_request.AttachVpnGatewayRequest]",
    ) -> OperationResponse[
        "capo_ec2.types.attach_vpn_gateway_result.AttachVpnGatewayResult"
    ]:
        import capo_ec2._operations.amazon_ec2.attach_vpn_gateway

        output, http_response = (
            capo_ec2._operations.amazon_ec2.attach_vpn_gateway.attach_vpn_gateway(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("AttachVpnGateway")
    )
    input_: capo_ec2.types.attach_vpn_gateway_request.AttachVpnGatewayRequest = {}
    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