1. Packages
  2. Nsxt Provider
  3. API Docs
  4. getTransportNodeRealization
nsxt 3.9.0 published on Friday, Jun 20, 2025 by vmware

nsxt.getTransportNodeRealization

Explore with Pulumi AI

nsxt logo
nsxt 3.9.0 published on Friday, Jun 20, 2025 by vmware

    This data source provides information about the realization of a transport node resource on NSX manager. This data source will wait until realization is determined as either success or error. It is recommended to use this data source if further configuration depends on transport node realization.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as nsxt from "@pulumi/nsxt";
    
    const testEdgeTransportNode = new nsxt.EdgeTransportNode("testEdgeTransportNode", {
        description: "Terraform-deployed edge node",
        displayName: "tf_edge_node",
        standardHostSwitches: [{
            ipAssignment: {
                staticIpPool: data.nsxt_ip_pool.ipp1.id,
            },
            transportZoneEndpoints: [{
                transportZone: data.nsxt_transport_zone.tz1.id,
                transportZoneProfiles: ["52035bb3-ab02-4a08-9884-18631312e50a"],
            }],
            hostSwitchProfiles: [nsxt_policy_uplink_host_switch_profile.hsw_profile1.path],
            pnics: [{
                deviceName: "fp-eth0",
                uplinkName: "uplink1",
            }],
        }],
        deploymentConfig: {
            formFactor: "SMALL",
            nodeUserSettings: {
                cliPassword: "some_cli_password",
                rootPassword: "some_other_password",
            },
            vmDeploymentConfig: {
                managementNetworkId: data.vsphere_network.network1.id,
                dataNetworkIds: [data.vsphere_network.network1.id],
                computeId: data.vsphere_compute_cluster.compute_cluster1.id,
                storageId: data.vsphere_datastore.datastore1.id,
                vcId: nsxt_compute_manager.vc1.id,
                hostId: data.vsphere_host.host1.id,
            },
        },
        nodeSettings: {
            hostname: "tf-edge-node",
            allowSshRootLogin: true,
            enableSsh: true,
        },
    });
    const testTransportNodeRealization = nsxt.getTransportNodeRealizationOutput({
        id: testEdgeTransportNode.edgeTransportNodeId,
        timeout: 60,
    });
    
    import pulumi
    import pulumi_nsxt as nsxt
    
    test_edge_transport_node = nsxt.EdgeTransportNode("testEdgeTransportNode",
        description="Terraform-deployed edge node",
        display_name="tf_edge_node",
        standard_host_switches=[{
            "ip_assignment": {
                "static_ip_pool": data["nsxt_ip_pool"]["ipp1"]["id"],
            },
            "transport_zone_endpoints": [{
                "transport_zone": data["nsxt_transport_zone"]["tz1"]["id"],
                "transport_zone_profiles": ["52035bb3-ab02-4a08-9884-18631312e50a"],
            }],
            "host_switch_profiles": [nsxt_policy_uplink_host_switch_profile["hsw_profile1"]["path"]],
            "pnics": [{
                "device_name": "fp-eth0",
                "uplink_name": "uplink1",
            }],
        }],
        deployment_config={
            "form_factor": "SMALL",
            "node_user_settings": {
                "cli_password": "some_cli_password",
                "root_password": "some_other_password",
            },
            "vm_deployment_config": {
                "management_network_id": data["vsphere_network"]["network1"]["id"],
                "data_network_ids": [data["vsphere_network"]["network1"]["id"]],
                "compute_id": data["vsphere_compute_cluster"]["compute_cluster1"]["id"],
                "storage_id": data["vsphere_datastore"]["datastore1"]["id"],
                "vc_id": nsxt_compute_manager["vc1"]["id"],
                "host_id": data["vsphere_host"]["host1"]["id"],
            },
        },
        node_settings={
            "hostname": "tf-edge-node",
            "allow_ssh_root_login": True,
            "enable_ssh": True,
        })
    test_transport_node_realization = nsxt.get_transport_node_realization_output(id=test_edge_transport_node.edge_transport_node_id,
        timeout=60)
    
    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 {
    		testEdgeTransportNode, err := nsxt.NewEdgeTransportNode(ctx, "testEdgeTransportNode", &nsxt.EdgeTransportNodeArgs{
    			Description: pulumi.String("Terraform-deployed edge node"),
    			DisplayName: pulumi.String("tf_edge_node"),
    			StandardHostSwitches: nsxt.EdgeTransportNodeStandardHostSwitchArray{
    				&nsxt.EdgeTransportNodeStandardHostSwitchArgs{
    					IpAssignment: &nsxt.EdgeTransportNodeStandardHostSwitchIpAssignmentArgs{
    						StaticIpPool: pulumi.Any(data.Nsxt_ip_pool.Ipp1.Id),
    					},
    					TransportZoneEndpoints: nsxt.EdgeTransportNodeStandardHostSwitchTransportZoneEndpointArray{
    						&nsxt.EdgeTransportNodeStandardHostSwitchTransportZoneEndpointArgs{
    							TransportZone: pulumi.Any(data.Nsxt_transport_zone.Tz1.Id),
    							TransportZoneProfiles: pulumi.StringArray{
    								pulumi.String("52035bb3-ab02-4a08-9884-18631312e50a"),
    							},
    						},
    					},
    					HostSwitchProfiles: pulumi.StringArray{
    						nsxt_policy_uplink_host_switch_profile.Hsw_profile1.Path,
    					},
    					Pnics: nsxt.EdgeTransportNodeStandardHostSwitchPnicArray{
    						&nsxt.EdgeTransportNodeStandardHostSwitchPnicArgs{
    							DeviceName: pulumi.String("fp-eth0"),
    							UplinkName: pulumi.String("uplink1"),
    						},
    					},
    				},
    			},
    			DeploymentConfig: &nsxt.EdgeTransportNodeDeploymentConfigArgs{
    				FormFactor: pulumi.String("SMALL"),
    				NodeUserSettings: &nsxt.EdgeTransportNodeDeploymentConfigNodeUserSettingsArgs{
    					CliPassword:  pulumi.String("some_cli_password"),
    					RootPassword: pulumi.String("some_other_password"),
    				},
    				VmDeploymentConfig: &nsxt.EdgeTransportNodeDeploymentConfigVmDeploymentConfigArgs{
    					ManagementNetworkId: pulumi.Any(data.Vsphere_network.Network1.Id),
    					DataNetworkIds: pulumi.StringArray{
    						data.Vsphere_network.Network1.Id,
    					},
    					ComputeId: pulumi.Any(data.Vsphere_compute_cluster.Compute_cluster1.Id),
    					StorageId: pulumi.Any(data.Vsphere_datastore.Datastore1.Id),
    					VcId:      pulumi.Any(nsxt_compute_manager.Vc1.Id),
    					HostId:    pulumi.Any(data.Vsphere_host.Host1.Id),
    				},
    			},
    			NodeSettings: &nsxt.EdgeTransportNodeNodeSettingsArgs{
    				Hostname:          pulumi.String("tf-edge-node"),
    				AllowSshRootLogin: pulumi.Bool(true),
    				EnableSsh:         pulumi.Bool(true),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_ = nsxt.GetTransportNodeRealizationOutput(ctx, nsxt.GetTransportNodeRealizationOutputArgs{
    			Id:      testEdgeTransportNode.EdgeTransportNodeId,
    			Timeout: pulumi.Float64(60),
    		}, nil)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Nsxt = Pulumi.Nsxt;
    
    return await Deployment.RunAsync(() => 
    {
        var testEdgeTransportNode = new Nsxt.EdgeTransportNode("testEdgeTransportNode", new()
        {
            Description = "Terraform-deployed edge node",
            DisplayName = "tf_edge_node",
            StandardHostSwitches = new[]
            {
                new Nsxt.Inputs.EdgeTransportNodeStandardHostSwitchArgs
                {
                    IpAssignment = new Nsxt.Inputs.EdgeTransportNodeStandardHostSwitchIpAssignmentArgs
                    {
                        StaticIpPool = data.Nsxt_ip_pool.Ipp1.Id,
                    },
                    TransportZoneEndpoints = new[]
                    {
                        new Nsxt.Inputs.EdgeTransportNodeStandardHostSwitchTransportZoneEndpointArgs
                        {
                            TransportZone = data.Nsxt_transport_zone.Tz1.Id,
                            TransportZoneProfiles = new[]
                            {
                                "52035bb3-ab02-4a08-9884-18631312e50a",
                            },
                        },
                    },
                    HostSwitchProfiles = new[]
                    {
                        nsxt_policy_uplink_host_switch_profile.Hsw_profile1.Path,
                    },
                    Pnics = new[]
                    {
                        new Nsxt.Inputs.EdgeTransportNodeStandardHostSwitchPnicArgs
                        {
                            DeviceName = "fp-eth0",
                            UplinkName = "uplink1",
                        },
                    },
                },
            },
            DeploymentConfig = new Nsxt.Inputs.EdgeTransportNodeDeploymentConfigArgs
            {
                FormFactor = "SMALL",
                NodeUserSettings = new Nsxt.Inputs.EdgeTransportNodeDeploymentConfigNodeUserSettingsArgs
                {
                    CliPassword = "some_cli_password",
                    RootPassword = "some_other_password",
                },
                VmDeploymentConfig = new Nsxt.Inputs.EdgeTransportNodeDeploymentConfigVmDeploymentConfigArgs
                {
                    ManagementNetworkId = data.Vsphere_network.Network1.Id,
                    DataNetworkIds = new[]
                    {
                        data.Vsphere_network.Network1.Id,
                    },
                    ComputeId = data.Vsphere_compute_cluster.Compute_cluster1.Id,
                    StorageId = data.Vsphere_datastore.Datastore1.Id,
                    VcId = nsxt_compute_manager.Vc1.Id,
                    HostId = data.Vsphere_host.Host1.Id,
                },
            },
            NodeSettings = new Nsxt.Inputs.EdgeTransportNodeNodeSettingsArgs
            {
                Hostname = "tf-edge-node",
                AllowSshRootLogin = true,
                EnableSsh = true,
            },
        });
    
        var testTransportNodeRealization = Nsxt.GetTransportNodeRealization.Invoke(new()
        {
            Id = testEdgeTransportNode.EdgeTransportNodeId,
            Timeout = 60,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.nsxt.EdgeTransportNode;
    import com.pulumi.nsxt.EdgeTransportNodeArgs;
    import com.pulumi.nsxt.inputs.EdgeTransportNodeStandardHostSwitchArgs;
    import com.pulumi.nsxt.inputs.EdgeTransportNodeStandardHostSwitchIpAssignmentArgs;
    import com.pulumi.nsxt.inputs.EdgeTransportNodeDeploymentConfigArgs;
    import com.pulumi.nsxt.inputs.EdgeTransportNodeDeploymentConfigNodeUserSettingsArgs;
    import com.pulumi.nsxt.inputs.EdgeTransportNodeDeploymentConfigVmDeploymentConfigArgs;
    import com.pulumi.nsxt.inputs.EdgeTransportNodeNodeSettingsArgs;
    import com.pulumi.nsxt.NsxtFunctions;
    import com.pulumi.nsxt.inputs.GetTransportNodeRealizationArgs;
    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 testEdgeTransportNode = new EdgeTransportNode("testEdgeTransportNode", EdgeTransportNodeArgs.builder()
                .description("Terraform-deployed edge node")
                .displayName("tf_edge_node")
                .standardHostSwitches(EdgeTransportNodeStandardHostSwitchArgs.builder()
                    .ipAssignment(EdgeTransportNodeStandardHostSwitchIpAssignmentArgs.builder()
                        .staticIpPool(data.nsxt_ip_pool().ipp1().id())
                        .build())
                    .transportZoneEndpoints(EdgeTransportNodeStandardHostSwitchTransportZoneEndpointArgs.builder()
                        .transportZone(data.nsxt_transport_zone().tz1().id())
                        .transportZoneProfiles("52035bb3-ab02-4a08-9884-18631312e50a")
                        .build())
                    .hostSwitchProfiles(nsxt_policy_uplink_host_switch_profile.hsw_profile1().path())
                    .pnics(EdgeTransportNodeStandardHostSwitchPnicArgs.builder()
                        .deviceName("fp-eth0")
                        .uplinkName("uplink1")
                        .build())
                    .build())
                .deploymentConfig(EdgeTransportNodeDeploymentConfigArgs.builder()
                    .formFactor("SMALL")
                    .nodeUserSettings(EdgeTransportNodeDeploymentConfigNodeUserSettingsArgs.builder()
                        .cliPassword("some_cli_password")
                        .rootPassword("some_other_password")
                        .build())
                    .vmDeploymentConfig(EdgeTransportNodeDeploymentConfigVmDeploymentConfigArgs.builder()
                        .managementNetworkId(data.vsphere_network().network1().id())
                        .dataNetworkIds(data.vsphere_network().network1().id())
                        .computeId(data.vsphere_compute_cluster().compute_cluster1().id())
                        .storageId(data.vsphere_datastore().datastore1().id())
                        .vcId(nsxt_compute_manager.vc1().id())
                        .hostId(data.vsphere_host().host1().id())
                        .build())
                    .build())
                .nodeSettings(EdgeTransportNodeNodeSettingsArgs.builder()
                    .hostname("tf-edge-node")
                    .allowSshRootLogin(true)
                    .enableSsh(true)
                    .build())
                .build());
    
            final var testTransportNodeRealization = NsxtFunctions.getTransportNodeRealization(GetTransportNodeRealizationArgs.builder()
                .id(testEdgeTransportNode.edgeTransportNodeId())
                .timeout(60)
                .build());
    
        }
    }
    
    resources:
      testEdgeTransportNode:
        type: nsxt:EdgeTransportNode
        properties:
          description: Terraform-deployed edge node
          displayName: tf_edge_node
          standardHostSwitches:
            - ipAssignment:
                staticIpPool: ${data.nsxt_ip_pool.ipp1.id}
              transportZoneEndpoints:
                - transportZone: ${data.nsxt_transport_zone.tz1.id}
                  transportZoneProfiles:
                    - 52035bb3-ab02-4a08-9884-18631312e50a
              hostSwitchProfiles:
                - ${nsxt_policy_uplink_host_switch_profile.hsw_profile1.path}
              pnics:
                - deviceName: fp-eth0
                  uplinkName: uplink1
          deploymentConfig:
            formFactor: SMALL
            nodeUserSettings:
              cliPassword: some_cli_password
              rootPassword: some_other_password
            vmDeploymentConfig:
              managementNetworkId: ${data.vsphere_network.network1.id}
              dataNetworkIds:
                - ${data.vsphere_network.network1.id}
              computeId: ${data.vsphere_compute_cluster.compute_cluster1.id}
              storageId: ${data.vsphere_datastore.datastore1.id}
              vcId: ${nsxt_compute_manager.vc1.id}
              hostId: ${data.vsphere_host.host1.id}
          nodeSettings:
            hostname: tf-edge-node
            allowSshRootLogin: true
            enableSsh: true
    variables:
      testTransportNodeRealization:
        fn::invoke:
          function: nsxt:getTransportNodeRealization
          arguments:
            id: ${testEdgeTransportNode.edgeTransportNodeId}
            timeout: 60
    

    Using getTransportNodeRealization

    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 getTransportNodeRealization(args: GetTransportNodeRealizationArgs, opts?: InvokeOptions): Promise<GetTransportNodeRealizationResult>
    function getTransportNodeRealizationOutput(args: GetTransportNodeRealizationOutputArgs, opts?: InvokeOptions): Output<GetTransportNodeRealizationResult>
    def get_transport_node_realization(delay: Optional[float] = None,
                                       id: Optional[str] = None,
                                       timeout: Optional[float] = None,
                                       opts: Optional[InvokeOptions] = None) -> GetTransportNodeRealizationResult
    def get_transport_node_realization_output(delay: Optional[pulumi.Input[float]] = None,
                                       id: Optional[pulumi.Input[str]] = None,
                                       timeout: Optional[pulumi.Input[float]] = None,
                                       opts: Optional[InvokeOptions] = None) -> Output[GetTransportNodeRealizationResult]
    func GetTransportNodeRealization(ctx *Context, args *GetTransportNodeRealizationArgs, opts ...InvokeOption) (*GetTransportNodeRealizationResult, error)
    func GetTransportNodeRealizationOutput(ctx *Context, args *GetTransportNodeRealizationOutputArgs, opts ...InvokeOption) GetTransportNodeRealizationResultOutput

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

    public static class GetTransportNodeRealization 
    {
        public static Task<GetTransportNodeRealizationResult> InvokeAsync(GetTransportNodeRealizationArgs args, InvokeOptions? opts = null)
        public static Output<GetTransportNodeRealizationResult> Invoke(GetTransportNodeRealizationInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetTransportNodeRealizationResult> getTransportNodeRealization(GetTransportNodeRealizationArgs args, InvokeOptions options)
    public static Output<GetTransportNodeRealizationResult> getTransportNodeRealization(GetTransportNodeRealizationArgs args, InvokeOptions options)
    
    fn::invoke:
      function: nsxt:index/getTransportNodeRealization:getTransportNodeRealization
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Id string
    ID of the resource.
    Delay double
    Delay (in seconds) before realization polling is started. Default is set to 1.
    Timeout double
    Timeout (in seconds) for realization polling. Default is set to 1200.
    Id string
    ID of the resource.
    Delay float64
    Delay (in seconds) before realization polling is started. Default is set to 1.
    Timeout float64
    Timeout (in seconds) for realization polling. Default is set to 1200.
    id String
    ID of the resource.
    delay Double
    Delay (in seconds) before realization polling is started. Default is set to 1.
    timeout Double
    Timeout (in seconds) for realization polling. Default is set to 1200.
    id string
    ID of the resource.
    delay number
    Delay (in seconds) before realization polling is started. Default is set to 1.
    timeout number
    Timeout (in seconds) for realization polling. Default is set to 1200.
    id str
    ID of the resource.
    delay float
    Delay (in seconds) before realization polling is started. Default is set to 1.
    timeout float
    Timeout (in seconds) for realization polling. Default is set to 1200.
    id String
    ID of the resource.
    delay Number
    Delay (in seconds) before realization polling is started. Default is set to 1.
    timeout Number
    Timeout (in seconds) for realization polling. Default is set to 1200.

    getTransportNodeRealization Result

    The following output properties are available:

    Id string
    State string
    The realization state of the resource. Transitional states are: "pending", "in_progress", "in_sync", "unknown". Target states are: "success", "failed", "partial_success", "orphaned", "error".
    Delay double
    Timeout double
    Id string
    State string
    The realization state of the resource. Transitional states are: "pending", "in_progress", "in_sync", "unknown". Target states are: "success", "failed", "partial_success", "orphaned", "error".
    Delay float64
    Timeout float64
    id String
    state String
    The realization state of the resource. Transitional states are: "pending", "in_progress", "in_sync", "unknown". Target states are: "success", "failed", "partial_success", "orphaned", "error".
    delay Double
    timeout Double
    id string
    state string
    The realization state of the resource. Transitional states are: "pending", "in_progress", "in_sync", "unknown". Target states are: "success", "failed", "partial_success", "orphaned", "error".
    delay number
    timeout number
    id str
    state str
    The realization state of the resource. Transitional states are: "pending", "in_progress", "in_sync", "unknown". Target states are: "success", "failed", "partial_success", "orphaned", "error".
    delay float
    timeout float
    id String
    state String
    The realization state of the resource. Transitional states are: "pending", "in_progress", "in_sync", "unknown". Target states are: "success", "failed", "partial_success", "orphaned", "error".
    delay Number
    timeout Number

    Package Details

    Repository
    nsxt vmware/terraform-provider-nsxt
    License
    Notes
    This Pulumi package is based on the nsxt Terraform Provider.
    nsxt logo
    nsxt 3.9.0 published on Friday, Jun 20, 2025 by vmware