UNPKG

@pulumi/openstack

Version:

A Pulumi package for creating and managing OpenStack cloud resources.

175 lines (174 loc) 6.61 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Manages a V2 BGP VPN port association resource within OpenStack. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * * const association1 = new openstack.bgpvpn.PortAssociateV2("association_1", { * bgpvpnId: "19382ec5-8098-47d9-a9c6-6270c91103f4", * portId: "b83a95b8-c2c8-4eac-9a9e-ddc85bd1266f", * routes: [ * { * type: "prefix", * prefix: "192.168.170.1/32", * }, * { * type: "bgpvpn", * bgpvpnId: "35af1cc6-3d0f-4c5d-86f8-8cdb508d3f0c", * }, * ], * }); * ``` * * ## Import * * BGP VPN port associations can be imported using the BGP VPN ID and BGP VPN port * * association ID separated by a slash, e.g.: * * hcl * * ```sh * $ pulumi import openstack:bgpvpn/portAssociateV2:PortAssociateV2 association_1 5bb44ecf-f8fe-4d75-8fc5-313f96ee2696/8f8fc660-3f28-414e-896a-0c7c51162fcf * ``` */ export declare class PortAssociateV2 extends pulumi.CustomResource { /** * Get an existing PortAssociateV2 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?: PortAssociateV2State, opts?: pulumi.CustomResourceOptions): PortAssociateV2; /** * Returns true if the given object is an instance of PortAssociateV2. 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 PortAssociateV2; /** * A boolean flag indicating whether fixed * IPs should be advertised. Defaults to true. */ readonly advertiseFixedIps: pulumi.Output<boolean>; /** * The ID of the BGP VPN to which the port will be * associated. Changing this creates a new BGP VPN port association. */ readonly bgpvpnId: pulumi.Output<string>; /** * The ID of the port to be associated with the BGP VPN. * Changing this creates a new BGP VPN port association. */ readonly portId: pulumi.Output<string>; /** * The ID of the project that owns the port * association. Only administrative and users with `advsvc` role can specify a * project ID other than their own. Changing this creates a new BGP VPN port * association. */ readonly projectId: pulumi.Output<string>; /** * The region in which to obtain the V2 Networking client. * A Networking client is needed to create a BGP VPN port association. If * omitted, the `region` argument of the provider is used. Changing this creates * a new BGP VPN port association. */ readonly region: pulumi.Output<string>; /** * A list of dictionaries containing the following keys: */ readonly routes: pulumi.Output<outputs.bgpvpn.PortAssociateV2Route[] | undefined>; /** * Create a PortAssociateV2 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: PortAssociateV2Args, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering PortAssociateV2 resources. */ export interface PortAssociateV2State { /** * A boolean flag indicating whether fixed * IPs should be advertised. Defaults to true. */ advertiseFixedIps?: pulumi.Input<boolean>; /** * The ID of the BGP VPN to which the port will be * associated. Changing this creates a new BGP VPN port association. */ bgpvpnId?: pulumi.Input<string>; /** * The ID of the port to be associated with the BGP VPN. * Changing this creates a new BGP VPN port association. */ portId?: pulumi.Input<string>; /** * The ID of the project that owns the port * association. Only administrative and users with `advsvc` role can specify a * project ID other than their own. Changing this creates a new BGP VPN port * association. */ projectId?: pulumi.Input<string>; /** * The region in which to obtain the V2 Networking client. * A Networking client is needed to create a BGP VPN port association. If * omitted, the `region` argument of the provider is used. Changing this creates * a new BGP VPN port association. */ region?: pulumi.Input<string>; /** * A list of dictionaries containing the following keys: */ routes?: pulumi.Input<pulumi.Input<inputs.bgpvpn.PortAssociateV2Route>[]>; } /** * The set of arguments for constructing a PortAssociateV2 resource. */ export interface PortAssociateV2Args { /** * A boolean flag indicating whether fixed * IPs should be advertised. Defaults to true. */ advertiseFixedIps?: pulumi.Input<boolean>; /** * The ID of the BGP VPN to which the port will be * associated. Changing this creates a new BGP VPN port association. */ bgpvpnId: pulumi.Input<string>; /** * The ID of the port to be associated with the BGP VPN. * Changing this creates a new BGP VPN port association. */ portId: pulumi.Input<string>; /** * The ID of the project that owns the port * association. Only administrative and users with `advsvc` role can specify a * project ID other than their own. Changing this creates a new BGP VPN port * association. */ projectId?: pulumi.Input<string>; /** * The region in which to obtain the V2 Networking client. * A Networking client is needed to create a BGP VPN port association. If * omitted, the `region` argument of the provider is used. Changing this creates * a new BGP VPN port association. */ region?: pulumi.Input<string>; /** * A list of dictionaries containing the following keys: */ routes?: pulumi.Input<pulumi.Input<inputs.bgpvpn.PortAssociateV2Route>[]>; }