@cuemby/equinix
Version:
A Pulumi package for creating and managing equinix cloud resources.
179 lines (178 loc) • 5.74 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import { output as outputs } from "./types";
/**
* Use this data source to get Equinix Network Edge device details.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as equinix from "@pulumi/equinix";
*
* // Retrieve data for an existing Equinix Network Edge device with UUID "f0b5c553-cdeb-4bc3-95b8-23db9ccfd5ee"
* const byUuid = pulumi.output(equinix.GetNetworkDevice({
* uuid: "f0b5c553-cdeb-4bc3-95b8-23db9ccfd5ee",
* }));
* // Retrieve data for an existing Equinix Network Edge device named "Arcus-Gateway-A1"
* const byName = pulumi.output(equinix.GetNetworkDevice({
* name: "Arcus-Gateway-A1",
* }));
* ```
*/
export declare function getNetworkDevice(args?: GetNetworkDeviceArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkDeviceResult>;
/**
* A collection of arguments for invoking GetNetworkDevice.
*/
export interface GetNetworkDeviceArgs {
/**
* Name of an existing Equinix Network Edge device
*/
name?: string;
/**
* UUID of an existing Equinix Network Edge device
*/
uuid?: string;
/**
* Device states to be considered valid when searching for a device by name
*/
validStatusList?: string;
}
/**
* A collection of values returned by GetNetworkDevice.
*/
export interface GetNetworkDeviceResult {
readonly accountNumber: string;
/**
* Unique identifier of applied ACL template
*/
readonly aclTemplateId: string;
readonly additionalBandwidth: number;
/**
* Autonomous system number
*/
readonly asn: number;
readonly byol: boolean;
readonly clusterDetails: outputs.GetNetworkDeviceClusterDetail[];
readonly coreCount: number;
readonly hostname: string;
/**
* Device location Equinix Business Exchange name
*/
readonly ibx: string;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly interfaceCount: number;
/**
* List of device interfaces
* * `interface.#.id` - interface identifier
* * `interface.#.name` - interface name
* * `interface.#.status` - interface status (AVAILABLE, RESERVED, ASSIGNED)
* * `interface.#.operational_status` - interface operational status (up or down)
* * `interface.#.mac_address` - interface MAC address
* * `interface.#.ip_address` - interface IP address
* * `interface.#.assigned_type` - interface management type (Equinix Managed or empty)
* * `interface.#.type` - interface type
*/
readonly interfaces: outputs.GetNetworkDeviceInterface[];
readonly licenseFile: string;
/**
* Unique identifier of applied license file
*/
readonly licenseFileId: string;
/**
* Device license registration status
* * APPLYING_LICENSE
* * REGISTERED
* * APPLIED
* * WAITING_FOR_CLUSTER_SETUP
* * REGISTRATION_FAILED
*/
readonly licenseStatus: string;
readonly licenseToken: string;
readonly metroCode: string;
readonly mgmtAclTemplateUuid: string;
readonly name: string;
readonly notifications: string[];
readonly orderReference: string;
readonly packageCode: string;
readonly purchaseOrderNumber: string;
/**
* Device redundancy type applicable for HA devices, either
* primary or secondary
*/
readonly redundancyType: string;
/**
* Unique identifier for a redundant device applicable for HA devices
*/
readonly redundantId: string;
/**
* Device location region
*/
readonly region: string;
readonly secondaryDevices: outputs.GetNetworkDeviceSecondaryDevice[];
readonly selfManaged: boolean;
/**
* IP address of SSH enabled interface on the device
*/
readonly sshIpAddress: string;
/**
* FQDN of SSH enabled interface on the device
*/
readonly sshIpFqdn: string;
readonly sshKeys: outputs.GetNetworkDeviceSshKey[];
/**
* Device provisioning status
* * INITIALIZING
* * PROVISIONING
* * PROVISIONED (**NOTE: By default data source will only return devices in this state. To include other states see `validStateList`**)
* * WAITING_FOR_PRIMARY
* * WAITING_FOR_SECONDARY
* * WAITING_FOR_REPLICA_CLUSTER_NODES
* * CLUSTER_SETUP_IN_PROGRESS
* * FAILED
* * DEPROVISIONING
* * DEPROVISIONED
*/
readonly status: string;
readonly termLength: number;
readonly throughput: number;
readonly throughputUnit: string;
readonly typeCode: string;
/**
* Device unique identifier
*/
readonly uuid: string;
/**
* Comma separated list of device states (from see `status` for full list) to be considered valid. Default is 'PROVISIONED'. Case insensitive.
*/
readonly validStatusList?: string;
readonly vendorConfiguration: {
[key: string]: string;
};
readonly version: string;
readonly wanInterfaceId: string;
/**
* Device location zone code
*/
readonly zoneCode: string;
}
export declare function getNetworkDeviceOutput(args?: GetNetworkDeviceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetNetworkDeviceResult>;
/**
* A collection of arguments for invoking GetNetworkDevice.
*/
export interface GetNetworkDeviceOutputArgs {
/**
* Name of an existing Equinix Network Edge device
*/
name?: pulumi.Input<string>;
/**
* UUID of an existing Equinix Network Edge device
*/
uuid?: pulumi.Input<string>;
/**
* Device states to be considered valid when searching for a device by name
*/
validStatusList?: pulumi.Input<string>;
}