Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.alicloud.vpc.kotlin
import com.pulumi.alicloud.vpc.NatGatewayArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.Int
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
*
* ## Import
* Nat gateway can be imported using the id, e.g.
* ```sh
* $ pulumi import alicloud:vpc/natGateway:NatGateway example
* ```
* @property deletionProtection Whether enable the deletion protection or not. Default value: `false`.
* - true: Enable deletion protection.
* - false: Disable deletion protection.
* @property description Description of the nat gateway, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Defaults to null.
* @property dryRun Specifies whether to only precheck this request. Default value: `false`.
* @property eipBindMode The EIP binding mode of the NAT gateway. Default value: `MULTI_BINDED`. Valid values:
* - `MULTI_BINDED`: Multi EIP network card visible mode.
* - `NAT`: EIP normal mode, compatible with IPv4 gateway.
* @property force Specifies whether to forcefully delete the NAT gateway.
* @property instanceChargeType Field `instance_charge_type` has been deprecated from provider version 1.121.0. New field `payment_type` instead.
* @property internetChargeType The internet charge type. Valid values `PayByLcu` and `PayBySpec`. The `PayByLcu` is only support enhanced NAT. **NOTE:** From 1.137.0+, The `PayBySpec` has been deprecated.
* @property name Field `name` has been deprecated from provider version 1.121.0. New field `nat_gateway_name` instead.
* @property natGatewayName Name of the nat gateway. The value can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as "-",".","_", and must not begin or end with a hyphen, and must not begin with http:// or https://. Defaults to null.
* @property natType The type of NAT gateway. Valid values: `Normal` and `Enhanced`. **NOTE:** From 1.137.0+, The `Normal` has been deprecated.
* @property networkType Indicates the type of the created NAT gateway. Valid values `internet` and `intranet`. `internet`: Internet NAT Gateway. `intranet`: VPC NAT Gateway.
* @property paymentType The billing method of the NAT gateway. Valid values are `PayAsYouGo` and `Subscription`. Default to `PayAsYouGo`.
* @property period The duration that you will buy the resource, in month. It is valid when `payment_type` is `Subscription`. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify "period" and you can do that via web console. **NOTE:** International station only supports `Subscription`.
* > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.
* @property specification The specification of the nat gateway. Valid values are `Small`, `Middle` and `Large`. Effective when `internet_charge_type` is `PayBySpec` and `network_type` is `internet`. Details refer to [Nat Gateway Specification](https://help.aliyun.com/document_detail/203500.html).
* @property tags The tags of NAT gateway.
* @property vpcId The VPC ID.
* @property vswitchId The id of VSwitch.
*/
public data class NatGatewayArgs(
public val deletionProtection: Output? = null,
public val description: Output? = null,
public val dryRun: Output? = null,
public val eipBindMode: Output? = null,
public val force: Output? = null,
public val instanceChargeType: Output? = null,
public val internetChargeType: Output? = null,
public val name: Output? = null,
public val natGatewayName: Output? = null,
public val natType: Output? = null,
public val networkType: Output? = null,
public val paymentType: Output? = null,
public val period: Output? = null,
public val specification: Output? = null,
public val tags: Output