1. Packages
  2. Nsxt Provider
  3. API Docs
  4. getPolicySegment
nsxt 3.8.1 published on Wednesday, Apr 30, 2025 by vmware

nsxt.getPolicySegment

Explore with Pulumi AI

nsxt logo
nsxt 3.8.1 published on Wednesday, Apr 30, 2025 by vmware

    This data source provides information about policy Segment configured on NSX. This data source is applicable to NSX Global Manager, NSX Policy Manager and VMC.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as nsxt from "@pulumi/nsxt";
    
    const test = nsxt.getPolicySegment({
        displayName: "segment1",
    });
    
    import pulumi
    import pulumi_nsxt as nsxt
    
    test = nsxt.get_policy_segment(display_name="segment1")
    
    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 {
    		_, err := nsxt.LookupPolicySegment(ctx, &nsxt.LookupPolicySegmentArgs{
    			DisplayName: pulumi.StringRef("segment1"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Nsxt = Pulumi.Nsxt;
    
    return await Deployment.RunAsync(() => 
    {
        var test = Nsxt.GetPolicySegment.Invoke(new()
        {
            DisplayName = "segment1",
        });
    
    });
    
    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.GetPolicySegmentArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var test = NsxtFunctions.getPolicySegment(GetPolicySegmentArgs.builder()
                .displayName("segment1")
                .build());
    
        }
    }
    
    variables:
      test:
        fn::invoke:
          function: nsxt:getPolicySegment
          arguments:
            displayName: segment1
    

    Multi-Tenancy

    import * as pulumi from "@pulumi/pulumi";
    import * as nsxt from "@pulumi/nsxt";
    
    const demoproj = nsxt.getPolicyProject({
        displayName: "demoproj",
    });
    const demoseg = demoproj.then(demoproj => nsxt.getPolicySegment({
        context: {
            projectId: demoproj.id,
        },
        displayName: "demoseg",
    }));
    
    import pulumi
    import pulumi_nsxt as nsxt
    
    demoproj = nsxt.get_policy_project(display_name="demoproj")
    demoseg = nsxt.get_policy_segment(context={
            "project_id": demoproj.id,
        },
        display_name="demoseg")
    
    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 {
    		demoproj, err := nsxt.LookupPolicyProject(ctx, &nsxt.LookupPolicyProjectArgs{
    			DisplayName: pulumi.StringRef("demoproj"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = nsxt.LookupPolicySegment(ctx, &nsxt.LookupPolicySegmentArgs{
    			Context: nsxt.GetPolicySegmentContext{
    				ProjectId: demoproj.Id,
    			},
    			DisplayName: pulumi.StringRef("demoseg"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Nsxt = Pulumi.Nsxt;
    
    return await Deployment.RunAsync(() => 
    {
        var demoproj = Nsxt.GetPolicyProject.Invoke(new()
        {
            DisplayName = "demoproj",
        });
    
        var demoseg = Nsxt.GetPolicySegment.Invoke(new()
        {
            Context = new Nsxt.Inputs.GetPolicySegmentContextInputArgs
            {
                ProjectId = demoproj.Apply(getPolicyProjectResult => getPolicyProjectResult.Id),
            },
            DisplayName = "demoseg",
        });
    
    });
    
    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.GetPolicyProjectArgs;
    import com.pulumi.nsxt.inputs.GetPolicySegmentArgs;
    import com.pulumi.nsxt.inputs.GetPolicySegmentContextArgs;
    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 demoproj = NsxtFunctions.getPolicyProject(GetPolicyProjectArgs.builder()
                .displayName("demoproj")
                .build());
    
            final var demoseg = NsxtFunctions.getPolicySegment(GetPolicySegmentArgs.builder()
                .context(GetPolicySegmentContextArgs.builder()
                    .projectId(demoproj.applyValue(getPolicyProjectResult -> getPolicyProjectResult.id()))
                    .build())
                .displayName("demoseg")
                .build());
    
        }
    }
    
    variables:
      demoproj:
        fn::invoke:
          function: nsxt:getPolicyProject
          arguments:
            displayName: demoproj
      demoseg:
        fn::invoke:
          function: nsxt:getPolicySegment
          arguments:
            context:
              projectId: ${demoproj.id}
            displayName: demoseg
    

    Using getPolicySegment

    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 getPolicySegment(args: GetPolicySegmentArgs, opts?: InvokeOptions): Promise<GetPolicySegmentResult>
    function getPolicySegmentOutput(args: GetPolicySegmentOutputArgs, opts?: InvokeOptions): Output<GetPolicySegmentResult>
    def get_policy_segment(context: Optional[GetPolicySegmentContext] = None,
                           description: Optional[str] = None,
                           display_name: Optional[str] = None,
                           id: Optional[str] = None,
                           opts: Optional[InvokeOptions] = None) -> GetPolicySegmentResult
    def get_policy_segment_output(context: Optional[pulumi.Input[GetPolicySegmentContextArgs]] = None,
                           description: Optional[pulumi.Input[str]] = None,
                           display_name: Optional[pulumi.Input[str]] = None,
                           id: Optional[pulumi.Input[str]] = None,
                           opts: Optional[InvokeOptions] = None) -> Output[GetPolicySegmentResult]
    func LookupPolicySegment(ctx *Context, args *LookupPolicySegmentArgs, opts ...InvokeOption) (*LookupPolicySegmentResult, error)
    func LookupPolicySegmentOutput(ctx *Context, args *LookupPolicySegmentOutputArgs, opts ...InvokeOption) LookupPolicySegmentResultOutput

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

    public static class GetPolicySegment 
    {
        public static Task<GetPolicySegmentResult> InvokeAsync(GetPolicySegmentArgs args, InvokeOptions? opts = null)
        public static Output<GetPolicySegmentResult> Invoke(GetPolicySegmentInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetPolicySegmentResult> getPolicySegment(GetPolicySegmentArgs args, InvokeOptions options)
    public static Output<GetPolicySegmentResult> getPolicySegment(GetPolicySegmentArgs args, InvokeOptions options)
    
    fn::invoke:
      function: nsxt:index/getPolicySegment:getPolicySegment
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Context GetPolicySegmentContext
    The context which the object belongs to
    Description string
    The description of the resource.
    DisplayName string
    The Display Name prefix of the Segment to retrieve.
    Id string
    The ID of Segment to retrieve. If ID is specified, no additional argument should be configured.
    Context GetPolicySegmentContext
    The context which the object belongs to
    Description string
    The description of the resource.
    DisplayName string
    The Display Name prefix of the Segment to retrieve.
    Id string
    The ID of Segment to retrieve. If ID is specified, no additional argument should be configured.
    context GetPolicySegmentContext
    The context which the object belongs to
    description String
    The description of the resource.
    displayName String
    The Display Name prefix of the Segment to retrieve.
    id String
    The ID of Segment to retrieve. If ID is specified, no additional argument should be configured.
    context GetPolicySegmentContext
    The context which the object belongs to
    description string
    The description of the resource.
    displayName string
    The Display Name prefix of the Segment to retrieve.
    id string
    The ID of Segment to retrieve. If ID is specified, no additional argument should be configured.
    context GetPolicySegmentContext
    The context which the object belongs to
    description str
    The description of the resource.
    display_name str
    The Display Name prefix of the Segment to retrieve.
    id str
    The ID of Segment to retrieve. If ID is specified, no additional argument should be configured.
    context Property Map
    The context which the object belongs to
    description String
    The description of the resource.
    displayName String
    The Display Name prefix of the Segment to retrieve.
    id String
    The ID of Segment to retrieve. If ID is specified, no additional argument should be configured.

    getPolicySegment Result

    The following output properties are available:

    Description string
    The description of the resource.
    DisplayName string
    Id string
    Path string
    The NSX path of the policy resource.
    Context GetPolicySegmentContext
    Description string
    The description of the resource.
    DisplayName string
    Id string
    Path string
    The NSX path of the policy resource.
    Context GetPolicySegmentContext
    description String
    The description of the resource.
    displayName String
    id String
    path String
    The NSX path of the policy resource.
    context GetPolicySegmentContext
    description string
    The description of the resource.
    displayName string
    id string
    path string
    The NSX path of the policy resource.
    context GetPolicySegmentContext
    description str
    The description of the resource.
    display_name str
    id str
    path str
    The NSX path of the policy resource.
    context GetPolicySegmentContext
    description String
    The description of the resource.
    displayName String
    id String
    path String
    The NSX path of the policy resource.
    context Property Map

    Supporting Types

    GetPolicySegmentContext

    ProjectId string
    The ID of the project which the object belongs to
    ProjectId string
    The ID of the project which the object belongs to
    projectId String
    The ID of the project which the object belongs to
    projectId string
    The ID of the project which the object belongs to
    project_id str
    The ID of the project which the object belongs to
    projectId String
    The ID of the project which the object belongs to

    Package Details

    Repository
    nsxt vmware/terraform-provider-nsxt
    License
    Notes
    This Pulumi package is based on the nsxt Terraform Provider.
    nsxt logo
    nsxt 3.8.1 published on Wednesday, Apr 30, 2025 by vmware