1. Packages
  2. Nsxt Provider
  3. API Docs
  4. getPolicyGatewayPolicy
nsxt 3.8.0 published on Monday, Apr 14, 2025 by vmware

nsxt.getPolicyGatewayPolicy

Explore with Pulumi AI

This data source provides information about policy Gateway Policues configured on NSX. This data source can be useful for fetching policy path to use in nsxt.PolicyPredefinedGatewayPolicy resource.

This data source is applicable to NSX Policy Manager, NSX Global Manager and VMC.

Example Usage

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

const predefined = nsxt.getPolicyGatewayPolicy({
    displayName: "default",
});
Copy
import pulumi
import pulumi_nsxt as nsxt

predefined = nsxt.get_policy_gateway_policy(display_name="default")
Copy
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.LookupPolicyGatewayPolicy(ctx, &nsxt.LookupPolicyGatewayPolicyArgs{
			DisplayName: pulumi.StringRef("default"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nsxt = Pulumi.Nsxt;

return await Deployment.RunAsync(() => 
{
    var predefined = Nsxt.GetPolicyGatewayPolicy.Invoke(new()
    {
        DisplayName = "default",
    });

});
Copy
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.GetPolicyGatewayPolicyArgs;
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 predefined = NsxtFunctions.getPolicyGatewayPolicy(GetPolicyGatewayPolicyArgs.builder()
            .displayName("default")
            .build());

    }
}
Copy
variables:
  predefined:
    fn::invoke:
      function: nsxt:getPolicyGatewayPolicy
      arguments:
        displayName: default
Copy

Multi-Tenancy

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

const demoproj = nsxt.getPolicyProject({
    displayName: "demoproj",
});
const demopolicy = demoproj.then(demoproj => nsxt.getPolicyGatewayPolicy({
    context: {
        projectId: demoproj.id,
    },
    displayName: "default",
}));
Copy
import pulumi
import pulumi_nsxt as nsxt

demoproj = nsxt.get_policy_project(display_name="demoproj")
demopolicy = nsxt.get_policy_gateway_policy(context={
        "project_id": demoproj.id,
    },
    display_name="default")
Copy
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.LookupPolicyGatewayPolicy(ctx, &nsxt.LookupPolicyGatewayPolicyArgs{
			Context: nsxt.GetPolicyGatewayPolicyContext{
				ProjectId: demoproj.Id,
			},
			DisplayName: pulumi.StringRef("default"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
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 demopolicy = Nsxt.GetPolicyGatewayPolicy.Invoke(new()
    {
        Context = new Nsxt.Inputs.GetPolicyGatewayPolicyContextInputArgs
        {
            ProjectId = demoproj.Apply(getPolicyProjectResult => getPolicyProjectResult.Id),
        },
        DisplayName = "default",
    });

});
Copy
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.GetPolicyGatewayPolicyArgs;
import com.pulumi.nsxt.inputs.GetPolicyGatewayPolicyContextArgs;
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 demopolicy = NsxtFunctions.getPolicyGatewayPolicy(GetPolicyGatewayPolicyArgs.builder()
            .context(GetPolicyGatewayPolicyContextArgs.builder()
                .projectId(demoproj.applyValue(getPolicyProjectResult -> getPolicyProjectResult.id()))
                .build())
            .displayName("default")
            .build());

    }
}
Copy
variables:
  demoproj:
    fn::invoke:
      function: nsxt:getPolicyProject
      arguments:
        displayName: demoproj
  demopolicy:
    fn::invoke:
      function: nsxt:getPolicyGatewayPolicy
      arguments:
        context:
          projectId: ${demoproj.id}
        displayName: default
Copy

Using getPolicyGatewayPolicy

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 getPolicyGatewayPolicy(args: GetPolicyGatewayPolicyArgs, opts?: InvokeOptions): Promise<GetPolicyGatewayPolicyResult>
function getPolicyGatewayPolicyOutput(args: GetPolicyGatewayPolicyOutputArgs, opts?: InvokeOptions): Output<GetPolicyGatewayPolicyResult>
Copy
def get_policy_gateway_policy(category: Optional[str] = None,
                              context: Optional[GetPolicyGatewayPolicyContext] = None,
                              description: Optional[str] = None,
                              display_name: Optional[str] = None,
                              domain: Optional[str] = None,
                              id: Optional[str] = None,
                              opts: Optional[InvokeOptions] = None) -> GetPolicyGatewayPolicyResult
def get_policy_gateway_policy_output(category: Optional[pulumi.Input[str]] = None,
                              context: Optional[pulumi.Input[GetPolicyGatewayPolicyContextArgs]] = None,
                              description: Optional[pulumi.Input[str]] = None,
                              display_name: Optional[pulumi.Input[str]] = None,
                              domain: Optional[pulumi.Input[str]] = None,
                              id: Optional[pulumi.Input[str]] = None,
                              opts: Optional[InvokeOptions] = None) -> Output[GetPolicyGatewayPolicyResult]
