UNPKG

@pulumi/openstack

Version:

A Pulumi package for creating and managing OpenStack cloud resources.

259 lines (258 loc) 9.01 kB
import * as pulumi from "@pulumi/pulumi"; /** * Manages a V2 BGP VPN service resource within OpenStack. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * * const bgpvpn1 = new openstack.bgpvpn.V2("bgpvpn_1", { * name: "bgpvpn1", * routeDistinguishers: ["64512:1"], * routeTargets: ["64512:1"], * importTargets: ["64512:2"], * exportTargets: ["64512:3"], * }); * ``` * * ## Import * * BGP VPNs can be imported using the `id`, e.g. * * hcl * * ```sh * $ pulumi import openstack:index/bgpvpnV2:BgpvpnV2 bgpvpn_1 1eec2c66-6be2-4305-af3f-354c9b81f18c * ``` * * @deprecated openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2 */ export declare class BgpvpnV2 extends pulumi.CustomResource { /** * Get an existing BgpvpnV2 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?: BgpvpnV2State, opts?: pulumi.CustomResourceOptions): BgpvpnV2; /** * Returns true if the given object is an instance of BgpvpnV2. 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 BgpvpnV2; /** * A list of additional Route Targets that will be * used for export. */ readonly exportTargets: pulumi.Output<string[]>; /** * A list of additional Route Targets that will be * imported. */ readonly importTargets: pulumi.Output<string[]>; /** * The default BGP LOCAL\_PREF of routes that will be * advertised to the BGP VPN, unless overridden per-route. */ readonly localPref: pulumi.Output<number | undefined>; /** * The name of the BGP VPN. Changing this updates the name of * the existing BGP VPN. */ readonly name: pulumi.Output<string>; /** * A list of network IDs that are associated with the BGP VPN. */ readonly networks: pulumi.Output<string[]>; /** * A list of port IDs that are associated with the BGP VPN. */ readonly ports: pulumi.Output<string[]>; /** * The ID of the project that owns the BGPVPN. Only * administrative and users with `advsvc` role can specify a project ID other * than their own. Changing this creates a new BGP VPN. */ 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 service. If omitted, the * `region` argument of the provider is used. Changing this creates a new * BGP VPN. */ readonly region: pulumi.Output<string>; /** * A list of route distinguisher strings. If * specified, one of these RDs will be used to advertise VPN routes. */ readonly routeDistinguishers: pulumi.Output<string[]>; /** * A list of Route Targets that will be both * imported and used for export. */ readonly routeTargets: pulumi.Output<string[]>; /** * A list of router IDs that are associated with the BGP VPN. */ readonly routers: pulumi.Output<string[]>; /** * Indicates whether the BGP VPN is shared across projects. */ readonly shared: pulumi.Output<boolean>; /** * The type of the BGP VPN (either `l2` or `l3`). Changing this * creates a new BGP VPN. Defaults to `l3`. */ readonly type: pulumi.Output<string>; /** * The globally-assigned VXLAN VNI for the BGP VPN. Changing * this creates a new BGP VPN. */ readonly vni: pulumi.Output<number | undefined>; /** * Create a BgpvpnV2 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. */ /** @deprecated openstack.index/bgpvpnv2.BgpvpnV2 has been deprecated in favor of openstack.bgpvpn/v2.V2 */ constructor(name: string, args?: BgpvpnV2Args, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering BgpvpnV2 resources. */ export interface BgpvpnV2State { /** * A list of additional Route Targets that will be * used for export. */ exportTargets?: pulumi.Input<pulumi.Input<string>[]>; /** * A list of additional Route Targets that will be * imported. */ importTargets?: pulumi.Input<pulumi.Input<string>[]>; /** * The default BGP LOCAL\_PREF of routes that will be * advertised to the BGP VPN, unless overridden per-route. */ localPref?: pulumi.Input<number>; /** * The name of the BGP VPN. Changing this updates the name of * the existing BGP VPN. */ name?: pulumi.Input<string>; /** * A list of network IDs that are associated with the BGP VPN. */ networks?: pulumi.Input<pulumi.Input<string>[]>; /** * A list of port IDs that are associated with the BGP VPN. */ ports?: pulumi.Input<pulumi.Input<string>[]>; /** * The ID of the project that owns the BGPVPN. Only * administrative and users with `advsvc` role can specify a project ID other * than their own. Changing this creates a new BGP VPN. */ projectId?: pulumi.Input<string>; /** * The region in which to obtain the V2 Networking client. * A Networking client is needed to create a BGP VPN service. If omitted, the * `region` argument of the provider is used. Changing this creates a new * BGP VPN. */ region?: pulumi.Input<string>; /** * A list of route distinguisher strings. If * specified, one of these RDs will be used to advertise VPN routes. */ routeDistinguishers?: pulumi.Input<pulumi.Input<string>[]>; /** * A list of Route Targets that will be both * imported and used for export. */ routeTargets?: pulumi.Input<pulumi.Input<string>[]>; /** * A list of router IDs that are associated with the BGP VPN. */ routers?: pulumi.Input<pulumi.Input<string>[]>; /** * Indicates whether the BGP VPN is shared across projects. */ shared?: pulumi.Input<boolean>; /** * The type of the BGP VPN (either `l2` or `l3`). Changing this * creates a new BGP VPN. Defaults to `l3`. */ type?: pulumi.Input<string>; /** * The globally-assigned VXLAN VNI for the BGP VPN. Changing * this creates a new BGP VPN. */ vni?: pulumi.Input<number>; } /** * The set of arguments for constructing a BgpvpnV2 resource. */ export interface BgpvpnV2Args { /** * A list of additional Route Targets that will be * used for export. */ exportTargets?: pulumi.Input<pulumi.Input<string>[]>; /** * A list of additional Route Targets that will be * imported. */ importTargets?: pulumi.Input<pulumi.Input<string>[]>; /** * The default BGP LOCAL\_PREF of routes that will be * advertised to the BGP VPN, unless overridden per-route. */ localPref?: pulumi.Input<number>; /** * The name of the BGP VPN. Changing this updates the name of * the existing BGP VPN. */ name?: pulumi.Input<string>; /** * The ID of the project that owns the BGPVPN. Only * administrative and users with `advsvc` role can specify a project ID other * than their own. Changing this creates a new BGP VPN. */ projectId?: pulumi.Input<string>; /** * The region in which to obtain the V2 Networking client. * A Networking client is needed to create a BGP VPN service. If omitted, the * `region` argument of the provider is used. Changing this creates a new * BGP VPN. */ region?: pulumi.Input<string>; /** * A list of route distinguisher strings. If * specified, one of these RDs will be used to advertise VPN routes. */ routeDistinguishers?: pulumi.Input<pulumi.Input<string>[]>; /** * A list of Route Targets that will be both * imported and used for export. */ routeTargets?: pulumi.Input<pulumi.Input<string>[]>; /** * The type of the BGP VPN (either `l2` or `l3`). Changing this * creates a new BGP VPN. Defaults to `l3`. */ type?: pulumi.Input<string>; /** * The globally-assigned VXLAN VNI for the BGP VPN. Changing * this creates a new BGP VPN. */ vni?: pulumi.Input<number>; }