Ready to level-up your engineering skills? Join a Pulumi Workshop. Register Now

getDeviceBgpNeighbors

Use this datasource to retrieve list of BGP neighbors of a device in the Equinix Metal host.

To have any BGP neighbors listed, the device must be in BGP-enabled project and have a BGP session assigned.

To learn more about using BGP in Equinix Metal, see the equinix-metal.BgpSession resource documentation.

Example Usage

using Pulumi;
using EquinixMetal = Pulumi.EquinixMetal;

class MyStack : Stack
{
    public MyStack()
    {
        var test = Output.Create(EquinixMetal.GetDeviceBgpNeighbors.InvokeAsync(new EquinixMetal.GetDeviceBgpNeighborsArgs
        {
            DeviceId = "4c641195-25e5-4c3c-b2b7-4cd7a42c7b40",
        }));
        this.BgpNeighborsListing = test.Apply(test => test.BgpNeighbors);
    }

    [Output("bgpNeighborsListing")]
    public Output<string> BgpNeighborsListing { get; set; }
}
package main

import (
    "github.com/pulumi/pulumi-equinix-metal/sdk/go/equinix-metal"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        test, err := equinix - metal.GetDeviceBgpNeighbors(ctx, &equinix-metal.GetDeviceBgpNeighborsArgs{
            DeviceId: "4c641195-25e5-4c3c-b2b7-4cd7a42c7b40",
        }, nil)
        if err != nil {
            return err
        }
        ctx.Export("bgpNeighborsListing", test.BgpNeighbors)
        return nil
    })
}
import pulumi
import pulumi_equinix_metal as equinix_metal

test = equinix_metal.get_device_bgp_neighbors(device_id="4c641195-25e5-4c3c-b2b7-4cd7a42c7b40")
pulumi.export("bgpNeighborsListing", test.bgp_neighbors)
import * as pulumi from "@pulumi/pulumi";
import * as equinix_metal from "@pulumi/equinix-metal";

const test = equinix_metal.getDeviceBgpNeighbors({
    deviceId: "4c641195-25e5-4c3c-b2b7-4cd7a42c7b40",
});
export const bgpNeighborsListing = test.then(test => test.bgpNeighbors);

Using getDeviceBgpNeighbors

function getDeviceBgpNeighbors(args: GetDeviceBgpNeighborsArgs, opts?: InvokeOptions): Promise<GetDeviceBgpNeighborsResult>
def get_device_bgp_neighbors(device_id: Optional[str] = None, opts: Optional[InvokeOptions] = None) -> GetDeviceBgpNeighborsResult
func GetDeviceBgpNeighbors(ctx *Context, args *GetDeviceBgpNeighborsArgs, opts ...InvokeOption) (*GetDeviceBgpNeighborsResult, error)

Note: This function is named GetDeviceBgpNeighbors in the Go SDK.

public static class GetDeviceBgpNeighbors {
    public static Task<GetDeviceBgpNeighborsResult> InvokeAsync(GetDeviceBgpNeighborsArgs args, InvokeOptions? opts = null)
}

The following arguments are supported:

DeviceId string

UUID of BGP-enabled device whose neighbors to list

DeviceId string

UUID of BGP-enabled device whose neighbors to list

deviceId string

UUID of BGP-enabled device whose neighbors to list

device_id str

UUID of BGP-enabled device whose neighbors to list

getDeviceBgpNeighbors Result

The following output properties are available:

BgpNeighbors List<Pulumi.EquinixMetal.Outputs.GetDeviceBgpNeighborsBgpNeighbor>

array of BGP neighbor records with attributes:

DeviceId string
Id string

The provider-assigned unique ID for this managed resource.

BgpNeighbors []GetDeviceBgpNeighborsBgpNeighbor

array of BGP neighbor records with attributes:

DeviceId string
Id string

The provider-assigned unique ID for this managed resource.

bgpNeighbors GetDeviceBgpNeighborsBgpNeighbor[]

array of BGP neighbor records with attributes:

deviceId string
id string

The provider-assigned unique ID for this managed resource.

bgp_neighbors Sequence[GetDeviceBgpNeighborsBgpNeighbor]

array of BGP neighbor records with attributes:

device_id str
id str

