@equinix-labs/pulumi-equinix
Version:
A Pulumi package for creating and managing equinix cloud resources.
161 lines (160 loc) • 7.07 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* Use this data source to retrieve a virtual circuit resource from [Equinix Fabric - software-defined interconnections](https://deploy.equinix.com/developers/docs/metal/interconnections/introduction/)
*
* See the [Virtual Routing and Forwarding documentation](https://deploy.equinix.com/developers/docs/metal/layer2-networking/vrf/) for product details and API reference material.
*/
export declare function getVirtualCircuit(args: GetVirtualCircuitArgs, opts?: pulumi.InvokeOptions): Promise<GetVirtualCircuitResult>;
/**
* A collection of arguments for invoking getVirtualCircuit.
*/
export interface GetVirtualCircuitArgs {
/**
* The Customer IPv6 address which the CSR switch will peer with. Will default to the other usable IP in the IPv6 subnet.
*/
customerIpv6?: string;
/**
* The Metal IPv6 address for the SVI (Switch Virtual Interface) of the VirtualCircuit. Will default to the first usable IP in the IPv6 subnet.
*/
metalIpv6?: string;
/**
* A subnet from one of the IPv6 blocks associated with the VRF that we will help create an IP reservation for. Can only be either a /126 or /127.
* * For a /127 block, it will only have two IP addresses, which will be used for the metal*ip and customer*ip.
* * For a /126 block, it will have four IP addresses, but the first and last IP addresses are not usable. We will default to the first usable IP address for the metal_ip.
*/
subnetIpv6?: string;
/**
* ID of the virtual circuit to lookup
*/
virtualCircuitId: string;
}
/**
* A collection of values returned by getVirtualCircuit.
*/
export interface GetVirtualCircuitResult {
/**
* UUID of Connection where the VC is scoped to
*/
readonly connectionId: string;
/**
* The Customer IP address which the CSR switch will peer with. Will default to the other usable IP in the subnet.
*/
readonly customerIp: string;
/**
* The Customer IPv6 address which the CSR switch will peer with. Will default to the other usable IP in the IPv6 subnet.
*/
readonly customerIpv6?: string;
/**
* Description of the virtual circuit
*/
readonly description: string;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
/**
* The password that can be set for the VRF BGP peer
*/
readonly md5: string;
/**
* The Metal IP address for the SVI (Switch Virtual Interface) of the VirtualCircuit. Will default to the first usable IP in the subnet.
*/
readonly metalIp: string;
/**
* The Metal IPv6 address for the SVI (Switch Virtual Interface) of the VirtualCircuit. Will default to the first usable IP in the IPv6 subnet.
*/
readonly metalIpv6?: string;
/**
* Name of the virtual circuit
*/
readonly name: string;
/**
* Nni VLAN parameter, see https://deploy.equinix.com/developers/docs/metal/interconnections/introduction/
*/
readonly nniVlan: number;
/**
* Nni VLAN ID parameter, see https://deploy.equinix.com/developers/docs/metal/interconnections/introduction/
*/
readonly nniVnid: number;
/**
* The BGP ASN of the peer. The same ASN may be the used across several VCs, but it cannot be the same as the localAsn of the VRF.
*/
readonly peerAsn: number;
/**
* UUID of the Connection Port where the VC is scoped to
*/
readonly portId: string;
/**
* ID of the projct to which the virtual circuit belongs
*/
readonly projectId: string;
/**
* Description of the Virtual Circuit speed. This is for information purposes and is computed when the connection type is shared.
*/
readonly speed: string;
/**
* Status of the virtual circuit
*/
readonly status: string;
/**
* A subnet from one of the IP blocks associated with the VRF that we will help create an IP reservation for. Can only be either a /30 or /31.
* * For a /31 block, it will only have two IP addresses, which will be used for the metal*ip and customer*ip.
* * For a /30 block, it will have four IP addresses, but the first and last IP addresses are not usable. We will default to the first usable IP address for the metal_ip.
*/
readonly subnet: string;
/**
* A subnet from one of the IPv6 blocks associated with the VRF that we will help create an IP reservation for. Can only be either a /126 or /127.
* * For a /127 block, it will only have two IP addresses, which will be used for the metal*ip and customer*ip.
* * For a /126 block, it will have four IP addresses, but the first and last IP addresses are not usable. We will default to the first usable IP address for the metal_ip.
*/
readonly subnetIpv6?: string;
/**
* Tags attached to the virtual circuit
*/
readonly tags: string[];
/**
* ID of the virtual circuit to lookup
*/
readonly virtualCircuitId: string;
/**
* UUID of the associated VLAN
*/
readonly vlanId: string;
/**
* VNID VLAN parameter, see https://deploy.equinix.com/developers/docs/metal/interconnections/introduction/
*/
readonly vnid: number;
/**
* UUID of the associated VRF
*/
readonly vrfId: string;
}
/**
* Use this data source to retrieve a virtual circuit resource from [Equinix Fabric - software-defined interconnections](https://deploy.equinix.com/developers/docs/metal/interconnections/introduction/)
*
* See the [Virtual Routing and Forwarding documentation](https://deploy.equinix.com/developers/docs/metal/layer2-networking/vrf/) for product details and API reference material.
*/
export declare function getVirtualCircuitOutput(args: GetVirtualCircuitOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetVirtualCircuitResult>;
/**
* A collection of arguments for invoking getVirtualCircuit.
*/
export interface GetVirtualCircuitOutputArgs {
/**
* The Customer IPv6 address which the CSR switch will peer with. Will default to the other usable IP in the IPv6 subnet.
*/
customerIpv6?: pulumi.Input<string>;
/**
* The Metal IPv6 address for the SVI (Switch Virtual Interface) of the VirtualCircuit. Will default to the first usable IP in the IPv6 subnet.
*/
metalIpv6?: pulumi.Input<string>;
/**
* A subnet from one of the IPv6 blocks associated with the VRF that we will help create an IP reservation for. Can only be either a /126 or /127.
* * For a /127 block, it will only have two IP addresses, which will be used for the metal*ip and customer*ip.
* * For a /126 block, it will have four IP addresses, but the first and last IP addresses are not usable. We will default to the first usable IP address for the metal_ip.
*/
subnetIpv6?: pulumi.Input<string>;
/**
* ID of the virtual circuit to lookup
*/
virtualCircuitId: pulumi.Input<string>;
}