1. Packages
  2. Equinix
  3. API Docs
  4. metal
  5. getDevices
Equinix v0.8.0 published on Tuesday, Apr 2, 2024 by Equinix

equinix.metal.getDevices

Explore with Pulumi AI

equinix logo
Equinix v0.8.0 published on Tuesday, Apr 2, 2024 by Equinix

    The datasource can be used to find a list of devices which meet filter criteria.

    If you need to fetch a single device by ID or by project ID and hostname, use the equinix.metal.Device datasource.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as equinix from "@pulumi/equinix";
    
    const example = equinix.metal.getDevices({
        projectId: local.project_id,
        filters: [
            {
                attribute: "plan",
                values: ["c3.small.x86"],
            },
            {
                attribute: "metro",
                values: [
                    "da",
                    "sv",
                ],
            },
        ],
    });
    export const devices = example.then(example => example.devices);
    
    import pulumi
    import pulumi_equinix as equinix
    
    example = equinix.metal.get_devices(project_id=local["project_id"],
        filters=[
            equinix.metal.GetDevicesFilterArgs(
                attribute="plan",
                values=["c3.small.x86"],
            ),
            equinix.metal.GetDevicesFilterArgs(
                attribute="metro",
                values=[
                    "da",
                    "sv",
                ],
            ),
        ])
    pulumi.export("devices", example.devices)
    
    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 {
    		example, err := metal.GetDevices(ctx, &metal.GetDevicesArgs{
    			ProjectId: pulumi.StringRef(local.Project_id),
    			Filters: []metal.GetDevicesFilter{
    				{
    					Attribute: "plan",
    					Values: []string{
    						"c3.small.x86",
    					},
    				},
    				{
    					Attribute: "metro",
    					Values: []string{
    						"da",
    						"sv",
    					},
    				},
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("devices", example.Devices)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Equinix = Pulumi.Equinix;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Equinix.Metal.GetDevices.Invoke(new()
        {
            ProjectId = local.Project_id,
            Filters = new[]
            {
                new Equinix.Metal.Inputs.GetDevicesFilterInputArgs
                {
                    Attribute = "plan",
                    Values = new[]
                    {
                        "c3.small.x86",
                    },
                },
                new Equinix.Metal.Inputs.GetDevicesFilterInputArgs
                {
                    Attribute = "metro",
                    Values = new[]
                    {
                        "da",
                        "sv",
                    },
                },
            },
        });
    
        return new Dictionary<string, object?>
        {
            ["devices"] = example.Apply(getDevicesResult => getDevicesResult.Devices),
        };
    });
    
    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.GetDevicesArgs;
    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 example = MetalFunctions.getDevices(GetDevicesArgs.builder()
                .projectId(local.project_id())
                .filters(            
                    GetDevicesFilterArgs.builder()
                        .attribute("plan")
                        .values("c3.small.x86")
                        .build(),
                    GetDevicesFilterArgs.builder()
                        .attribute("metro")
                        .values(                    
                            "da",
                            "sv")
                        .build())
                .build());
    
            ctx.export("devices", example.applyValue(getDevicesResult -> getDevicesResult.devices()));
        }
    }
    
    variables:
      example:
        fn::invoke:
          Function: equinix:metal:getDevices
          Arguments:
            projectId: ${local.project_id}
            filters:
              - attribute: plan
                values:
                  - c3.small.x86
              - attribute: metro
                values:
                  - da
                  - sv
    outputs:
      devices: ${example.devices}
    
    import * as pulumi from "@pulumi/pulumi";
    import * as equinix from "@pulumi/equinix";
    
    const example = equinix.metal.getDevices({
        search: "database",
    });
    export const devices = example.then(example => example.devices);
    
    import pulumi
    import pulumi_equinix as equinix
    
    example = equinix.metal.get_devices(search="database")
    pulumi.export("devices", example.devices)
    
    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 {
    		example, err := metal.GetDevices(ctx, &metal.GetDevicesArgs{
    			Search: pulumi.StringRef("database"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("devices", example.Devices)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Equinix = Pulumi.Equinix;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Equinix.Metal.GetDevices.Invoke(new()
        {
            Search = "database",
        });
    
        return new Dictionary<string, object?>
        {
            ["devices"] = example.Apply(getDevicesResult => getDevicesResult.Devices),
        };
    });
    
    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.GetDevicesArgs;
    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 example = MetalFunctions.getDevices(GetDevicesArgs.builder()
                .search("database")
                .build());
    
            ctx.export("devices", example.applyValue(getDevicesResult -> getDevicesResult.devices()));
        }
    }
    
    variables:
      example:
        fn::invoke:
          Function: equinix:metal:getDevices
          Arguments:
            search: database
    outputs:
      devices: ${example.devices}
    

    search vs filter

    The difference between search and filter is that search is an API parameter, interpreted by the Equinix Metal service. The “filter” arguments will reduce the API list (or search) results by applying client-side filtering, within this provider.

    Using getDevices

    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 getDevices(args: GetDevicesArgs, opts?: InvokeOptions): Promise<GetDevicesResult>
    function getDevicesOutput(args: GetDevicesOutputArgs, opts?: InvokeOptions): Output<GetDevicesResult>
    def get_devices(filters: Optional[Sequence[GetDevicesFilter]] = None,
                    organization_id: Optional[str] = None,
                    project_id: Optional[str] = None,
                    search: Optional[str] = None,
                    sorts: Optional[Sequence[GetDevicesSort]] = None,
                    opts: Optional[InvokeOptions] = None) -> GetDevicesResult
    def get_devices_output(filters: Optional[pulumi.Input[Sequence[pulumi.Input[GetDevicesFilterArgs]]]] = None,
                    organization_id: Optional[pulumi.Input[str]] = None,
                    project_id: Optional[pulumi.Input[str]] = None,
                    search: Optional[pulumi.Input[str]] = None,
                    sorts: Optional[pulumi.Input[Sequence[pulumi.Input[GetDevicesSortArgs]]]] = None,
                    opts: Optional[InvokeOptions] = None) -> Output[GetDevicesResult]
    func GetDevices(ctx *Context, args *GetDevicesArgs, opts ...InvokeOption) (*GetDevicesResult, error)
    func GetDevicesOutput(ctx *Context, args *GetDevicesOutputArgs, opts ...InvokeOption) GetDevicesResultOutput

    > Note: This function is named GetDevices in the Go SDK.

    public static class GetDevices 
    {
        public static Task<GetDevicesResult> InvokeAsync(GetDevicesArgs args, InvokeOptions? opts = null)
        public static Output<GetDevicesResult> Invoke(GetDevicesInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetDevicesResult> getDevices(GetDevicesArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: equinix:metal/getDevices:getDevices
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Filters List<GetDevicesFilter>
    One or more attribute/values pairs to filter. List of atributes to filter can be found in the attribute reference of the equinix.metal.Device datasource.
    OrganizationId string
    ID of organization containing the devices.
    ProjectId string
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    Search string
    Search string to filter devices by hostname, description, short_id, reservation short_id, tags, plan name, plan slug, facility code, facility name, operating system name, operating system slug, IP addresses.
    Sorts List<GetDevicesSort>
    Filters []GetDevicesFilter
    One or more attribute/values pairs to filter. List of atributes to filter can be found in the attribute reference of the equinix.metal.Device datasource.
    OrganizationId string
    ID of organization containing the devices.
    ProjectId string
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    Search string
    Search string to filter devices by hostname, description, short_id, reservation short_id, tags, plan name, plan slug, facility code, facility name, operating system name, operating system slug, IP addresses.
    Sorts []GetDevicesSort
    filters List<GetDevicesFilter>
    One or more attribute/values pairs to filter. List of atributes to filter can be found in the attribute reference of the equinix.metal.Device datasource.
    organizationId String
    ID of organization containing the devices.
    projectId String
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    search String
    Search string to filter devices by hostname, description, short_id, reservation short_id, tags, plan name, plan slug, facility code, facility name, operating system name, operating system slug, IP addresses.
    sorts List<GetDevicesSort>
    filters GetDevicesFilter[]
    One or more attribute/values pairs to filter. List of atributes to filter can be found in the attribute reference of the equinix.metal.Device datasource.
    organizationId string
    ID of organization containing the devices.
    projectId string
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    search string
    Search string to filter devices by hostname, description, short_id, reservation short_id, tags, plan name, plan slug, facility code, facility name, operating system name, operating system slug, IP addresses.
    sorts GetDevicesSort[]
    filters Sequence[GetDevicesFilter]
    One or more attribute/values pairs to filter. List of atributes to filter can be found in the attribute reference of the equinix.metal.Device datasource.
    organization_id str
    ID of organization containing the devices.
    project_id str
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    search str
    Search string to filter devices by hostname, description, short_id, reservation short_id, tags, plan name, plan slug, facility code, facility name, operating system name, operating system slug, IP addresses.
    sorts Sequence[GetDevicesSort]
    filters List<Property Map>
    One or more attribute/values pairs to filter. List of atributes to filter can be found in the attribute reference of the equinix.metal.Device datasource.
    organizationId String
    ID of organization containing the devices.
    projectId String
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    search String
    Search string to filter devices by hostname, description, short_id, reservation short_id, tags, plan name, plan slug, facility code, facility name, operating system name, operating system slug, IP addresses.
    sorts List<Property Map>

    getDevices Result

    The following output properties are available:

    Devices List<GetDevicesDevice>
    list of resources with attributes like in the equninix_metal_device datasources.
    Id string
    The provider-assigned unique ID for this managed resource.
    Filters List<GetDevicesFilter>
    OrganizationId string
    ProjectId string
    Search string
    Sorts List<GetDevicesSort>
    Devices []GetDevicesDevice
    list of resources with attributes like in the equninix_metal_device datasources.
    Id string
    The provider-assigned unique ID for this managed resource.
    Filters []GetDevicesFilter
    OrganizationId string
    ProjectId string
    Search string
    Sorts []GetDevicesSort
    devices List<GetDevicesDevice>
    list of resources with attributes like in the equninix_metal_device datasources.
    id String
    The provider-assigned unique ID for this managed resource.
    filters List<GetDevicesFilter>
    organizationId String
    projectId String
    search String
    sorts List<GetDevicesSort>
    devices GetDevicesDevice[]
    list of resources with attributes like in the equninix_metal_device datasources.
    id string
    The provider-assigned unique ID for this managed resource.
    filters GetDevicesFilter[]
    organizationId string
    projectId string
    search string
    sorts GetDevicesSort[]
    devices Sequence[GetDevicesDevice]
    list of resources with attributes like in the equninix_metal_device datasources.
    id str
    The provider-assigned unique ID for this managed resource.
    filters Sequence[GetDevicesFilter]
    organization_id str
    project_id str
    search str
    sorts Sequence[GetDevicesSort]
    devices List<Property Map>
    list of resources with attributes like in the equninix_metal_device datasources.
    id String
    The provider-assigned unique ID for this managed resource.
    filters List<Property Map>
    organizationId String
    projectId String
    search String
    sorts List<Property Map>

    Supporting Types

    GetDevicesDevice

    AccessPrivateIpv4 string
    The ipv4 private IP assigned to the device
    AccessPublicIpv4 string
    The ipv4 management IP assigned to the device
    AccessPublicIpv6 string
    The ipv6 management IP assigned to the device
    AlwaysPxe bool
    BillingCycle string
    The billing cycle of the device (monthly or hourly)
    Description string
    Description string for the device
    DeviceId string
    Device ID
    Facility string
    The facility where the device is deployed

    Deprecated: Use metro instead of facility. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices

    HardwareReservationId string
    The id of hardware reservation which this device occupies
    Hostname string
    The device name
    IpxeScriptUrl string
    Metro string
    The metro where the device is deployed
    NetworkType string
    L2 network type of the device, one oflayer3, hybrid, layer2-individual, layer2-bonded
    Networks List<GetDevicesDeviceNetwork>
    The device's private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks: ublic IPv4 at equinix_metal_device.name.network.0, IPv6 at equinix_metal_device.name.network.1 and private IPv4 at equinix_metal_device.name.network.2. Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list).
    OperatingSystem string
    The operating system running on the device
    Plan string
    The hardware config of the device
    Ports List<GetDevicesDevicePort>
    Ports assigned to the device
    ProjectId string
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    RootPassword string
    Root password to the server (if still available)
    SosHostname string
    The hostname to use for Serial over SSH access to the device
    SshKeyIds List<string>
    List of IDs of SSH keys deployed in the device, can be both user or project SSH keys
    State string
    The state of the device
    Storage string
    Tags List<string>
    Tags attached to the device
    AccessPrivateIpv4 string
    The ipv4 private IP assigned to the device
    AccessPublicIpv4 string
    The ipv4 management IP assigned to the device
    AccessPublicIpv6 string
    The ipv6 management IP assigned to the device
    AlwaysPxe bool
    BillingCycle string
    The billing cycle of the device (monthly or hourly)
    Description string
    Description string for the device
    DeviceId string
    Device ID
    Facility string
    The facility where the device is deployed

    Deprecated: Use metro instead of facility. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices

    HardwareReservationId string
    The id of hardware reservation which this device occupies
    Hostname string
    The device name
    IpxeScriptUrl string
    Metro string
    The metro where the device is deployed
    NetworkType string
    L2 network type of the device, one oflayer3, hybrid, layer2-individual, layer2-bonded
    Networks []GetDevicesDeviceNetwork
    The device's private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks: ublic IPv4 at equinix_metal_device.name.network.0, IPv6 at equinix_metal_device.name.network.1 and private IPv4 at equinix_metal_device.name.network.2. Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list).
    OperatingSystem string
    The operating system running on the device
    Plan string
    The hardware config of the device
    Ports []GetDevicesDevicePort
    Ports assigned to the device
    ProjectId string
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    RootPassword string
    Root password to the server (if still available)
    SosHostname string
    The hostname to use for Serial over SSH access to the device
    SshKeyIds []string
    List of IDs of SSH keys deployed in the device, can be both user or project SSH keys
    State string
    The state of the device
    Storage string
    Tags []string
    Tags attached to the device
    accessPrivateIpv4 String
    The ipv4 private IP assigned to the device
    accessPublicIpv4 String
    The ipv4 management IP assigned to the device
    accessPublicIpv6 String
    The ipv6 management IP assigned to the device
    alwaysPxe Boolean
    billingCycle String
    The billing cycle of the device (monthly or hourly)
    description String
    Description string for the device
    deviceId String
    Device ID
    facility String
    The facility where the device is deployed

    Deprecated: Use metro instead of facility. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices

    hardwareReservationId String
    The id of hardware reservation which this device occupies
    hostname String
    The device name
    ipxeScriptUrl String
    metro String
    The metro where the device is deployed
    networkType String
    L2 network type of the device, one oflayer3, hybrid, layer2-individual, layer2-bonded
    networks List<GetDevicesDeviceNetwork>
    The device's private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks: ublic IPv4 at equinix_metal_device.name.network.0, IPv6 at equinix_metal_device.name.network.1 and private IPv4 at equinix_metal_device.name.network.2. Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list).
    operatingSystem String
    The operating system running on the device
    plan String
    The hardware config of the device
    ports List<GetDevicesDevicePort>
    Ports assigned to the device
    projectId String
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    rootPassword String
    Root password to the server (if still available)
    sosHostname String
    The hostname to use for Serial over SSH access to the device
    sshKeyIds List<String>
    List of IDs of SSH keys deployed in the device, can be both user or project SSH keys
    state String
    The state of the device
    storage String
    tags List<String>
    Tags attached to the device
    accessPrivateIpv4 string
    The ipv4 private IP assigned to the device
    accessPublicIpv4 string
    The ipv4 management IP assigned to the device
    accessPublicIpv6 string
    The ipv6 management IP assigned to the device
    alwaysPxe boolean
    billingCycle string
    The billing cycle of the device (monthly or hourly)
    description string
    Description string for the device
    deviceId string
    Device ID
    facility string
    The facility where the device is deployed

    Deprecated: Use metro instead of facility. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices

    hardwareReservationId string
    The id of hardware reservation which this device occupies
    hostname string
    The device name
    ipxeScriptUrl string
    metro string
    The metro where the device is deployed
    networkType string
    L2 network type of the device, one oflayer3, hybrid, layer2-individual, layer2-bonded
    networks GetDevicesDeviceNetwork[]
    The device's private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks: ublic IPv4 at equinix_metal_device.name.network.0, IPv6 at equinix_metal_device.name.network.1 and private IPv4 at equinix_metal_device.name.network.2. Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list).
    operatingSystem string
    The operating system running on the device
    plan string
    The hardware config of the device
    ports GetDevicesDevicePort[]
    Ports assigned to the device
    projectId string
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    rootPassword string
    Root password to the server (if still available)
    sosHostname string
    The hostname to use for Serial over SSH access to the device
    sshKeyIds string[]
    List of IDs of SSH keys deployed in the device, can be both user or project SSH keys
    state string
    The state of the device
    storage string
    tags string[]
    Tags attached to the device
    access_private_ipv4 str
    The ipv4 private IP assigned to the device
    access_public_ipv4 str
    The ipv4 management IP assigned to the device
    access_public_ipv6 str
    The ipv6 management IP assigned to the device
    always_pxe bool
    billing_cycle str
    The billing cycle of the device (monthly or hourly)
    description str
    Description string for the device
    device_id str
    Device ID
    facility str
    The facility where the device is deployed

    Deprecated: Use metro instead of facility. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices

    hardware_reservation_id str
    The id of hardware reservation which this device occupies
    hostname str
    The device name
    ipxe_script_url str
    metro str
    The metro where the device is deployed
    network_type str
    L2 network type of the device, one oflayer3, hybrid, layer2-individual, layer2-bonded
    networks Sequence[GetDevicesDeviceNetwork]
    The device's private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks: ublic IPv4 at equinix_metal_device.name.network.0, IPv6 at equinix_metal_device.name.network.1 and private IPv4 at equinix_metal_device.name.network.2. Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list).
    operating_system str
    The operating system running on the device
    plan str
    The hardware config of the device
    ports Sequence[GetDevicesDevicePort]
    Ports assigned to the device
    project_id str
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    root_password str
    Root password to the server (if still available)
    sos_hostname str
    The hostname to use for Serial over SSH access to the device
    ssh_key_ids Sequence[str]
    List of IDs of SSH keys deployed in the device, can be both user or project SSH keys
    state str
    The state of the device
    storage str
    tags Sequence[str]
    Tags attached to the device
    accessPrivateIpv4 String
    The ipv4 private IP assigned to the device
    accessPublicIpv4 String
    The ipv4 management IP assigned to the device
    accessPublicIpv6 String
    The ipv6 management IP assigned to the device
    alwaysPxe Boolean
    billingCycle String
    The billing cycle of the device (monthly or hourly)
    description String
    Description string for the device
    deviceId String
    Device ID
    facility String
    The facility where the device is deployed

    Deprecated: Use metro instead of facility. For more information, read the migration guide: https://registry.terraform.io/providers/equinix/equinix/latest/docs/guides/migration_guide_facilities_to_metros_devices

    hardwareReservationId String
    The id of hardware reservation which this device occupies
    hostname String
    The device name
    ipxeScriptUrl String
    metro String
    The metro where the device is deployed
    networkType String
    L2 network type of the device, one oflayer3, hybrid, layer2-individual, layer2-bonded
    networks List<Property Map>
    The device's private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks: ublic IPv4 at equinix_metal_device.name.network.0, IPv6 at equinix_metal_device.name.network.1 and private IPv4 at equinix_metal_device.name.network.2. Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list).
    operatingSystem String
    The operating system running on the device
    plan String
    The hardware config of the device
    ports List<Property Map>
    Ports assigned to the device
    projectId String
    ID of project containing the devices. Exactly one of project_id and organization_id must be set.
    rootPassword String
    Root password to the server (if still available)
    sosHostname String
    The hostname to use for Serial over SSH access to the device
    sshKeyIds List<String>
    List of IDs of SSH keys deployed in the device, can be both user or project SSH keys
    state String
    The state of the device
    storage String
    tags List<String>
    Tags attached to the device

    GetDevicesDeviceNetwork

    Address string
    IPv4 or IPv6 address string
    Cidr int
    Bit length of the network mask of the address
    Family int
    IP version - "4" or "6"
    Gateway string
    Address of router
    Public bool
    Whether the address is routable from the Internet
    Address string
    IPv4 or IPv6 address string
    Cidr int
    Bit length of the network mask of the address
    Family int
    IP version - "4" or "6"
    Gateway string
    Address of router
    Public bool
    Whether the address is routable from the Internet
    address String
    IPv4 or IPv6 address string
    cidr Integer
    Bit length of the network mask of the address
    family Integer
    IP version - "4" or "6"
    gateway String
    Address of router
    public_ Boolean
    Whether the address is routable from the Internet
    address string
    IPv4 or IPv6 address string
    cidr number
    Bit length of the network mask of the address
    family number
    IP version - "4" or "6"
    gateway string
    Address of router
    public boolean
    Whether the address is routable from the Internet
    address str
    IPv4 or IPv6 address string
    cidr int
    Bit length of the network mask of the address
    family int
    IP version - "4" or "6"
    gateway str
    Address of router
    public bool
    Whether the address is routable from the Internet
    address String
    IPv4 or IPv6 address string
    cidr Number
    Bit length of the network mask of the address
    family Number
    IP version - "4" or "6"
    gateway String
    Address of router
    public Boolean
    Whether the address is routable from the Internet

    GetDevicesDevicePort

    Bonded bool
    Whether this port is part of a bond in bonded network setup
    Id string
    The ID of the device
    Mac string
    MAC address assigned to the port
    Name string
    Name of the port (e.g. eth0, or bond0)
    Type string
    Type of the port (e.g. NetworkPort or NetworkBondPort)
    Bonded bool
    Whether this port is part of a bond in bonded network setup
    Id string
    The ID of the device
    Mac string
    MAC address assigned to the port
    Name string
    Name of the port (e.g. eth0, or bond0)
    Type string
    Type of the port (e.g. NetworkPort or NetworkBondPort)
    bonded Boolean
    Whether this port is part of a bond in bonded network setup
    id String
    The ID of the device
    mac String
    MAC address assigned to the port
    name String
    Name of the port (e.g. eth0, or bond0)
    type String
    Type of the port (e.g. NetworkPort or NetworkBondPort)
    bonded boolean
    Whether this port is part of a bond in bonded network setup
    id string
    The ID of the device
    mac string
    MAC address assigned to the port
    name string
    Name of the port (e.g. eth0, or bond0)
    type string
    Type of the port (e.g. NetworkPort or NetworkBondPort)
    bonded bool
    Whether this port is part of a bond in bonded network setup
    id str
    The ID of the device
    mac str
    MAC address assigned to the port
    name str
    Name of the port (e.g. eth0, or bond0)
    type str
    Type of the port (e.g. NetworkPort or NetworkBondPort)
    bonded Boolean
    Whether this port is part of a bond in bonded network setup
    id String
    The ID of the device
    mac String
    MAC address assigned to the port
    name String
    Name of the port (e.g. eth0, or bond0)
    type String
    Type of the port (e.g. NetworkPort or NetworkBondPort)

    GetDevicesFilter

    Attribute string
    The attribute used to filter. Filter attributes are case-sensitive
    Values List<string>
    The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values
    All bool

    If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is false.

    All fields in the devices block defined below can be used as attribute for both sort and filter blocks.

    MatchBy string
    The type of comparison to apply. One of: in , re, substring, less_than, less_than_or_equal, greater_than, greater_than_or_equal. Default is in.
    Attribute string
    The attribute used to filter. Filter attributes are case-sensitive
    Values []string
    The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values
    All bool

    If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is false.

    All fields in the devices block defined below can be used as attribute for both sort and filter blocks.

    MatchBy string
    The type of comparison to apply. One of: in , re, substring, less_than, less_than_or_equal, greater_than, greater_than_or_equal. Default is in.
    attribute String
    The attribute used to filter. Filter attributes are case-sensitive
    values List<String>
    The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values
    all Boolean

    If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is false.

    All fields in the devices block defined below can be used as attribute for both sort and filter blocks.

    matchBy String
    The type of comparison to apply. One of: in , re, substring, less_than, less_than_or_equal, greater_than, greater_than_or_equal. Default is in.
    attribute string
    The attribute used to filter. Filter attributes are case-sensitive
    values string[]
    The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values
    all boolean

    If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is false.

    All fields in the devices block defined below can be used as attribute for both sort and filter blocks.

    matchBy string
    The type of comparison to apply. One of: in , re, substring, less_than, less_than_or_equal, greater_than, greater_than_or_equal. Default is in.
    attribute str
    The attribute used to filter. Filter attributes are case-sensitive
    values Sequence[str]
    The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values
    all bool

    If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is false.

    All fields in the devices block defined below can be used as attribute for both sort and filter blocks.

    match_by str
    The type of comparison to apply. One of: in , re, substring, less_than, less_than_or_equal, greater_than, greater_than_or_equal. Default is in.
    attribute String
    The attribute used to filter. Filter attributes are case-sensitive
    values List<String>
    The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values
    all Boolean

    If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is false.

    All fields in the devices block defined below can be used as attribute for both sort and filter blocks.

    matchBy String
    The type of comparison to apply. One of: in , re, substring, less_than, less_than_or_equal, greater_than, greater_than_or_equal. Default is in.

    GetDevicesSort

    Attribute string
    The attribute used to filter. Filter attributes are case-sensitive
    Direction string
    Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc
    Attribute string
    The attribute used to filter. Filter attributes are case-sensitive
    Direction string
    Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc
    attribute String
    The attribute used to filter. Filter attributes are case-sensitive
    direction String
    Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc
    attribute string
    The attribute used to filter. Filter attributes are case-sensitive
    direction string
    Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc
    attribute str
    The attribute used to filter. Filter attributes are case-sensitive
    direction str
    Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc
    attribute String
    The attribute used to filter. Filter attributes are case-sensitive
    direction String
    Sort results in ascending or descending order. Strings are sorted in alphabetical order. One of: asc, desc

    Package Details

    Repository
    equinix equinix/pulumi-equinix
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the equinix Terraform Provider.
    equinix logo
    Equinix v0.8.0 published on Tuesday, Apr 2, 2024 by Equinix