published on Friday, Sep 11, 2026 by vmware
published on Friday, Sep 11, 2026 by vmware
This data source provides a way to list effective bare metal server interface members that belong to a specific NSX-T policy group. This API is applicable only for groups containing BMSI member type. For groups containing other member types, it returns an empty list.
This data source is applicable to NSX Policy Manager and requires NSX-T version 9.0.0 or higher (Bare Metal Server support)
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as nsxt from "@pulumi/nsxt";
const example = nsxt.getPolicyGroupBaremetalServerInterfaceMembers({
domain: "default",
groupId: "bmsi-group-id",
});
export const bmsiMembers = example.then(example => example.items);
import pulumi
import pulumi_nsxt as nsxt
example = nsxt.get_policy_group_baremetal_server_interface_members(domain="default",
group_id="bmsi-group-id")
pulumi.export("bmsiMembers", example.items)
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/nsxt/v3/nsxt"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := nsxt.GetPolicyGroupBaremetalServerInterfaceMembers(ctx, &nsxt.GetPolicyGroupBaremetalServerInterfaceMembersArgs{
Domain: pulumi.StringRef("default"),
GroupId: "bmsi-group-id",
}, nil)
if err != nil {
return err
}
ctx.Export("bmsiMembers", example.Items)
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nsxt = Pulumi.Nsxt;
return await Deployment.RunAsync(() =>
{
var example = Nsxt.GetPolicyGroupBaremetalServerInterfaceMembers.Invoke(new()
{
Domain = "default",
GroupId = "bmsi-group-id",
});
return new Dictionary<string, object?>
{
["bmsiMembers"] = example.Apply(getPolicyGroupBaremetalServerInterfaceMembersResult => getPolicyGroupBaremetalServerInterfaceMembersResult.Items),
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.nsxt.NsxtFunctions;
import com.pulumi.nsxt.inputs.GetPolicyGroupBaremetalServerInterfaceMembersArgs;
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 = NsxtFunctions.getPolicyGroupBaremetalServerInterfaceMembers(GetPolicyGroupBaremetalServerInterfaceMembersArgs.builder()
.domain("default")
.groupId("bmsi-group-id")
.build());
ctx.export("bmsiMembers", example.items());
}
}
variables:
example:
fn::invoke:
function: nsxt:getPolicyGroupBaremetalServerInterfaceMembers
arguments:
domain: default
groupId: bmsi-group-id
outputs:
bmsiMembers: ${example.items}
Example coming soon!
With Group Reference
import * as pulumi from "@pulumi/pulumi";
import * as nsxt from "@pulumi/nsxt";
const bmsiGroup = new nsxt.PolicyGroup("bmsi_group", {
displayName: "bmsi-static-group",
description: "Group for bare metal server interfaces",
groupType: "BareMetalServer",
criterias: [{
externalIdExpressions: [{
memberType: "BareMetalServerInterface",
externalIds: ["71be0142-2ed1-1d53-9c60-02005b4b7246"],
}],
}],
});
const bmsiMembers = nsxt.getPolicyGroupBaremetalServerInterfaceMembersOutput({
domain: "default",
groupId: bmsiGroup.policyGroupId,
});
import pulumi
import pulumi_nsxt as nsxt
bmsi_group = nsxt.PolicyGroup("bmsi_group",
display_name="bmsi-static-group",
description="Group for bare metal server interfaces",
group_type="BareMetalServer",
criterias=[{
"external_id_expressions": [{
"member_type": "BareMetalServerInterface",
"external_ids": ["71be0142-2ed1-1d53-9c60-02005b4b7246"],
}],
}])
bmsi_members = nsxt.get_policy_group_baremetal_server_interface_members_output(domain="default",
group_id=bmsi_group.policy_group_id)
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/nsxt/v3/nsxt"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
bmsiGroup, err := nsxt.NewPolicyGroup(ctx, "bmsi_group", &nsxt.PolicyGroupArgs{
DisplayName: pulumi.String("bmsi-static-group"),
Description: pulumi.String("Group for bare metal server interfaces"),
GroupType: pulumi.String("BareMetalServer"),
Criterias: nsxt.PolicyGroupCriteriaArray{
&nsxt.PolicyGroupCriteriaArgs{
ExternalIdExpressions: nsxt.PolicyGroupCriteriaExternalIdExpressionArray{
&nsxt.PolicyGroupCriteriaExternalIdExpressionArgs{
MemberType: pulumi.String("BareMetalServerInterface"),
ExternalIds: pulumi.StringArray{
pulumi.String("71be0142-2ed1-1d53-9c60-02005b4b7246"),
},
},
},
},
},
})
if err != nil {
return err
}
_ = nsxt.GetPolicyGroupBaremetalServerInterfaceMembersOutput(ctx, nsxt.GetPolicyGroupBaremetalServerInterfaceMembersOutputArgs{
Domain: pulumi.String("default"),
GroupId: bmsiGroup.PolicyGroupId,
}, nil)
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nsxt = Pulumi.Nsxt;
return await Deployment.RunAsync(() =>
{
var bmsiGroup = new Nsxt.PolicyGroup("bmsi_group", new()
{
DisplayName = "bmsi-static-group",
Description = "Group for bare metal server interfaces",
GroupType = "BareMetalServer",
Criterias = new[]
{
new Nsxt.Inputs.PolicyGroupCriteriaArgs
{
ExternalIdExpressions = new[]
{
new Nsxt.Inputs.PolicyGroupCriteriaExternalIdExpressionArgs
{
MemberType = "BareMetalServerInterface",
ExternalIds = new[]
{
"71be0142-2ed1-1d53-9c60-02005b4b7246",
},
},
},
},
},
});
var bmsiMembers = Nsxt.GetPolicyGroupBaremetalServerInterfaceMembers.Invoke(new()
{
Domain = "default",
GroupId = bmsiGroup.PolicyGroupId,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.nsxt.PolicyGroup;
import com.pulumi.nsxt.PolicyGroupArgs;
import com.pulumi.nsxt.inputs.PolicyGroupCriteriaArgs;
import com.pulumi.nsxt.NsxtFunctions;
import com.pulumi.nsxt.inputs.GetPolicyGroupBaremetalServerInterfaceMembersArgs;
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) {
var bmsiGroup = new PolicyGroup("bmsiGroup", PolicyGroupArgs.builder()
.displayName("bmsi-static-group")
.description("Group for bare metal server interfaces")
.groupType("BareMetalServer")
.criterias(PolicyGroupCriteriaArgs.builder()
.externalIdExpressions(PolicyGroupCriteriaExternalIdExpressionArgs.builder()
.memberType("BareMetalServerInterface")
.externalIds("71be0142-2ed1-1d53-9c60-02005b4b7246")
.build())
.build())
.build());
final var bmsiMembers = NsxtFunctions.getPolicyGroupBaremetalServerInterfaceMembers(GetPolicyGroupBaremetalServerInterfaceMembersArgs.builder()
.domain("default")
.groupId(bmsiGroup.policyGroupId())
.build());
}
}
resources:
bmsiGroup:
type: nsxt:PolicyGroup
name: bmsi_group
properties:
displayName: bmsi-static-group
description: Group for bare metal server interfaces
groupType: BareMetalServer
criterias:
- externalIdExpressions:
- memberType: BareMetalServerInterface
externalIds:
- 71be0142-2ed1-1d53-9c60-02005b4b7246
variables:
bmsiMembers:
fn::invoke:
function: nsxt:getPolicyGroupBaremetalServerInterfaceMembers
arguments:
domain: default
groupId: ${bmsiGroup.policyGroupId}
Example coming soon!
Using getPolicyGroupBaremetalServerInterfaceMembers
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 getPolicyGroupBaremetalServerInterfaceMembers(args: GetPolicyGroupBaremetalServerInterfaceMembersArgs, opts?: InvokeOptions): Promise<GetPolicyGroupBaremetalServerInterfaceMembersResult>
function getPolicyGroupBaremetalServerInterfaceMembersOutput(args: GetPolicyGroupBaremetalServerInterfaceMembersOutputArgs, opts?: InvokeOutputOptions): Output<GetPolicyGroupBaremetalServerInterfaceMembersResult>def get_policy_group_baremetal_server_interface_members(domain: Optional[str] = None,
enforcement_point_path: Optional[str] = None,
group_id: Optional[str] = None,
id: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetPolicyGroupBaremetalServerInterfaceMembersResult
def get_policy_group_baremetal_server_interface_members_output(domain: pulumi.Input[Optional[str]] = None,
enforcement_point_path: pulumi.Input[Optional[str]] = None,
group_id: pulumi.Input[Optional[str]] = None,
id: pulumi.Input[Optional[str]] = None,
opts: Optional[InvokeOutputOptions] = None) -> Output[GetPolicyGroupBaremetalServerInterfaceMembersResult]func GetPolicyGroupBaremetalServerInterfaceMembers(ctx *Context, args *GetPolicyGroupBaremetalServerInterfaceMembersArgs, opts ...InvokeOption) (*GetPolicyGroupBaremetalServerInterfaceMembersResult, error)
func GetPolicyGroupBaremetalServerInterfaceMembersOutput(ctx *Context, args *GetPolicyGroupBaremetalServerInterfaceMembersOutputArgs, opts ...InvokeOption) GetPolicyGroupBaremetalServerInterfaceMembersResultOutput> Note: This function is named GetPolicyGroupBaremetalServerInterfaceMembers in the Go SDK.
public static class GetPolicyGroupBaremetalServerInterfaceMembers
{
public static Task<GetPolicyGroupBaremetalServerInterfaceMembersResult> InvokeAsync(GetPolicyGroupBaremetalServerInterfaceMembersArgs args, InvokeOptions? opts = null)
public static Output<GetPolicyGroupBaremetalServerInterfaceMembersResult> Invoke(GetPolicyGroupBaremetalServerInterfaceMembersInvokeArgs args, InvokeOptions? opts = null)
public static Output<GetPolicyGroupBaremetalServerInterfaceMembersResult> Invoke(GetPolicyGroupBaremetalServerInterfaceMembersInvokeArgs args, InvokeOutputOptions opts)
}public static CompletableFuture<GetPolicyGroupBaremetalServerInterfaceMembersResult> getPolicyGroupBaremetalServerInterfaceMembers(GetPolicyGroupBaremetalServerInterfaceMembersArgs args, InvokeOptions options)
public static Output<GetPolicyGroupBaremetalServerInterfaceMembersResult> getPolicyGroupBaremetalServerInterfaceMembers(GetPolicyGroupBaremetalServerInterfaceMembersArgs args, InvokeOptions options)
public static Output<GetPolicyGroupBaremetalServerInterfaceMembersResult> getPolicyGroupBaremetalServerInterfaceMembers(GetPolicyGroupBaremetalServerInterfaceMembersArgs args, InvokeOutputOptions options)
fn::invoke:
function: nsxt:index/getPolicyGroupBaremetalServerInterfaceMembers:getPolicyGroupBaremetalServerInterfaceMembers
arguments:
# arguments dictionarydata "nsxt_get_policy_group_baremetal_server_interface_members" "name" {
# arguments
}The following arguments are supported:
- Group
Id string - ID of the group to read effective bare metal server interface members.
- Domain string
- Domain ID for the group. Defaults to "default".
- Enforcement
Point stringPath - The path of the enforcement point from which the list of members needs to be fetched.
- Id string
- ID of the group.
- Group
Id string - ID of the group to read effective bare metal server interface members.
- Domain string
- Domain ID for the group. Defaults to "default".
- Enforcement
Point stringPath - The path of the enforcement point from which the list of members needs to be fetched.
- Id string
- ID of the group.
- group_
id string - ID of the group to read effective bare metal server interface members.
- domain string
- Domain ID for the group. Defaults to "default".
- enforcement_
point_ stringpath - The path of the enforcement point from which the list of members needs to be fetched.
- id string
- ID of the group.
- group
Id String - ID of the group to read effective bare metal server interface members.
- domain String
- Domain ID for the group. Defaults to "default".
- enforcement
Point StringPath - The path of the enforcement point from which the list of members needs to be fetched.
- id String
- ID of the group.
- group
Id string - ID of the group to read effective bare metal server interface members.
- domain string
- Domain ID for the group. Defaults to "default".
- enforcement
Point stringPath - The path of the enforcement point from which the list of members needs to be fetched.
- id string
- ID of the group.
- group_
id str - ID of the group to read effective bare metal server interface members.
- domain str
- Domain ID for the group. Defaults to "default".
- enforcement_
point_ strpath - The path of the enforcement point from which the list of members needs to be fetched.
- id str
- ID of the group.
- group
Id String - ID of the group to read effective bare metal server interface members.
- domain String
- Domain ID for the group. Defaults to "default".
- enforcement
Point StringPath - The path of the enforcement point from which the list of members needs to be fetched.
- id String
- ID of the group.
getPolicyGroupBaremetalServerInterfaceMembers Result
The following output properties are available:
- Group
Id string - Id string
- ID of the group.
- Items
List<Get
Policy Group Baremetal Server Interface Members Item> - List of bare metal server interface members in the group.
- Domain string
- Enforcement
Point stringPath
- Group
Id string - Id string
- ID of the group.
- Items
[]Get
Policy Group Baremetal Server Interface Members Item - List of bare metal server interface members in the group.
- Domain string
- Enforcement
Point stringPath
- group_
id string - id string
- ID of the group.
- items list(object)
- List of bare metal server interface members in the group.
- domain string
- enforcement_
point_ stringpath
- group
Id String - id String
- ID of the group.
- items
List<Get
Policy Group Baremetal Server Interface Members Item> - List of bare metal server interface members in the group.
- domain String
- enforcement
Point StringPath
- group
Id string - id string
- ID of the group.
- items
Get
Policy Group Baremetal Server Interface Members Item[] - List of bare metal server interface members in the group.
- domain string
- enforcement
Point stringPath
- group_
id str - id str
- ID of the group.
- items
Sequence[Get
Policy Group Baremetal Server Interface Members Item] - List of bare metal server interface members in the group.
- domain str
- enforcement_
point_ strpath
- group
Id String - id String
- ID of the group.
- items List<Property Map>
- List of bare metal server interface members in the group.
- domain String
- enforcement
Point StringPath
Supporting Types
GetPolicyGroupBaremetalServerInterfaceMembersItem
- Bms
External stringId - External ID of the parent bare metal server.
- Display
Name string - Display name of the bare metal server interface.
- External
Id string - External ID of the bare metal server interface.
- Ip
Addresses List<string> - List of IP addresses assigned to the interface.
- Is
Mgmt boolInterface - Whether this is a management interface.
- Last
Sync doubleTime - Last synchronization time.
- Mac
Address string - MAC address of the interface.
- Source
Id string - Source ID of the bare metal server interface.
- State string
- State of the interface (e.g., "UP", "DOWN").
- Bms
External stringId - External ID of the parent bare metal server.
- Display
Name string - Display name of the bare metal server interface.
- External
Id string - External ID of the bare metal server interface.
- Ip
Addresses []string - List of IP addresses assigned to the interface.
- Is
Mgmt boolInterface - Whether this is a management interface.
- Last
Sync float64Time - Last synchronization time.
- Mac
Address string - MAC address of the interface.
- Source
Id string - Source ID of the bare metal server interface.
- State string
- State of the interface (e.g., "UP", "DOWN").
- bms_
external_ stringid - External ID of the parent bare metal server.
- display_
name string - Display name of the bare metal server interface.
- external_
id string - External ID of the bare metal server interface.
- ip_
addresses list(string) - List of IP addresses assigned to the interface.
- is_
mgmt_ boolinterface - Whether this is a management interface.
- last_
sync_ numbertime - Last synchronization time.
- mac_
address string - MAC address of the interface.
- source_
id string - Source ID of the bare metal server interface.
- state string
- State of the interface (e.g., "UP", "DOWN").
- bms
External StringId - External ID of the parent bare metal server.
- display
Name String - Display name of the bare metal server interface.
- external
Id String - External ID of the bare metal server interface.
- ip
Addresses List<String> - List of IP addresses assigned to the interface.
- is
Mgmt BooleanInterface - Whether this is a management interface.
- last
Sync DoubleTime - Last synchronization time.
- mac
Address String - MAC address of the interface.
- source
Id String - Source ID of the bare metal server interface.
- state String
- State of the interface (e.g., "UP", "DOWN").
- bms
External stringId - External ID of the parent bare metal server.
- display
Name string - Display name of the bare metal server interface.
- external
Id string - External ID of the bare metal server interface.
- ip
Addresses string[] - List of IP addresses assigned to the interface.
- is
Mgmt booleanInterface - Whether this is a management interface.
- last
Sync numberTime - Last synchronization time.
- mac
Address string - MAC address of the interface.
- source
Id string - Source ID of the bare metal server interface.
- state string
- State of the interface (e.g., "UP", "DOWN").
- bms_
external_ strid - External ID of the parent bare metal server.
- display_
name str - Display name of the bare metal server interface.
- external_
id str - External ID of the bare metal server interface.
- ip_
addresses Sequence[str] - List of IP addresses assigned to the interface.
- is_
mgmt_ boolinterface - Whether this is a management interface.
- last_
sync_ floattime - Last synchronization time.
- mac_
address str - MAC address of the interface.
- source_
id str - Source ID of the bare metal server interface.
- state str
- State of the interface (e.g., "UP", "DOWN").
- bms
External StringId - External ID of the parent bare metal server.
- display
Name String - Display name of the bare metal server interface.
- external
Id String - External ID of the bare metal server interface.
- ip
Addresses List<String> - List of IP addresses assigned to the interface.
- is
Mgmt BooleanInterface - Whether this is a management interface.
- last
Sync NumberTime - Last synchronization time.
- mac
Address String - MAC address of the interface.
- source
Id String - Source ID of the bare metal server interface.
- state String
- State of the interface (e.g., "UP", "DOWN").
Package Details
- Repository
- nsxt vmware/terraform-provider-nsxt
- License
- Notes
- This Pulumi package is based on the
nsxtTerraform Provider.
published on Friday, Sep 11, 2026 by vmware