@volcengine/pulumi
Version:
A Pulumi package for creating and managing volcengine cloud resources.
326 lines (325 loc) • 10.4 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as volcengine from "@volcengine/pulumi";
*
* const fooVpc = new volcengine.vpc.Vpc("fooVpc", {
* vpcName: "acc-test-vpc",
* cidrBlock: "172.16.0.0/16",
* });
* const fooSubnet = new volcengine.vpc.Subnet("fooSubnet", {
* subnetName: "acc-test-subnet",
* cidrBlock: "172.16.0.0/24",
* zoneId: "cn-beijing-a",
* vpcId: fooVpc.id,
* });
* const fooGateway = new volcengine.vpn.Gateway("fooGateway", {
* vpcId: fooVpc.id,
* subnetId: fooSubnet.id,
* bandwidth: 50,
* vpnGatewayName: "acc-test1",
* description: "acc-test1",
* period: 7,
* projectName: "default",
* });
* ```
*
* ## Import
*
* VpnGateway can be imported using the id, e.g.
*
* ```sh
* $ pulumi import volcengine:vpn/gateway:Gateway default vgw-273zkshb2qayo7fap8t2****
* ```
*/
export declare class Gateway extends pulumi.CustomResource {
/**
* Get an existing Gateway resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: GatewayState, opts?: pulumi.CustomResourceOptions): Gateway;
/**
* Returns true if the given object is an instance of Gateway. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is Gateway;
/**
* The account ID of the VPN gateway.
*/
readonly accountId: pulumi.Output<string>;
/**
* The bandwidth of the VPN gateway. Unit: Mbps. Values: 5, 10, 20, 50, 100, 200, 500.
*/
readonly bandwidth: pulumi.Output<number>;
/**
* The BillingType of the VPN gateway. Valid values: `PrePaid`, `PostPaid`.
*/
readonly billingType: pulumi.Output<string | undefined>;
/**
* The business status of the VPN gateway.
*/
readonly businessStatus: pulumi.Output<string>;
/**
* The connection count of the VPN gateway.
*/
readonly connectionCount: pulumi.Output<number>;
/**
* The create time of VPN gateway.
*/
readonly creationTime: pulumi.Output<string>;
/**
* The deleted time of the VPN gateway.
*/
readonly deletedTime: pulumi.Output<string>;
/**
* The description of the VPN gateway.
*/
readonly description: pulumi.Output<string>;
/**
* The expired time of the VPN gateway.
*/
readonly expiredTime: pulumi.Output<string>;
/**
* The IP address of the VPN gateway.
*/
readonly ipAddress: pulumi.Output<string>;
/**
* Whether ipsec is enabled. Default is true.
*/
readonly ipsecEnabled: pulumi.Output<boolean | undefined>;
/**
* The lock reason of the VPN gateway.
*/
readonly lockReason: pulumi.Output<string>;
/**
* The Period of the VPN gateway. Default value is 12. This parameter is only useful when creating vpn gateway. Default period unit is Month.
* Value range: 1~9, 12, 24, 36. When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields.
*/
readonly period: pulumi.Output<number | undefined>;
/**
* The project name of the VPN gateway.
*/
readonly projectName: pulumi.Output<string>;
/**
* The renew type of the VPN gateway.
*/
readonly renewType: pulumi.Output<string>;
/**
* The route count of the VPN gateway.
*/
readonly routeCount: pulumi.Output<number>;
/**
* Whether ssl is enabled. Default is false.
*/
readonly sslEnabled: pulumi.Output<boolean | undefined>;
/**
* The max connections of ssl. This parameter can only be passed in when sslEnabled is true. Default is 5.
*/
readonly sslMaxConnections: pulumi.Output<number>;
/**
* The status of the VPN gateway.
*/
readonly status: pulumi.Output<string>;
/**
* The ID of the subnet where you want to create the VPN gateway.
*/
readonly subnetId: pulumi.Output<string>;
/**
* Tags.
*/
readonly tags: pulumi.Output<outputs.vpn.GatewayTag[] | undefined>;
/**
* The update time of VPN gateway.
*/
readonly updateTime: pulumi.Output<string>;
/**
* The ID of the VPC where you want to create the VPN gateway.
*/
readonly vpcId: pulumi.Output<string>;
/**
* The ID of the VPN gateway.
*/
readonly vpnGatewayId: pulumi.Output<string>;
/**
* The name of the VPN gateway.
*/
readonly vpnGatewayName: pulumi.Output<string>;
/**
* Create a Gateway resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: GatewayArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Gateway resources.
*/
export interface GatewayState {
/**
* The account ID of the VPN gateway.
*/
accountId?: pulumi.Input<string>;
/**
* The bandwidth of the VPN gateway. Unit: Mbps. Values: 5, 10, 20, 50, 100, 200, 500.
*/
bandwidth?: pulumi.Input<number>;
/**
* The BillingType of the VPN gateway. Valid values: `PrePaid`, `PostPaid`.
*/
billingType?: pulumi.Input<string>;
/**
* The business status of the VPN gateway.
*/
businessStatus?: pulumi.Input<string>;
/**
* The connection count of the VPN gateway.
*/
connectionCount?: pulumi.Input<number>;
/**
* The create time of VPN gateway.
*/
creationTime?: pulumi.Input<string>;
/**
* The deleted time of the VPN gateway.
*/
deletedTime?: pulumi.Input<string>;
/**
* The description of the VPN gateway.
*/
description?: pulumi.Input<string>;
/**
* The expired time of the VPN gateway.
*/
expiredTime?: pulumi.Input<string>;
/**
* The IP address of the VPN gateway.
*/
ipAddress?: pulumi.Input<string>;
/**
* Whether ipsec is enabled. Default is true.
*/
ipsecEnabled?: pulumi.Input<boolean>;
/**
* The lock reason of the VPN gateway.
*/
lockReason?: pulumi.Input<string>;
/**
* The Period of the VPN gateway. Default value is 12. This parameter is only useful when creating vpn gateway. Default period unit is Month.
* Value range: 1~9, 12, 24, 36. When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields.
*/
period?: pulumi.Input<number>;
/**
* The project name of the VPN gateway.
*/
projectName?: pulumi.Input<string>;
/**
* The renew type of the VPN gateway.
*/
renewType?: pulumi.Input<string>;
/**
* The route count of the VPN gateway.
*/
routeCount?: pulumi.Input<number>;
/**
* Whether ssl is enabled. Default is false.
*/
sslEnabled?: pulumi.Input<boolean>;
/**
* The max connections of ssl. This parameter can only be passed in when sslEnabled is true. Default is 5.
*/
sslMaxConnections?: pulumi.Input<number>;
/**
* The status of the VPN gateway.
*/
status?: pulumi.Input<string>;
/**
* The ID of the subnet where you want to create the VPN gateway.
*/
subnetId?: pulumi.Input<string>;
/**
* Tags.
*/
tags?: pulumi.Input<pulumi.Input<inputs.vpn.GatewayTag>[]>;
/**
* The update time of VPN gateway.
*/
updateTime?: pulumi.Input<string>;
/**
* The ID of the VPC where you want to create the VPN gateway.
*/
vpcId?: pulumi.Input<string>;
/**
* The ID of the VPN gateway.
*/
vpnGatewayId?: pulumi.Input<string>;
/**
* The name of the VPN gateway.
*/
vpnGatewayName?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a Gateway resource.
*/
export interface GatewayArgs {
/**
* The bandwidth of the VPN gateway. Unit: Mbps. Values: 5, 10, 20, 50, 100, 200, 500.
*/
bandwidth: pulumi.Input<number>;
/**
* The BillingType of the VPN gateway. Valid values: `PrePaid`, `PostPaid`.
*/
billingType?: pulumi.Input<string>;
/**
* The description of the VPN gateway.
*/
description?: pulumi.Input<string>;
/**
* Whether ipsec is enabled. Default is true.
*/
ipsecEnabled?: pulumi.Input<boolean>;
/**
* The Period of the VPN gateway. Default value is 12. This parameter is only useful when creating vpn gateway. Default period unit is Month.
* Value range: 1~9, 12, 24, 36. When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields.
*/
period?: pulumi.Input<number>;
/**
* The project name of the VPN gateway.
*/
projectName?: pulumi.Input<string>;
/**
* Whether ssl is enabled. Default is false.
*/
sslEnabled?: pulumi.Input<boolean>;
/**
* The max connections of ssl. This parameter can only be passed in when sslEnabled is true. Default is 5.
*/
sslMaxConnections?: pulumi.Input<number>;
/**
* The ID of the subnet where you want to create the VPN gateway.
*/
subnetId: pulumi.Input<string>;
/**
* Tags.
*/
tags?: pulumi.Input<pulumi.Input<inputs.vpn.GatewayTag>[]>;
/**
* The ID of the VPC where you want to create the VPN gateway.
*/
vpcId: pulumi.Input<string>;
/**
* The name of the VPN gateway.
*/
vpnGatewayName?: pulumi.Input<string>;
}