The provider-assigned unique ID for this managed resource.

Supporting Types

GetDeviceBgpNeighborsBgpNeighbor

AddressFamily int

IP address version, 4 or 6

CustomerAs int

Local autonomous system number

CustomerIp string

Local used peer IP address

Md5Enabled bool

Whether BGP session is password enabled

Md5Password string

BGP session password in plaintext (not a checksum)

Multihop bool

Whether the neighbor is in EBGP multihop session

PeerAs int

Peer AS number (different than customer_as for EBGP)

RoutesIns List<Pulumi.EquinixMetal.Inputs.GetDeviceBgpNeighborsBgpNeighborRoutesInArgs>

Array of incoming routes. Each route has attributes:

RoutesOuts List<Pulumi.EquinixMetal.Inputs.GetDeviceBgpNeighborsBgpNeighborRoutesOutArgs>

Array of outgoing routes in the same format

PeerIps List<string>

Array of IP addresses of this neighbor’s peers

AddressFamily int

IP address version, 4 or 6

CustomerAs int

Local autonomous system number

CustomerIp string

Local used peer IP address

Md5Enabled bool

Whether BGP session is password enabled

Md5Password string

BGP session password in plaintext (not a checksum)

Multihop bool

Whether the neighbor is in EBGP multihop session

PeerAs int

Peer AS number (different than customer_as for EBGP)

RoutesIns []GetDeviceBgpNeighborsBgpNeighborRoutesIn

Array of incoming routes. Each route has attributes:

RoutesOuts []GetDeviceBgpNeighborsBgpNeighborRoutesOut

Array of outgoing routes in the same format

PeerIps []string

Array of IP addresses of this neighbor’s peers

addressFamily number

IP address version, 4 or 6

customerAs number

Local autonomous system number

customerIp string

Local used peer IP address

md5Enabled boolean

Whether BGP session is password enabled

md5Password string

BGP session password in plaintext (not a checksum)

multihop boolean

Whether the neighbor is in EBGP multihop session

peerAs number

Peer AS number (different than customer_as for EBGP)

routesIns GetDeviceBgpNeighborsBgpNeighborRoutesIn[]

Array of incoming routes. Each route has attributes:

routesOuts GetDeviceBgpNeighborsBgpNeighborRoutesOut[]

Array of outgoing routes in the same format

peerIps string[]

Array of IP addresses of this neighbor’s peers

address_family int

IP address version, 4 or 6

customer_as int

Local autonomous system number

customer_ip str

Local used peer IP address

md5_enabled bool

Whether BGP session is password enabled

md5_password str

BGP session password in plaintext (not a checksum)

multihop bool

Whether the neighbor is in EBGP multihop session

peer_as int

Peer AS number (different than customer_as for EBGP)

routes_ins Sequence[GetDeviceBgpNeighborsBgpNeighborRoutesInArgs]

Array of incoming routes. Each route has attributes:

routes_outs Sequence[GetDeviceBgpNeighborsBgpNeighborRoutesOutArgs]

Array of outgoing routes in the same format

peer_ips Sequence[str]

Array of IP addresses of this neighbor’s peers

GetDeviceBgpNeighborsBgpNeighborRoutesIn

Exact bool

(bool) Whether the route is exact

Route string

CIDR expression of route (IP/mask)

Exact bool

(bool) Whether the route is exact

Route string

CIDR expression of route (IP/mask)

exact boolean

(bool) Whether the route is exact

route string

CIDR expression of route (IP/mask)

exact bool

(bool) Whether the route is exact

route str

CIDR expression of route (IP/mask)

GetDeviceBgpNeighborsBgpNeighborRoutesOut

Exact bool

(bool) Whether the route is exact

Route string

CIDR expression of route (IP/mask)

Exact bool

(bool) Whether the route is exact

Route string

CIDR expression of route (IP/mask)

exact boolean

(bool) Whether the route is exact

route string

CIDR expression of route (IP/mask)

exact bool

(bool) Whether the route is exact

route str

CIDR expression of route (IP/mask)

Package Details

Repository
https://github.com/pulumi/pulumi-equinix-metal
License
Apache-2.0
Notes
This Pulumi package is based on the metal Terraform Provider.