Equinix v0.21.0 published on Friday, Feb 28, 2025 by Equinix
equinix.metal.getDeviceBgpNeighbors
Explore with Pulumi AI
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
import * as pulumi from "@pulumi/pulumi";
import * as equinix from "@pulumi/equinix";
const test = equinix.metal.getDeviceBgpNeighbors({
    deviceId: "4c641195-25e5-4c3c-b2b7-4cd7a42c7b40",
});
export const bgpNeighborsListing = test.then(test => test.bgpNeighbors);
import pulumi
import pulumi_equinix as equinix
test = equinix.metal.get_device_bgp_neighbors(device_id="4c641195-25e5-4c3c-b2b7-4cd7a42c7b40")
pulumi.export("bgpNeighborsListing", test.bgp_neighbors)
package main
import (
	"github.com/equinix/pulumi-equinix/sdk/go/equinix/metal"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := metal.GetDeviceBgpNeighbors(ctx, &metal.GetDeviceBgpNeighborsArgs{
			DeviceId: "4c641195-25e5-4c3c-b2b7-4cd7a42c7b40",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("bgpNeighborsListing", test.BgpNeighbors)
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Equinix = Pulumi.Equinix;
return await Deployment.RunAsync(() => 
{
    var test = Equinix.Metal.GetDeviceBgpNeighbors.Invoke(new()
    {
        DeviceId = "4c641195-25e5-4c3c-b2b7-4cd7a42c7b40",
    });
    return new Dictionary<string, object?>
    {
        ["bgpNeighborsListing"] = test.Apply(getDeviceBgpNeighborsResult => getDeviceBgpNeighborsResult.BgpNeighbors),
    };
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.equinix.metal.MetalFunctions;
import com.pulumi.equinix.metal.inputs.GetDeviceBgpNeighborsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var test = MetalFunctions.getDeviceBgpNeighbors(GetDeviceBgpNeighborsArgs.builder()
            .deviceId("4c641195-25e5-4c3c-b2b7-4cd7a42c7b40")
            .build());
        ctx.export("bgpNeighborsListing", test.applyValue(getDeviceBgpNeighborsResult -> getDeviceBgpNeighborsResult.bgpNeighbors()));
    }
}
variables:
  test:
    fn::invoke:
      Function: equinix:metal:getDeviceBgpNeighbors
      Arguments:
        deviceId: 4c641195-25e5-4c3c-b2b7-4cd7a42c7b40
outputs:
  bgpNeighborsListing: ${test.bgpNeighbors}
Using getDeviceBgpNeighbors
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getDeviceBgpNeighbors(args: GetDeviceBgpNeighborsArgs, opts?: InvokeOptions): Promise<GetDeviceBgpNeighborsResult>
function getDeviceBgpNeighborsOutput(args: GetDeviceBgpNeighborsOutputArgs, opts?: InvokeOptions): Output<GetDeviceBgpNeighborsResult>def get_device_bgp_neighbors(device_id: Optional[str] = None,
                             opts: Optional[InvokeOptions] = None) -> GetDeviceBgpNeighborsResult
def get_device_bgp_neighbors_output(device_id: Optional[pulumi.Input[str]] = None,
                             opts: Optional[InvokeOptions] = None) -> Output[GetDeviceBgpNeighborsResult]func GetDeviceBgpNeighbors(ctx *Context, args *GetDeviceBgpNeighborsArgs, opts ...InvokeOption) (*GetDeviceBgpNeighborsResult, error)
func GetDeviceBgpNeighborsOutput(ctx *Context, args *GetDeviceBgpNeighborsOutputArgs, opts ...InvokeOption) GetDeviceBgpNeighborsResultOutput> Note: This function is named GetDeviceBgpNeighbors in the Go SDK.
public static class GetDeviceBgpNeighbors 
{
    public static Task<GetDeviceBgpNeighborsResult> InvokeAsync(GetDeviceBgpNeighborsArgs args, InvokeOptions? opts = null)
    public static Output<GetDeviceBgpNeighborsResult> Invoke(GetDeviceBgpNeighborsInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetDeviceBgpNeighborsResult> getDeviceBgpNeighbors(GetDeviceBgpNeighborsArgs args, InvokeOptions options)
public static Output<GetDeviceBgpNeighborsResult> getDeviceBgpNeighbors(GetDeviceBgpNeighborsArgs args, InvokeOptions options)
fn::invoke:
  function: equinix:metal/getDeviceBgpNeighbors:getDeviceBgpNeighbors
  arguments:
    # arguments dictionaryThe 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.
- deviceId string
- UUID of BGP-enabled device whose neighbors to list.
- device_id str
- UUID of BGP-enabled device whose neighbors to list.
- deviceId String
- UUID of BGP-enabled device whose neighbors to list.
getDeviceBgpNeighbors Result
The following output properties are available:
- BgpNeighbors List<GetDevice Bgp Neighbors Bgp Neighbor> 
- array of BGP neighbor records with attributes:
- DeviceId string
- Id string
- The provider-assigned unique ID for this managed resource.
- BgpNeighbors []GetDevice Bgp Neighbors Bgp Neighbor 
- array of BGP neighbor records with attributes:
- DeviceId string
- Id string
- The provider-assigned unique ID for this managed resource.
- bgpNeighbors List<GetDevice Bgp Neighbors Bgp Neighbor> 
- array of BGP neighbor records with attributes:
- deviceId String
- id String
- The provider-assigned unique ID for this managed resource.
- bgpNeighbors GetDevice Bgp Neighbors Bgp Neighbor[] 
- array of BGP neighbor records with attributes:
- deviceId string
- id string
- The provider-assigned unique ID for this managed resource.
- bgp_neighbors Sequence[GetDevice Bgp Neighbors Bgp Neighbor] 
- array of BGP neighbor records with attributes:
- device_id str
- id str
- The provider-assigned unique ID for this managed resource.
- bgpNeighbors List<Property Map>
- array of BGP neighbor records with attributes:
- deviceId String
- id String
- 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<GetDevice Bgp Neighbors Bgp Neighbor Routes In> 
- Array of incoming routes.
- RoutesOuts List<GetDevice Bgp Neighbors Bgp Neighbor Routes Out> 
- 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 []GetDevice Bgp Neighbors Bgp Neighbor Routes In 
- Array of incoming routes.
- RoutesOuts []GetDevice Bgp Neighbors Bgp Neighbor Routes Out 
- Array of outgoing routes in the same format.
- PeerIps []string
- Array of IP addresses of this neighbor's peers.
- addressFamily Integer
- IP address version, 4 or 6.
- customerAs Integer
- 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 Integer
- Peer AS number (different than customer_as for EBGP).
- routesIns List<GetDevice Bgp Neighbors Bgp Neighbor Routes In> 
- Array of incoming routes.
- routesOuts List<GetDevice Bgp Neighbors Bgp Neighbor Routes Out> 
- Array of outgoing routes in the same format.
- peerIps List<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 GetDevice Bgp Neighbors Bgp Neighbor Routes In[] 
- Array of incoming routes.
- routesOuts GetDevice Bgp Neighbors Bgp Neighbor Routes Out[] 
- 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[GetDevice Bgp Neighbors Bgp Neighbor Routes In] 
- Array of incoming routes.
- routes_outs Sequence[GetDevice Bgp Neighbors Bgp Neighbor Routes Out] 
- Array of outgoing routes in the same format.
- peer_ips Sequence[str]
- 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 List<Property Map>
- Array of incoming routes.
- routesOuts List<Property Map>
- Array of outgoing routes in the same format.
- peerIps List<String>
- Array of IP addresses of this neighbor's peers.
GetDeviceBgpNeighborsBgpNeighborRoutesIn       
GetDeviceBgpNeighborsBgpNeighborRoutesOut       
Package Details
- Repository
- equinix equinix/pulumi-equinix
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the equinixTerraform Provider.
