1. Packages
  2. Vcd Provider
  3. API Docs
  4. getNsxtSegmentMacDiscoveryProfile
vcd 3.14.1 published on Monday, Apr 14, 2025 by vmware

vcd.getNsxtSegmentMacDiscoveryProfile

Explore with Pulumi AI

Provides a VMware Cloud Director NSX-T MAC Discovery Profile data source. This can be used to read NSX-T Segment Profile definitions.

Supported in provider v3.11+.

Example Usage

MAC Discovery Profile)

import * as pulumi from "@pulumi/pulumi";
import * as vcd from "@pulumi/vcd";

const nsxt = vcd.getNsxtManager({
    name: "nsxManager1",
});
const first = nsxt.then(nsxt => vcd.getNsxtSegmentMacDiscoveryProfile({
    name: "mac-discovery-profile-0",
    nsxtManagerId: nsxt.id,
}));
Copy
import pulumi
import pulumi_vcd as vcd

nsxt = vcd.get_nsxt_manager(name="nsxManager1")
first = vcd.get_nsxt_segment_mac_discovery_profile(name="mac-discovery-profile-0",
    nsxt_manager_id=nsxt.id)
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vcd/v3/vcd"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		nsxt, err := vcd.GetNsxtManager(ctx, &vcd.GetNsxtManagerArgs{
			Name: "nsxManager1",
		}, nil)
		if err != nil {
			return err
		}
		_, err = vcd.GetNsxtSegmentMacDiscoveryProfile(ctx, &vcd.GetNsxtSegmentMacDiscoveryProfileArgs{
			Name:          "mac-discovery-profile-0",
			NsxtManagerId: pulumi.StringRef(nsxt.Id),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Vcd = Pulumi.Vcd;

return await Deployment.RunAsync(() => 
{
    var nsxt = Vcd.GetNsxtManager.Invoke(new()
    {
        Name = "nsxManager1",
    });

    var first = Vcd.GetNsxtSegmentMacDiscoveryProfile.Invoke(new()
    {
        Name = "mac-discovery-profile-0",
        NsxtManagerId = nsxt.Apply(getNsxtManagerResult => getNsxtManagerResult.Id),
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.vcd.VcdFunctions;
import com.pulumi.vcd.inputs.GetNsxtManagerArgs;
import com.pulumi.vcd.inputs.GetNsxtSegmentMacDiscoveryProfileArgs;
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 nsxt = VcdFunctions.getNsxtManager(GetNsxtManagerArgs.builder()
            .name("nsxManager1")
            .build());

        final var first = VcdFunctions.getNsxtSegmentMacDiscoveryProfile(GetNsxtSegmentMacDiscoveryProfileArgs.builder()
            .name("mac-discovery-profile-0")
            .nsxtManagerId(nsxt.applyValue(getNsxtManagerResult -> getNsxtManagerResult.id()))
            .build());

    }
}
Copy
variables:
  nsxt:
    fn::invoke:
      function: vcd:getNsxtManager
      arguments:
        name: nsxManager1
  first:
    fn::invoke:
      function: vcd:getNsxtSegmentMacDiscoveryProfile
      arguments:
        name: mac-discovery-profile-0
        nsxtManagerId: ${nsxt.id}
Copy

Using getNsxtSegmentMacDiscoveryProfile

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 getNsxtSegmentMacDiscoveryProfile(args: GetNsxtSegmentMacDiscoveryProfileArgs, opts?: InvokeOptions): Promise<GetNsxtSegmentMacDiscoveryProfileResult>
function getNsxtSegmentMacDiscoveryProfileOutput(args: GetNsxtSegmentMacDiscoveryProfileOutputArgs, opts?: InvokeOptions): Output<GetNsxtSegmentMacDiscoveryProfileResult>
Copy
def get_nsxt_segment_mac_discovery_profile(id: Optional[str] = None,
                                           name: Optional[str] = None,
                                           nsxt_manager_id: Optional[str] = None,
                                           vdc_group_id: Optional[str] = None,
                                           vdc_id: Optional[str] = None,
                                           opts: Optional[InvokeOptions] = None) -> GetNsxtSegmentMacDiscoveryProfileResult
def get_nsxt_segment_mac_discovery_profile_output(id: Optional[pulumi.Input[str]] = None,
                                           name: Optional[pulumi.Input[str]] = None,
                                           nsxt_manager_id: Optional[pulumi.Input[str]] = None,
                                           vdc_group_id: Optional[pulumi.Input[str]] = None,
                                           vdc_id: Optional[pulumi.Input[str]] = None,
                                           opts: Optional[InvokeOptions] = None) -> Output[GetNsxtSegmentMacDiscoveryProfileResult]
Copy
func GetNsxtSegmentMacDiscoveryProfile(ctx *Context, args *GetNsxtSegmentMacDiscoveryProfileArgs, opts ...InvokeOption) (*GetNsxtSegmentMacDiscoveryProfileResult, error)
func GetNsxtSegmentMacDiscoveryProfileOutput(ctx *Context, args *GetNsxtSegmentMacDiscoveryProfileOutputArgs, opts ...InvokeOption) GetNsxtSegmentMacDiscoveryProfileResultOutput
Copy

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

public static class GetNsxtSegmentMacDiscoveryProfile 
{
    public static Task<GetNsxtSegmentMacDiscoveryProfileResult> InvokeAsync(GetNsxtSegmentMacDiscoveryProfileArgs args, InvokeOptions? opts = null)
    public static Output<GetNsxtSegmentMacDiscoveryProfileResult> Invoke(GetNsxtSegmentMacDiscoveryProfileInvokeArgs args, InvokeOptions? opts = null)
}
Copy
public static CompletableFuture<GetNsxtSegmentMacDiscoveryProfileResult> getNsxtSegmentMacDiscoveryProfile(GetNsxtSegmentMacDiscoveryProfileArgs args, InvokeOptions options)
public static Output<GetNsxtSegmentMacDiscoveryProfileResult> getNsxtSegmentMacDiscoveryProfile(GetNsxtSegmentMacDiscoveryProfileArgs args, InvokeOptions options)
Copy
fn::invoke:
  function: vcd:index/getNsxtSegmentMacDiscoveryProfile:getNsxtSegmentMacDiscoveryProfile
  arguments:
    # arguments dictionary
Copy

The following arguments are supported:

Name This property is required. string
The name of Segment Profile
Id string
NsxtManagerId string
Segment Profile search context. Use when searching by NSX-T manager
VdcGroupId string

Segment Profile search context. Use when searching by VDC group

Note: only one of nsxt_manager_id, vdc_id, vdc_group_id can be used

VdcId string
Segment Profile search context. Use when searching by VDC
Name This property is required. string
The name of Segment Profile
Id string
NsxtManagerId string
Segment Profile search context. Use when searching by NSX-T manager
VdcGroupId string

Segment Profile search context. Use when searching by VDC group

Note: only one of nsxt_manager_id, vdc_id, vdc_group_id can be used

VdcId string
Segment Profile search context. Use when searching by VDC
name This property is required. String
The name of Segment Profile
id String
nsxtManagerId String
Segment Profile search context. Use when searching by NSX-T manager
vdcGroupId String

Segment Profile search context. Use when searching by VDC group

Note: only one of nsxt_manager_id, vdc_id, vdc_group_id can be used

vdcId String
Segment Profile search context. Use when searching by VDC
name This property is required. string
The name of Segment Profile
id string
nsxtManagerId string
Segment Profile search context. Use when searching by NSX-T manager
vdcGroupId string

Segment Profile search context. Use when searching by VDC group

Note: only one of nsxt_manager_id, vdc_id, vdc_group_id can be used

vdcId string
Segment Profile search context. Use when searching by VDC
name This property is required. str
The name of Segment Profile
id str
nsxt_manager_id str
Segment Profile search context. Use when searching by NSX-T manager
vdc_group_id str

Segment Profile search context. Use when searching by VDC group

Note: only one of nsxt_manager_id, vdc_id, vdc_group_id can be used

vdc_id str
Segment Profile search context. Use when searching by VDC
name This property is required. String
The name of Segment Profile
id String
nsxtManagerId String
Segment Profile search context. Use when searching by NSX-T manager
vdcGroupId String

Segment Profile search context. Use when searching by VDC group

Note: only one of nsxt_manager_id, vdc_id, vdc_group_id can be used

vdcId String
Segment Profile search context. Use when searching by VDC

getNsxtSegmentMacDiscoveryProfile Result

The following output properties are available:

Description string
Description of MAC Discovery Profile
Id string
IsMacChangeEnabled bool
Defines whether source MAC address change is enabled
IsMacLearningEnabled bool
Defines whether source MAC address learning is enabled
IsUnknownUnicastFloodingEnabled bool
Defines whether unknown unicast flooding rule is enabled This allows flooding for unlearned MAC for ingress traffic
MacLearningAgingTime double
Aging time in seconds for learned MAC address. Indicates how long learned MAC address remain
MacLimit double
The maximum number of MAC addresses that can be learned on this port
MacPolicy string
The policy after MAC Limit is exceeded. It can be either ALLOW or DROP
Name string
NsxtManagerId string
VdcGroupId string
VdcId string
Description string
Description of MAC Discovery Profile
Id string
IsMacChangeEnabled bool
Defines whether source MAC address change is enabled
IsMacLearningEnabled bool
Defines whether source MAC address learning is enabled
IsUnknownUnicastFloodingEnabled bool
Defines whether unknown unicast flooding rule is enabled This allows flooding for unlearned MAC for ingress traffic
MacLearningAgingTime float64
Aging time in seconds for learned MAC address. Indicates how long learned MAC address remain
MacLimit float64
The maximum number of MAC addresses that can be learned on this port
MacPolicy string
The policy after MAC Limit is exceeded. It can be either ALLOW or DROP
Name string
NsxtManagerId string
VdcGroupId string
VdcId string
description String
Description of MAC Discovery Profile
id String
isMacChangeEnabled Boolean
Defines whether source MAC address change is enabled
isMacLearningEnabled Boolean
Defines whether source MAC address learning is enabled
isUnknownUnicastFloodingEnabled Boolean
Defines whether unknown unicast flooding rule is enabled This allows flooding for unlearned MAC for ingress traffic
macLearningAgingTime Double
Aging time in seconds for learned MAC address. Indicates how long learned MAC address remain
macLimit Double
The maximum number of MAC addresses that can be learned on this port
macPolicy String
The policy after MAC Limit is exceeded. It can be either ALLOW or DROP
name String
nsxtManagerId String
vdcGroupId String
vdcId String
description string
Description of MAC Discovery Profile
id string
isMacChangeEnabled boolean
Defines whether source MAC address change is enabled
isMacLearningEnabled boolean
Defines whether source MAC address learning is enabled
isUnknownUnicastFloodingEnabled boolean
Defines whether unknown unicast flooding rule is enabled This allows flooding for unlearned MAC for ingress traffic
macLearningAgingTime number
Aging time in seconds for learned MAC address. Indicates how long learned MAC address remain
macLimit number
The maximum number of MAC addresses that can be learned on this port
macPolicy string
The policy after MAC Limit is exceeded. It can be either ALLOW or DROP
name string
nsxtManagerId string
vdcGroupId string
vdcId string
description str
Description of MAC Discovery Profile
id str
is_mac_change_enabled bool
Defines whether source MAC address change is enabled
is_mac_learning_enabled bool
Defines whether source MAC address learning is enabled
is_unknown_unicast_flooding_enabled bool
Defines whether unknown unicast flooding rule is enabled This allows flooding for unlearned MAC for ingress traffic
mac_learning_aging_time float
Aging time in seconds for learned MAC address. Indicates how long learned MAC address remain
mac_limit float
The maximum number of MAC addresses that can be learned on this port
mac_policy str
The policy after MAC Limit is exceeded. It can be either ALLOW or DROP
name str
nsxt_manager_id str
vdc_group_id str
vdc_id str
description String
Description of MAC Discovery Profile
id String
isMacChangeEnabled Boolean
Defines whether source MAC address change is enabled
isMacLearningEnabled Boolean
Defines whether source MAC address learning is enabled
isUnknownUnicastFloodingEnabled Boolean
Defines whether unknown unicast flooding rule is enabled This allows flooding for unlearned MAC for ingress traffic
macLearningAgingTime Number
Aging time in seconds for learned MAC address. Indicates how long learned MAC address remain
macLimit Number
The maximum number of MAC addresses that can be learned on this port
macPolicy String
The policy after MAC Limit is exceeded. It can be either ALLOW or DROP
name String
nsxtManagerId String
vdcGroupId String
vdcId String

Package Details

Repository
vcd vmware/terraform-provider-vcd
License
Notes
This Pulumi package is based on the vcd Terraform Provider.