UNPKG

@equinix-labs/pulumi-equinix

Version:

A Pulumi package for creating and managing equinix cloud resources.

176 lines (175 loc) 8.32 kB
import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Fabric V4 API compatible data resource that allow user to fetch connection for a given UUID * * Additional documentation: * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-connections-implement.htm * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#connections * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as equinix from "@equinix-labs/pulumi-equinix"; * * const connectionDataName = equinix.fabric.getConnection({ * uuid: "<uuid_of_connection>", * }); * export const id = connectionDataName.then(connectionDataName => connectionDataName.id); * export const name = connectionDataName.then(connectionDataName => connectionDataName.bandwidth); * export const accountNumber = connectionDataName.then(connectionDataName => connectionDataName.account?.accountNumber); * export const bandwidth = connectionDataName.then(connectionDataName => connectionDataName.bandwidth); * export const projectId = connectionDataName.then(connectionDataName => connectionDataName.project?.projectId); * export const redundancyGroup = connectionDataName.then(connectionDataName => connectionDataName.redundancy?.group); * export const redundancyPriority = connectionDataName.then(connectionDataName => connectionDataName.redundancy?.priority); * export const state = connectionDataName.then(connectionDataName => connectionDataName.state); * export const type = connectionDataName.then(connectionDataName => connectionDataName.type); * export const accessPointType = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.type); * export const accessPointLinkProtocolType = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.linkProtocol?.type); * export const accessPointLinkProtocolVlanTag = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.linkProtocol?.vlanTag); * export const accessPointLinkProtocolVlanCTag = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.linkProtocol?.vlanCTag); * export const accessPointLinkProtocolVlanSTag = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.linkProtocol?.vlanSTag); * export const accessPointProviderConnectionId = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.providerConnectionId); * ``` */ export declare function getConnection(args: GetConnectionArgs, opts?: pulumi.InvokeOptions): Promise<GetConnectionResult>; /** * A collection of arguments for invoking getConnection. */ export interface GetConnectionArgs { /** * Equinix-assigned connection identifier */ uuid: string; } /** * A collection of values returned by getConnection. */ export interface GetConnectionResult { /** * Requester or Customer side connection configuration object of the multi-segment connection */ readonly aSide: outputs.fabric.GetConnectionASide; /** * Customer account information that is associated with this connection */ readonly account: outputs.fabric.GetConnectionAccount; /** * Connection additional information */ readonly additionalInfo: { [key: string]: string; }[]; /** * Connection bandwidth in Mbps */ readonly bandwidth: number; /** * Captures connection lifecycle change information */ readonly changeLog: outputs.fabric.GetConnectionChangeLog; /** * Customer-provided connection description */ readonly description: string; /** * Connection directionality from the requester point of view */ readonly direction: string; /** * Connection URI information */ readonly href: string; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * Connection property derived from access point locations */ readonly isRemote: boolean; /** * Connection name. An alpha-numeric 24 characters string which can include only hyphens and underscores */ readonly name: string; /** * Preferences for notifications on connection configuration or status changes */ readonly notifications: outputs.fabric.GetConnectionNotification[]; /** * Connection type-specific operational data */ readonly operation: outputs.fabric.GetConnectionOperation; /** * Order details */ readonly order: outputs.fabric.GetConnectionOrder; /** * Project information */ readonly project: outputs.fabric.GetConnectionProject; /** * Connection Redundancy Configuration */ readonly redundancy: outputs.fabric.GetConnectionRedundancy; /** * Connection overall state */ readonly state: string; /** * Defines the connection type like EVPL*VC, EPL*VC, IPWAN*VC, IP*VC, ACCESS*EPL*VC, EVPLAN*VC, EPLAN*VC, EIA*VC, IA*VC, EC_VC */ readonly type: string; /** * Equinix-assigned connection identifier */ readonly uuid: string; /** * Destination or Provider side connection configuration object of the multi-segment connection */ readonly zSide: outputs.fabric.GetConnectionZSide; } /** * Fabric V4 API compatible data resource that allow user to fetch connection for a given UUID * * Additional documentation: * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-connections-implement.htm * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#connections * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as equinix from "@equinix-labs/pulumi-equinix"; * * const connectionDataName = equinix.fabric.getConnection({ * uuid: "<uuid_of_connection>", * }); * export const id = connectionDataName.then(connectionDataName => connectionDataName.id); * export const name = connectionDataName.then(connectionDataName => connectionDataName.bandwidth); * export const accountNumber = connectionDataName.then(connectionDataName => connectionDataName.account?.accountNumber); * export const bandwidth = connectionDataName.then(connectionDataName => connectionDataName.bandwidth); * export const projectId = connectionDataName.then(connectionDataName => connectionDataName.project?.projectId); * export const redundancyGroup = connectionDataName.then(connectionDataName => connectionDataName.redundancy?.group); * export const redundancyPriority = connectionDataName.then(connectionDataName => connectionDataName.redundancy?.priority); * export const state = connectionDataName.then(connectionDataName => connectionDataName.state); * export const type = connectionDataName.then(connectionDataName => connectionDataName.type); * export const accessPointType = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.type); * export const accessPointLinkProtocolType = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.linkProtocol?.type); * export const accessPointLinkProtocolVlanTag = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.linkProtocol?.vlanTag); * export const accessPointLinkProtocolVlanCTag = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.linkProtocol?.vlanCTag); * export const accessPointLinkProtocolVlanSTag = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.linkProtocol?.vlanSTag); * export const accessPointProviderConnectionId = connectionDataName.then(connectionDataName => connectionDataName.aSide?.accessPoint?.providerConnectionId); * ``` */ export declare function getConnectionOutput(args: GetConnectionOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetConnectionResult>; /** * A collection of arguments for invoking getConnection. */ export interface GetConnectionOutputArgs { /** * Equinix-assigned connection identifier */ uuid: pulumi.Input<string>; }