Copy
func LookupPolicyGatewayPolicy(ctx *Context, args *LookupPolicyGatewayPolicyArgs, opts ...InvokeOption) (*LookupPolicyGatewayPolicyResult, error)
func LookupPolicyGatewayPolicyOutput(ctx *Context, args *LookupPolicyGatewayPolicyOutputArgs, opts ...InvokeOption) LookupPolicyGatewayPolicyResultOutput
Copy

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

public static class GetPolicyGatewayPolicy 
{
    public static Task<GetPolicyGatewayPolicyResult> InvokeAsync(GetPolicyGatewayPolicyArgs args, InvokeOptions? opts = null)
    public static Output<GetPolicyGatewayPolicyResult> Invoke(GetPolicyGatewayPolicyInvokeArgs args, InvokeOptions? opts = null)
}
Copy
public static CompletableFuture<GetPolicyGatewayPolicyResult> getPolicyGatewayPolicy(GetPolicyGatewayPolicyArgs args, InvokeOptions options)
public static Output<GetPolicyGatewayPolicyResult> getPolicyGatewayPolicy(GetPolicyGatewayPolicyArgs args, InvokeOptions options)
Copy
fn::invoke:
  function: nsxt:index/getPolicyGatewayPolicy:getPolicyGatewayPolicy
  arguments:
    # arguments dictionary
Copy

The following arguments are supported:

Category string
Category of the policy to retrieve. May be useful to retrieve default policy.
Context GetPolicyGatewayPolicyContext
The context which the object belongs to
Description string
The description of the resource.
DisplayName string
The Display Name prefix of the policy to retrieve.
Domain string
The domain of the policy, defaults to default. Needs to be specified in VMC environment.
Id string
The ID of the gateway policy to retrieve.
Category string
Category of the policy to retrieve. May be useful to retrieve default policy.
Context GetPolicyGatewayPolicyContext
The context which the object belongs to
Description string
The description of the resource.
DisplayName string
The Display Name prefix of the policy to retrieve.
Domain string
The domain of the policy, defaults to default. Needs to be specified in VMC environment.
Id string
The ID of the gateway policy to retrieve.
category String
Category of the policy to retrieve. May be useful to retrieve default policy.
context GetPolicyGatewayPolicyContext
The context which the object belongs to
description String
The description of the resource.
displayName String
The Display Name prefix of the policy to retrieve.
domain String
The domain of the policy, defaults to default. Needs to be specified in VMC environment.
id String
The ID of the gateway policy to retrieve.
category string
Category of the policy to retrieve. May be useful to retrieve default policy.
context GetPolicyGatewayPolicyContext
The context which the object belongs to
description string
The description of the resource.
displayName string
The Display Name prefix of the policy to retrieve.
domain string
The domain of the policy, defaults to default. Needs to be specified in VMC environment.
id string
The ID of the gateway policy to retrieve.
category str
Category of the policy to retrieve. May be useful to retrieve default policy.
context GetPolicyGatewayPolicyContext
The context which the object belongs to
description str
The description of the resource.
display_name str
The Display Name prefix of the policy to retrieve.
domain str
The domain of the policy, defaults to default. Needs to be specified in VMC environment.
id str
The ID of the gateway policy to retrieve.
category String
Category of the policy to retrieve. May be useful to retrieve default policy.
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 policy to retrieve.
domain String
The domain of the policy, defaults to default. Needs to be specified in VMC environment.
id String
The ID of the gateway policy to retrieve.

getPolicyGatewayPolicy Result

The following output properties are available:

Category string
Description string
The description of the resource.
DisplayName string
Id string
Path string
The NSX path of the policy resource.
Context GetPolicyGatewayPolicyContext
Domain string
Category string
Description string
The description of the resource.
DisplayName string
Id string
Path string
The NSX path of the policy resource.
Context GetPolicyGatewayPolicyContext
Domain string
category String
description String
The description of the resource.
displayName String
id String
path String
The NSX path of the policy resource.
context GetPolicyGatewayPolicyContext
domain String
category string
description string
The description of the resource.
displayName string
id string
path string
The NSX path of the policy resource.
context GetPolicyGatewayPolicyContext
domain string
category str
description str
The description of the resource.
display_name str
id str
path str
The NSX path of the policy resource.
context GetPolicyGatewayPolicyContext
domain str
category String
description String
The description of the resource.
displayName String
id String
path String
The NSX path of the policy resource.
context Property Map
domain String

Supporting Types

GetPolicyGatewayPolicyContext

ProjectId This property is required. string
The ID of the project which the object belongs to
ProjectId This property is required. string
The ID of the project which the object belongs to
projectId This property is required. String
The ID of the project which the object belongs to
projectId This property is required. string
The ID of the project which the object belongs to
project_id This property is required. str
The ID of the project which the object belongs to
projectId This property is required. 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.