privatedns

package
v3.33.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 7, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AAAARecord

type AAAARecord struct {
	pulumi.CustomResourceState

	// The FQDN of the DNS AAAA Record.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// The name of the DNS A Record.
	Name pulumi.StringOutput `pulumi:"name"`
	// A list of IPv6 Addresses.
	Records pulumi.StringArrayOutput `pulumi:"records"`
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	Ttl  pulumi.IntOutput       `pulumi:"ttl"`
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringOutput `pulumi:"zoneName"`
}

Enables you to manage DNS AAAA Records within Azure Private DNS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testResourceGroup, err := core.NewResourceGroup(ctx, "testResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		testZone, err := privatedns.NewZone(ctx, "testZone", &privatedns.ZoneArgs{
			ResourceGroupName: testResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewAAAARecord(ctx, "testAAAARecord", &privatedns.AAAARecordArgs{
			ZoneName:          testZone.Name,
			ResourceGroupName: testResourceGroup.Name,
			Ttl:               pulumi.Int(300),
			Records: pulumi.StringArray{
				pulumi.String("fd5d:70bc:930e:d008:0000:0000:0000:7334"),
				pulumi.String("fd5d:70bc:930e:d008::7335"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS AAAA Records can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/aAAARecord:AAAARecord test /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/zone1/AAAA/myrecord1

```

func GetAAAARecord

func GetAAAARecord(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AAAARecordState, opts ...pulumi.ResourceOption) (*AAAARecord, error)

GetAAAARecord gets an existing AAAARecord resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAAAARecord

func NewAAAARecord(ctx *pulumi.Context,
	name string, args *AAAARecordArgs, opts ...pulumi.ResourceOption) (*AAAARecord, error)

NewAAAARecord registers a new resource with the given unique name, arguments, and options.

func (AAAARecord) ElementType added in v3.31.1

func (AAAARecord) ElementType() reflect.Type

func (AAAARecord) ToAAAARecordOutput added in v3.31.1

func (i AAAARecord) ToAAAARecordOutput() AAAARecordOutput

func (AAAARecord) ToAAAARecordOutputWithContext added in v3.31.1

func (i AAAARecord) ToAAAARecordOutputWithContext(ctx context.Context) AAAARecordOutput

type AAAARecordArgs

type AAAARecordArgs struct {
	// The name of the DNS A Record.
	Name pulumi.StringPtrInput
	// A list of IPv6 Addresses.
	Records pulumi.StringArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringInput
}

The set of arguments for constructing a AAAARecord resource.

func (AAAARecordArgs) ElementType

func (AAAARecordArgs) ElementType() reflect.Type

type AAAARecordInput added in v3.31.1

type AAAARecordInput interface {
	pulumi.Input

	ToAAAARecordOutput() AAAARecordOutput
	ToAAAARecordOutputWithContext(ctx context.Context) AAAARecordOutput
}

type AAAARecordOutput added in v3.31.1

type AAAARecordOutput struct {
	*pulumi.OutputState
}

func (AAAARecordOutput) ElementType added in v3.31.1

func (AAAARecordOutput) ElementType() reflect.Type

func (AAAARecordOutput) ToAAAARecordOutput added in v3.31.1

func (o AAAARecordOutput) ToAAAARecordOutput() AAAARecordOutput

func (AAAARecordOutput) ToAAAARecordOutputWithContext added in v3.31.1

func (o AAAARecordOutput) ToAAAARecordOutputWithContext(ctx context.Context) AAAARecordOutput

type AAAARecordState

type AAAARecordState struct {
	// The FQDN of the DNS AAAA Record.
	Fqdn pulumi.StringPtrInput
	// The name of the DNS A Record.
	Name pulumi.StringPtrInput
	// A list of IPv6 Addresses.
	Records pulumi.StringArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntPtrInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringPtrInput
}

func (AAAARecordState) ElementType

func (AAAARecordState) ElementType() reflect.Type

type ARecord

type ARecord struct {
	pulumi.CustomResourceState

	// The FQDN of the DNS A Record.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// The name of the DNS A Record.
	Name pulumi.StringOutput `pulumi:"name"`
	// List of IPv4 Addresses.
	Records pulumi.StringArrayOutput `pulumi:"records"`
	// Specifies the resource group where the Private DNS Zone exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	Ttl  pulumi.IntOutput       `pulumi:"ttl"`
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringOutput `pulumi:"zoneName"`
}

Enables you to manage DNS A Records within Azure Private DNS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		exampleZone, err := privatedns.NewZone(ctx, "exampleZone", &privatedns.ZoneArgs{
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewARecord(ctx, "exampleARecord", &privatedns.ARecordArgs{
			ZoneName:          exampleZone.Name,
			ResourceGroupName: exampleResourceGroup.Name,
			Ttl:               pulumi.Int(300),
			Records: pulumi.StringArray{
				pulumi.String("10.0.180.17"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS A Records can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/aRecord:ARecord example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/zone1/A/myrecord1

```

func GetARecord

func GetARecord(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ARecordState, opts ...pulumi.ResourceOption) (*ARecord, error)

GetARecord gets an existing ARecord resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewARecord

func NewARecord(ctx *pulumi.Context,
	name string, args *ARecordArgs, opts ...pulumi.ResourceOption) (*ARecord, error)

NewARecord registers a new resource with the given unique name, arguments, and options.

func (ARecord) ElementType added in v3.31.1

func (ARecord) ElementType() reflect.Type

func (ARecord) ToARecordOutput added in v3.31.1

func (i ARecord) ToARecordOutput() ARecordOutput

func (ARecord) ToARecordOutputWithContext added in v3.31.1

func (i ARecord) ToARecordOutputWithContext(ctx context.Context) ARecordOutput

type ARecordArgs

type ARecordArgs struct {
	// The name of the DNS A Record.
	Name pulumi.StringPtrInput
	// List of IPv4 Addresses.
	Records pulumi.StringArrayInput
	// Specifies the resource group where the Private DNS Zone exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringInput
}

The set of arguments for constructing a ARecord resource.

func (ARecordArgs) ElementType

func (ARecordArgs) ElementType() reflect.Type

type ARecordInput added in v3.31.1

type ARecordInput interface {
	pulumi.Input

	ToARecordOutput() ARecordOutput
	ToARecordOutputWithContext(ctx context.Context) ARecordOutput
}

type ARecordOutput added in v3.31.1

type ARecordOutput struct {
	*pulumi.OutputState
}

func (ARecordOutput) ElementType added in v3.31.1

func (ARecordOutput) ElementType() reflect.Type

func (ARecordOutput) ToARecordOutput added in v3.31.1

func (o ARecordOutput) ToARecordOutput() ARecordOutput

func (ARecordOutput) ToARecordOutputWithContext added in v3.31.1

func (o ARecordOutput) ToARecordOutputWithContext(ctx context.Context) ARecordOutput

type ARecordState

type ARecordState struct {
	// The FQDN of the DNS A Record.
	Fqdn pulumi.StringPtrInput
	// The name of the DNS A Record.
	Name pulumi.StringPtrInput
	// List of IPv4 Addresses.
	Records pulumi.StringArrayInput
	// Specifies the resource group where the Private DNS Zone exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntPtrInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringPtrInput
}

func (ARecordState) ElementType

func (ARecordState) ElementType() reflect.Type

type CnameRecord

type CnameRecord struct {
	pulumi.CustomResourceState

	// The FQDN of the DNS CNAME Record.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// The name of the DNS CNAME Record.
	Name pulumi.StringOutput `pulumi:"name"`
	// The target of the CNAME.
	Record pulumi.StringOutput `pulumi:"record"`
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	Ttl  pulumi.IntOutput       `pulumi:"ttl"`
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringOutput `pulumi:"zoneName"`
}

Enables you to manage DNS CNAME Records within Azure Private DNS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		exampleZone, err := privatedns.NewZone(ctx, "exampleZone", &privatedns.ZoneArgs{
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewCnameRecord(ctx, "exampleCnameRecord", &privatedns.CnameRecordArgs{
			ZoneName:          exampleZone.Name,
			ResourceGroupName: exampleResourceGroup.Name,
			Ttl:               pulumi.Int(300),
			Record:            pulumi.String("contoso.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS CName Records can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/cnameRecord:CnameRecord example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/zone1/CName/myrecord1

```

func GetCnameRecord

func GetCnameRecord(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CnameRecordState, opts ...pulumi.ResourceOption) (*CnameRecord, error)

GetCnameRecord gets an existing CnameRecord resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCnameRecord

func NewCnameRecord(ctx *pulumi.Context,
	name string, args *CnameRecordArgs, opts ...pulumi.ResourceOption) (*CnameRecord, error)

NewCnameRecord registers a new resource with the given unique name, arguments, and options.

func (CnameRecord) ElementType added in v3.31.1

func (CnameRecord) ElementType() reflect.Type

func (CnameRecord) ToCnameRecordOutput added in v3.31.1

func (i CnameRecord) ToCnameRecordOutput() CnameRecordOutput

func (CnameRecord) ToCnameRecordOutputWithContext added in v3.31.1

func (i CnameRecord) ToCnameRecordOutputWithContext(ctx context.Context) CnameRecordOutput

type CnameRecordArgs

type CnameRecordArgs struct {
	// The name of the DNS CNAME Record.
	Name pulumi.StringPtrInput
	// The target of the CNAME.
	Record pulumi.StringInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringInput
}

The set of arguments for constructing a CnameRecord resource.

func (CnameRecordArgs) ElementType

func (CnameRecordArgs) ElementType() reflect.Type

type CnameRecordInput added in v3.31.1

type CnameRecordInput interface {
	pulumi.Input

	ToCnameRecordOutput() CnameRecordOutput
	ToCnameRecordOutputWithContext(ctx context.Context) CnameRecordOutput
}

type CnameRecordOutput added in v3.31.1

type CnameRecordOutput struct {
	*pulumi.OutputState
}

func (CnameRecordOutput) ElementType added in v3.31.1

func (CnameRecordOutput) ElementType() reflect.Type

func (CnameRecordOutput) ToCnameRecordOutput added in v3.31.1

func (o CnameRecordOutput) ToCnameRecordOutput() CnameRecordOutput

func (CnameRecordOutput) ToCnameRecordOutputWithContext added in v3.31.1

func (o CnameRecordOutput) ToCnameRecordOutputWithContext(ctx context.Context) CnameRecordOutput

type CnameRecordState

type CnameRecordState struct {
	// The FQDN of the DNS CNAME Record.
	Fqdn pulumi.StringPtrInput
	// The name of the DNS CNAME Record.
	Name pulumi.StringPtrInput
	// The target of the CNAME.
	Record pulumi.StringPtrInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntPtrInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringPtrInput
}

func (CnameRecordState) ElementType

func (CnameRecordState) ElementType() reflect.Type

type GetDnsZoneArgs added in v3.2.0

type GetDnsZoneArgs struct {
	// The name of the Private DNS Zone.
	Name string `pulumi:"name"`
	// The Name of the Resource Group where the Private DNS Zone exists.
	// If the Name of the Resource Group is not provided, the first Private DNS Zone from the list of Private
	// DNS Zones in your subscription that matches `name` will be returned.
	ResourceGroupName *string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getDnsZone.

type GetDnsZoneResult added in v3.2.0

type GetDnsZoneResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Maximum number of recordsets that can be created in this Private Zone.
	MaxNumberOfRecordSets int `pulumi:"maxNumberOfRecordSets"`
	// Maximum number of Virtual Networks that can be linked to this Private Zone.
	MaxNumberOfVirtualNetworkLinks int `pulumi:"maxNumberOfVirtualNetworkLinks"`
	// Maximum number of Virtual Networks that can be linked to this Private Zone with registration enabled.
	MaxNumberOfVirtualNetworkLinksWithRegistration int    `pulumi:"maxNumberOfVirtualNetworkLinksWithRegistration"`
	Name                                           string `pulumi:"name"`
	// The number of recordsets currently in the zone.
	NumberOfRecordSets int    `pulumi:"numberOfRecordSets"`
	ResourceGroupName  string `pulumi:"resourceGroupName"`
	// A mapping of tags for the zone.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getDnsZone.

func GetDnsZone added in v3.2.0

func GetDnsZone(ctx *pulumi.Context, args *GetDnsZoneArgs, opts ...pulumi.InvokeOption) (*GetDnsZoneResult, error)

Use this data source to access information about an existing Private DNS Zone.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "contoso-dns"
		example, err := privatedns.GetDnsZone(ctx, &privatedns.GetDnsZoneArgs{
			Name:              "contoso.internal",
			ResourceGroupName: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("privateDnsZoneId", example.Id)
		return nil
	})
}

```

type LinkService

type LinkService struct {
	pulumi.CustomResourceState

	// A globally unique DNS Name for your Private Link Service. You can use this alias to request a connection to your Private Link Service.
	Alias pulumi.StringOutput `pulumi:"alias"`
	// A list of Subscription UUID/GUID's that will be automatically be able to use this Private Link Service.
	AutoApprovalSubscriptionIds pulumi.StringArrayOutput `pulumi:"autoApprovalSubscriptionIds"`
	// Should the Private Link Service support the Proxy Protocol? Defaults to `false`.
	EnableProxyProtocol pulumi.BoolPtrOutput `pulumi:"enableProxyProtocol"`
	// A list of Frontend IP Configuration ID's from a Standard Load Balancer, where traffic from the Private Link Service should be routed. You can use Load Balancer Rules to direct this traffic to appropriate backend pools where your applications are running.
	LoadBalancerFrontendIpConfigurationIds pulumi.StringArrayOutput `pulumi:"loadBalancerFrontendIpConfigurationIds"`
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of this Private Link Service. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more (up to 8) `natIpConfiguration` block as defined below.
	NatIpConfigurations LinkServiceNatIpConfigurationArrayOutput `pulumi:"natIpConfigurations"`
	// The name of the Resource Group where the Private Link Service should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource. Changing this forces a new resource to be created.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A list of Subscription UUID/GUID's that will be able to see this Private Link Service.
	VisibilitySubscriptionIds pulumi.StringArrayOutput `pulumi:"visibilitySubscriptionIds"`
}

Manages a Private Link Service.

> **NOTE** Private Link is now in [GA](https://docs.microsoft.com/en-gb/azure/private-link/).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/lb"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/network"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "exampleVirtualNetwork", &network.VirtualNetworkArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.5.0.0/16"),
			},
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "exampleSubnet", &network.SubnetArgs{
			ResourceGroupName:  exampleResourceGroup.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.5.1.0/24"),
			},
			EnforcePrivateLinkServiceNetworkPolicies: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		examplePublicIp, err := network.NewPublicIp(ctx, "examplePublicIp", &network.PublicIpArgs{
			Sku:               pulumi.String("Standard"),
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			AllocationMethod:  pulumi.String("Static"),
		})
		if err != nil {
			return err
		}
		exampleLoadBalancer, err := lb.NewLoadBalancer(ctx, "exampleLoadBalancer", &lb.LoadBalancerArgs{
			Sku:               pulumi.String("Standard"),
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			FrontendIpConfigurations: lb.LoadBalancerFrontendIpConfigurationArray{
				&lb.LoadBalancerFrontendIpConfigurationArgs{
					Name:              examplePublicIp.Name,
					PublicIpAddressId: examplePublicIp.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewLinkService(ctx, "exampleLinkService", &privatedns.LinkServiceArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			Location:          exampleResourceGroup.Location,
			AutoApprovalSubscriptionIds: pulumi.StringArray{
				pulumi.String("00000000-0000-0000-0000-000000000000"),
			},
			VisibilitySubscriptionIds: pulumi.StringArray{
				pulumi.String("00000000-0000-0000-0000-000000000000"),
			},
			LoadBalancerFrontendIpConfigurationIds: pulumi.StringArray{
				pulumi.String(exampleLoadBalancer.FrontendIpConfigurations.ApplyT(func(frontendIpConfigurations []lb.LoadBalancerFrontendIpConfiguration) (string, error) {
					return frontendIpConfigurations[0].Id, nil
				}).(pulumi.StringOutput)),
			},
			NatIpConfigurations: privatedns.LinkServiceNatIpConfigurationArray{
				&privatedns.LinkServiceNatIpConfigurationArgs{
					Name:                    pulumi.String("primary"),
					PrivateIpAddress:        pulumi.String("10.5.1.17"),
					PrivateIpAddressVersion: pulumi.String("IPv4"),
					SubnetId:                exampleSubnet.ID(),
					Primary:                 pulumi.Bool(true),
				},
				&privatedns.LinkServiceNatIpConfigurationArgs{
					Name:                    pulumi.String("secondary"),
					PrivateIpAddress:        pulumi.String("10.5.1.18"),
					PrivateIpAddressVersion: pulumi.String("IPv4"),
					SubnetId:                exampleSubnet.ID(),
					Primary:                 pulumi.Bool(false),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private Link Services can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/linkService:LinkService example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/privateLinkServices/service1

```

func GetLinkService

func GetLinkService(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LinkServiceState, opts ...pulumi.ResourceOption) (*LinkService, error)

GetLinkService gets an existing LinkService resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLinkService

func NewLinkService(ctx *pulumi.Context,
	name string, args *LinkServiceArgs, opts ...pulumi.ResourceOption) (*LinkService, error)

NewLinkService registers a new resource with the given unique name, arguments, and options.

func (LinkService) ElementType added in v3.31.1

func (LinkService) ElementType() reflect.Type

func (LinkService) ToLinkServiceOutput added in v3.31.1

func (i LinkService) ToLinkServiceOutput() LinkServiceOutput

func (LinkService) ToLinkServiceOutputWithContext added in v3.31.1

func (i LinkService) ToLinkServiceOutputWithContext(ctx context.Context) LinkServiceOutput

type LinkServiceArgs

type LinkServiceArgs struct {
	// A list of Subscription UUID/GUID's that will be automatically be able to use this Private Link Service.
	AutoApprovalSubscriptionIds pulumi.StringArrayInput
	// Should the Private Link Service support the Proxy Protocol? Defaults to `false`.
	EnableProxyProtocol pulumi.BoolPtrInput
	// A list of Frontend IP Configuration ID's from a Standard Load Balancer, where traffic from the Private Link Service should be routed. You can use Load Balancer Rules to direct this traffic to appropriate backend pools where your applications are running.
	LoadBalancerFrontendIpConfigurationIds pulumi.StringArrayInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Private Link Service. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more (up to 8) `natIpConfiguration` block as defined below.
	NatIpConfigurations LinkServiceNatIpConfigurationArrayInput
	// The name of the Resource Group where the Private Link Service should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource. Changing this forces a new resource to be created.
	Tags pulumi.StringMapInput
	// A list of Subscription UUID/GUID's that will be able to see this Private Link Service.
	VisibilitySubscriptionIds pulumi.StringArrayInput
}

The set of arguments for constructing a LinkService resource.

func (LinkServiceArgs) ElementType

func (LinkServiceArgs) ElementType() reflect.Type

type LinkServiceInput added in v3.31.1

type LinkServiceInput interface {
	pulumi.Input

	ToLinkServiceOutput() LinkServiceOutput
	ToLinkServiceOutputWithContext(ctx context.Context) LinkServiceOutput
}

type LinkServiceNatIpConfiguration

type LinkServiceNatIpConfiguration struct {
	// Specifies the name which should be used for the NAT IP Configuration. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// Is this is the Primary IP Configuration? Changing this forces a new resource to be created.
	Primary bool `pulumi:"primary"`
	// Specifies a Private Static IP Address for this IP Configuration.
	PrivateIpAddress *string `pulumi:"privateIpAddress"`
	// The version of the IP Protocol which should be used. At this time the only supported value is `IPv4`. Defaults to `IPv4`.
	PrivateIpAddressVersion *string `pulumi:"privateIpAddressVersion"`
	// Specifies the ID of the Subnet which should be used for the Private Link Service.
	SubnetId string `pulumi:"subnetId"`
}

type LinkServiceNatIpConfigurationArgs

type LinkServiceNatIpConfigurationArgs struct {
	// Specifies the name which should be used for the NAT IP Configuration. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// Is this is the Primary IP Configuration? Changing this forces a new resource to be created.
	Primary pulumi.BoolInput `pulumi:"primary"`
	// Specifies a Private Static IP Address for this IP Configuration.
	PrivateIpAddress pulumi.StringPtrInput `pulumi:"privateIpAddress"`
	// The version of the IP Protocol which should be used. At this time the only supported value is `IPv4`. Defaults to `IPv4`.
	PrivateIpAddressVersion pulumi.StringPtrInput `pulumi:"privateIpAddressVersion"`
	// Specifies the ID of the Subnet which should be used for the Private Link Service.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (LinkServiceNatIpConfigurationArgs) ElementType

func (LinkServiceNatIpConfigurationArgs) ToLinkServiceNatIpConfigurationOutput

func (i LinkServiceNatIpConfigurationArgs) ToLinkServiceNatIpConfigurationOutput() LinkServiceNatIpConfigurationOutput

func (LinkServiceNatIpConfigurationArgs) ToLinkServiceNatIpConfigurationOutputWithContext

func (i LinkServiceNatIpConfigurationArgs) ToLinkServiceNatIpConfigurationOutputWithContext(ctx context.Context) LinkServiceNatIpConfigurationOutput

type LinkServiceNatIpConfigurationArray

type LinkServiceNatIpConfigurationArray []LinkServiceNatIpConfigurationInput

func (LinkServiceNatIpConfigurationArray) ElementType

func (LinkServiceNatIpConfigurationArray) ToLinkServiceNatIpConfigurationArrayOutput

func (i LinkServiceNatIpConfigurationArray) ToLinkServiceNatIpConfigurationArrayOutput() LinkServiceNatIpConfigurationArrayOutput

func (LinkServiceNatIpConfigurationArray) ToLinkServiceNatIpConfigurationArrayOutputWithContext

func (i LinkServiceNatIpConfigurationArray) ToLinkServiceNatIpConfigurationArrayOutputWithContext(ctx context.Context) LinkServiceNatIpConfigurationArrayOutput

type LinkServiceNatIpConfigurationArrayInput

type LinkServiceNatIpConfigurationArrayInput interface {
	pulumi.Input

	ToLinkServiceNatIpConfigurationArrayOutput() LinkServiceNatIpConfigurationArrayOutput
	ToLinkServiceNatIpConfigurationArrayOutputWithContext(context.Context) LinkServiceNatIpConfigurationArrayOutput
}

LinkServiceNatIpConfigurationArrayInput is an input type that accepts LinkServiceNatIpConfigurationArray and LinkServiceNatIpConfigurationArrayOutput values. You can construct a concrete instance of `LinkServiceNatIpConfigurationArrayInput` via:

LinkServiceNatIpConfigurationArray{ LinkServiceNatIpConfigurationArgs{...} }

type LinkServiceNatIpConfigurationArrayOutput

type LinkServiceNatIpConfigurationArrayOutput struct{ *pulumi.OutputState }

func (LinkServiceNatIpConfigurationArrayOutput) ElementType

func (LinkServiceNatIpConfigurationArrayOutput) Index

func (LinkServiceNatIpConfigurationArrayOutput) ToLinkServiceNatIpConfigurationArrayOutput

func (o LinkServiceNatIpConfigurationArrayOutput) ToLinkServiceNatIpConfigurationArrayOutput() LinkServiceNatIpConfigurationArrayOutput

func (LinkServiceNatIpConfigurationArrayOutput) ToLinkServiceNatIpConfigurationArrayOutputWithContext

func (o LinkServiceNatIpConfigurationArrayOutput) ToLinkServiceNatIpConfigurationArrayOutputWithContext(ctx context.Context) LinkServiceNatIpConfigurationArrayOutput

type LinkServiceNatIpConfigurationInput

type LinkServiceNatIpConfigurationInput interface {
	pulumi.Input

	ToLinkServiceNatIpConfigurationOutput() LinkServiceNatIpConfigurationOutput
	ToLinkServiceNatIpConfigurationOutputWithContext(context.Context) LinkServiceNatIpConfigurationOutput
}

LinkServiceNatIpConfigurationInput is an input type that accepts LinkServiceNatIpConfigurationArgs and LinkServiceNatIpConfigurationOutput values. You can construct a concrete instance of `LinkServiceNatIpConfigurationInput` via:

LinkServiceNatIpConfigurationArgs{...}

type LinkServiceNatIpConfigurationOutput

type LinkServiceNatIpConfigurationOutput struct{ *pulumi.OutputState }

func (LinkServiceNatIpConfigurationOutput) ElementType

func (LinkServiceNatIpConfigurationOutput) Name

Specifies the name which should be used for the NAT IP Configuration. Changing this forces a new resource to be created.

func (LinkServiceNatIpConfigurationOutput) Primary

Is this is the Primary IP Configuration? Changing this forces a new resource to be created.

func (LinkServiceNatIpConfigurationOutput) PrivateIpAddress

Specifies a Private Static IP Address for this IP Configuration.

func (LinkServiceNatIpConfigurationOutput) PrivateIpAddressVersion

func (o LinkServiceNatIpConfigurationOutput) PrivateIpAddressVersion() pulumi.StringPtrOutput

The version of the IP Protocol which should be used. At this time the only supported value is `IPv4`. Defaults to `IPv4`.

func (LinkServiceNatIpConfigurationOutput) SubnetId

Specifies the ID of the Subnet which should be used for the Private Link Service.

func (LinkServiceNatIpConfigurationOutput) ToLinkServiceNatIpConfigurationOutput

func (o LinkServiceNatIpConfigurationOutput) ToLinkServiceNatIpConfigurationOutput() LinkServiceNatIpConfigurationOutput

func (LinkServiceNatIpConfigurationOutput) ToLinkServiceNatIpConfigurationOutputWithContext

func (o LinkServiceNatIpConfigurationOutput) ToLinkServiceNatIpConfigurationOutputWithContext(ctx context.Context) LinkServiceNatIpConfigurationOutput

type LinkServiceOutput added in v3.31.1

type LinkServiceOutput struct {
	*pulumi.OutputState
}

func (LinkServiceOutput) ElementType added in v3.31.1

func (LinkServiceOutput) ElementType() reflect.Type

func (LinkServiceOutput) ToLinkServiceOutput added in v3.31.1

func (o LinkServiceOutput) ToLinkServiceOutput() LinkServiceOutput

func (LinkServiceOutput) ToLinkServiceOutputWithContext added in v3.31.1

func (o LinkServiceOutput) ToLinkServiceOutputWithContext(ctx context.Context) LinkServiceOutput

type LinkServiceState

type LinkServiceState struct {
	// A globally unique DNS Name for your Private Link Service. You can use this alias to request a connection to your Private Link Service.
	Alias pulumi.StringPtrInput
	// A list of Subscription UUID/GUID's that will be automatically be able to use this Private Link Service.
	AutoApprovalSubscriptionIds pulumi.StringArrayInput
	// Should the Private Link Service support the Proxy Protocol? Defaults to `false`.
	EnableProxyProtocol pulumi.BoolPtrInput
	// A list of Frontend IP Configuration ID's from a Standard Load Balancer, where traffic from the Private Link Service should be routed. You can use Load Balancer Rules to direct this traffic to appropriate backend pools where your applications are running.
	LoadBalancerFrontendIpConfigurationIds pulumi.StringArrayInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of this Private Link Service. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more (up to 8) `natIpConfiguration` block as defined below.
	NatIpConfigurations LinkServiceNatIpConfigurationArrayInput
	// The name of the Resource Group where the Private Link Service should exist. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource. Changing this forces a new resource to be created.
	Tags pulumi.StringMapInput
	// A list of Subscription UUID/GUID's that will be able to see this Private Link Service.
	VisibilitySubscriptionIds pulumi.StringArrayInput
}

func (LinkServiceState) ElementType

func (LinkServiceState) ElementType() reflect.Type

type MxRecord

type MxRecord struct {
	pulumi.CustomResourceState

	// The FQDN of the DNS MX Record.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// The name of the DNS MX Record. Changing this forces a new resource to be created. Default to '@' for root zone entry.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `record` blocks as defined below.
	Records MxRecordRecordArrayOutput `pulumi:"records"`
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	Ttl  pulumi.IntOutput       `pulumi:"ttl"`
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringOutput `pulumi:"zoneName"`
}

Enables you to manage DNS MX Records within Azure Private DNS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		exampleZone, err := privatedns.NewZone(ctx, "exampleZone", &privatedns.ZoneArgs{
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewMxRecord(ctx, "exampleMxRecord", &privatedns.MxRecordArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			ZoneName:          exampleZone.Name,
			Ttl:               pulumi.Int(300),
			Records: privatedns.MxRecordRecordArray{
				&privatedns.MxRecordRecordArgs{
					Preference: pulumi.Int(10),
					Exchange:   pulumi.String("mx1.contoso.com"),
				},
				&privatedns.MxRecordRecordArgs{
					Preference: pulumi.Int(20),
					Exchange:   pulumi.String("backupmx.contoso.com"),
				},
			},
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("Production"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS MX Records can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/mxRecord:MxRecord example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/contoso.com/MX/@

```

func GetMxRecord

func GetMxRecord(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MxRecordState, opts ...pulumi.ResourceOption) (*MxRecord, error)

GetMxRecord gets an existing MxRecord resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewMxRecord

func NewMxRecord(ctx *pulumi.Context,
	name string, args *MxRecordArgs, opts ...pulumi.ResourceOption) (*MxRecord, error)

NewMxRecord registers a new resource with the given unique name, arguments, and options.

func (MxRecord) ElementType added in v3.31.1

func (MxRecord) ElementType() reflect.Type

func (MxRecord) ToMxRecordOutput added in v3.31.1

func (i MxRecord) ToMxRecordOutput() MxRecordOutput

func (MxRecord) ToMxRecordOutputWithContext added in v3.31.1

func (i MxRecord) ToMxRecordOutputWithContext(ctx context.Context) MxRecordOutput

type MxRecordArgs

type MxRecordArgs struct {
	// The name of the DNS MX Record. Changing this forces a new resource to be created. Default to '@' for root zone entry.
	Name pulumi.StringPtrInput
	// One or more `record` blocks as defined below.
	Records MxRecordRecordArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringInput
}

The set of arguments for constructing a MxRecord resource.

func (MxRecordArgs) ElementType

func (MxRecordArgs) ElementType() reflect.Type

type MxRecordInput added in v3.31.1

type MxRecordInput interface {
	pulumi.Input

	ToMxRecordOutput() MxRecordOutput
	ToMxRecordOutputWithContext(ctx context.Context) MxRecordOutput
}

type MxRecordOutput added in v3.31.1

type MxRecordOutput struct {
	*pulumi.OutputState
}

func (MxRecordOutput) ElementType added in v3.31.1

func (MxRecordOutput) ElementType() reflect.Type

func (MxRecordOutput) ToMxRecordOutput added in v3.31.1

func (o MxRecordOutput) ToMxRecordOutput() MxRecordOutput

func (MxRecordOutput) ToMxRecordOutputWithContext added in v3.31.1

func (o MxRecordOutput) ToMxRecordOutputWithContext(ctx context.Context) MxRecordOutput

type MxRecordRecord

type MxRecordRecord struct {
	// The FQDN of the exchange to MX record points to.
	Exchange string `pulumi:"exchange"`
	// The preference of the MX record.
	Preference int `pulumi:"preference"`
}

type MxRecordRecordArgs

type MxRecordRecordArgs struct {
	// The FQDN of the exchange to MX record points to.
	Exchange pulumi.StringInput `pulumi:"exchange"`
	// The preference of the MX record.
	Preference pulumi.IntInput `pulumi:"preference"`
}

func (MxRecordRecordArgs) ElementType

func (MxRecordRecordArgs) ElementType() reflect.Type

func (MxRecordRecordArgs) ToMxRecordRecordOutput

func (i MxRecordRecordArgs) ToMxRecordRecordOutput() MxRecordRecordOutput

func (MxRecordRecordArgs) ToMxRecordRecordOutputWithContext

func (i MxRecordRecordArgs) ToMxRecordRecordOutputWithContext(ctx context.Context) MxRecordRecordOutput

type MxRecordRecordArray

type MxRecordRecordArray []MxRecordRecordInput

func (MxRecordRecordArray) ElementType

func (MxRecordRecordArray) ElementType() reflect.Type

func (MxRecordRecordArray) ToMxRecordRecordArrayOutput

func (i MxRecordRecordArray) ToMxRecordRecordArrayOutput() MxRecordRecordArrayOutput

func (MxRecordRecordArray) ToMxRecordRecordArrayOutputWithContext

func (i MxRecordRecordArray) ToMxRecordRecordArrayOutputWithContext(ctx context.Context) MxRecordRecordArrayOutput

type MxRecordRecordArrayInput

type MxRecordRecordArrayInput interface {
	pulumi.Input

	ToMxRecordRecordArrayOutput() MxRecordRecordArrayOutput
	ToMxRecordRecordArrayOutputWithContext(context.Context) MxRecordRecordArrayOutput
}

MxRecordRecordArrayInput is an input type that accepts MxRecordRecordArray and MxRecordRecordArrayOutput values. You can construct a concrete instance of `MxRecordRecordArrayInput` via:

MxRecordRecordArray{ MxRecordRecordArgs{...} }

type MxRecordRecordArrayOutput

type MxRecordRecordArrayOutput struct{ *pulumi.OutputState }

func (MxRecordRecordArrayOutput) ElementType

func (MxRecordRecordArrayOutput) ElementType() reflect.Type

func (MxRecordRecordArrayOutput) Index

func (MxRecordRecordArrayOutput) ToMxRecordRecordArrayOutput

func (o MxRecordRecordArrayOutput) ToMxRecordRecordArrayOutput() MxRecordRecordArrayOutput

func (MxRecordRecordArrayOutput) ToMxRecordRecordArrayOutputWithContext

func (o MxRecordRecordArrayOutput) ToMxRecordRecordArrayOutputWithContext(ctx context.Context) MxRecordRecordArrayOutput

type MxRecordRecordInput

type MxRecordRecordInput interface {
	pulumi.Input

	ToMxRecordRecordOutput() MxRecordRecordOutput
	ToMxRecordRecordOutputWithContext(context.Context) MxRecordRecordOutput
}

MxRecordRecordInput is an input type that accepts MxRecordRecordArgs and MxRecordRecordOutput values. You can construct a concrete instance of `MxRecordRecordInput` via:

MxRecordRecordArgs{...}

type MxRecordRecordOutput

type MxRecordRecordOutput struct{ *pulumi.OutputState }

func (MxRecordRecordOutput) ElementType

func (MxRecordRecordOutput) ElementType() reflect.Type

func (MxRecordRecordOutput) Exchange

The FQDN of the exchange to MX record points to.

func (MxRecordRecordOutput) Preference

func (o MxRecordRecordOutput) Preference() pulumi.IntOutput

The preference of the MX record.

func (MxRecordRecordOutput) ToMxRecordRecordOutput

func (o MxRecordRecordOutput) ToMxRecordRecordOutput() MxRecordRecordOutput

func (MxRecordRecordOutput) ToMxRecordRecordOutputWithContext

func (o MxRecordRecordOutput) ToMxRecordRecordOutputWithContext(ctx context.Context) MxRecordRecordOutput

type MxRecordState

type MxRecordState struct {
	// The FQDN of the DNS MX Record.
	Fqdn pulumi.StringPtrInput
	// The name of the DNS MX Record. Changing this forces a new resource to be created. Default to '@' for root zone entry.
	Name pulumi.StringPtrInput
	// One or more `record` blocks as defined below.
	Records MxRecordRecordArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntPtrInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringPtrInput
}

func (MxRecordState) ElementType

func (MxRecordState) ElementType() reflect.Type

type PTRRecord

type PTRRecord struct {
	pulumi.CustomResourceState

	// The FQDN of the DNS PTR Record.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// The name of the DNS PTR Record. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// List of Fully Qualified Domain Names.
	Records pulumi.StringArrayOutput `pulumi:"records"`
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	Ttl  pulumi.IntOutput       `pulumi:"ttl"`
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringOutput `pulumi:"zoneName"`
}

Enables you to manage DNS PTR Records within Azure Private DNS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		exampleZone, err := privatedns.NewZone(ctx, "exampleZone", &privatedns.ZoneArgs{
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewPTRRecord(ctx, "examplePTRRecord", &privatedns.PTRRecordArgs{
			ZoneName:          exampleZone.Name,
			ResourceGroupName: exampleResourceGroup.Name,
			Ttl:               pulumi.Int(300),
			Records: pulumi.StringArray{
				pulumi.String("test.example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS PTR Records can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/pTRRecord:PTRRecord example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/2.0.192.in-addr.arpa/PTR/15

```

func GetPTRRecord

func GetPTRRecord(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PTRRecordState, opts ...pulumi.ResourceOption) (*PTRRecord, error)

GetPTRRecord gets an existing PTRRecord resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPTRRecord

func NewPTRRecord(ctx *pulumi.Context,
	name string, args *PTRRecordArgs, opts ...pulumi.ResourceOption) (*PTRRecord, error)

NewPTRRecord registers a new resource with the given unique name, arguments, and options.

func (PTRRecord) ElementType added in v3.31.1

func (PTRRecord) ElementType() reflect.Type

func (PTRRecord) ToPTRRecordOutput added in v3.31.1

func (i PTRRecord) ToPTRRecordOutput() PTRRecordOutput

func (PTRRecord) ToPTRRecordOutputWithContext added in v3.31.1

func (i PTRRecord) ToPTRRecordOutputWithContext(ctx context.Context) PTRRecordOutput

type PTRRecordArgs

type PTRRecordArgs struct {
	// The name of the DNS PTR Record. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// List of Fully Qualified Domain Names.
	Records pulumi.StringArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringInput
}

The set of arguments for constructing a PTRRecord resource.

func (PTRRecordArgs) ElementType

func (PTRRecordArgs) ElementType() reflect.Type

type PTRRecordInput added in v3.31.1

type PTRRecordInput interface {
	pulumi.Input

	ToPTRRecordOutput() PTRRecordOutput
	ToPTRRecordOutputWithContext(ctx context.Context) PTRRecordOutput
}

type PTRRecordOutput added in v3.31.1

type PTRRecordOutput struct {
	*pulumi.OutputState
}

func (PTRRecordOutput) ElementType added in v3.31.1

func (PTRRecordOutput) ElementType() reflect.Type

func (PTRRecordOutput) ToPTRRecordOutput added in v3.31.1

func (o PTRRecordOutput) ToPTRRecordOutput() PTRRecordOutput

func (PTRRecordOutput) ToPTRRecordOutputWithContext added in v3.31.1

func (o PTRRecordOutput) ToPTRRecordOutputWithContext(ctx context.Context) PTRRecordOutput

type PTRRecordState

type PTRRecordState struct {
	// The FQDN of the DNS PTR Record.
	Fqdn pulumi.StringPtrInput
	// The name of the DNS PTR Record. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// List of Fully Qualified Domain Names.
	Records pulumi.StringArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntPtrInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringPtrInput
}

func (PTRRecordState) ElementType

func (PTRRecordState) ElementType() reflect.Type

type SRVRecord

type SRVRecord struct {
	pulumi.CustomResourceState

	// The FQDN of the DNS SRV Record.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// The name of the DNS SRV Record. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `record` blocks as defined below.
	Records SRVRecordRecordArrayOutput `pulumi:"records"`
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	Ttl  pulumi.IntOutput       `pulumi:"ttl"`
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringOutput `pulumi:"zoneName"`
}

Enables you to manage DNS SRV Records within Azure Private DNS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		testZone, err := privatedns.NewZone(ctx, "testZone", &privatedns.ZoneArgs{
			ResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewSRVRecord(ctx, "testSRVRecord", &privatedns.SRVRecordArgs{
			ResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),
			ZoneName:          testZone.Name,
			Ttl:               pulumi.Int(300),
			Records: privatedns.SRVRecordRecordArray{
				&privatedns.SRVRecordRecordArgs{
					Priority: pulumi.Int(1),
					Weight:   pulumi.Int(5),
					Port:     pulumi.Int(8080),
					Target:   pulumi.String("target1.contoso.com"),
				},
				&privatedns.SRVRecordRecordArgs{
					Priority: pulumi.Int(10),
					Weight:   pulumi.Int(10),
					Port:     pulumi.Int(8080),
					Target:   pulumi.String("target2.contoso.com"),
				},
			},
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("Production"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS SRV Records can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/sRVRecord:SRVRecord test /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/contoso.com/SRV/test

```

func GetSRVRecord

func GetSRVRecord(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SRVRecordState, opts ...pulumi.ResourceOption) (*SRVRecord, error)

GetSRVRecord gets an existing SRVRecord resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSRVRecord

func NewSRVRecord(ctx *pulumi.Context,
	name string, args *SRVRecordArgs, opts ...pulumi.ResourceOption) (*SRVRecord, error)

NewSRVRecord registers a new resource with the given unique name, arguments, and options.

func (SRVRecord) ElementType added in v3.31.1

func (SRVRecord) ElementType() reflect.Type

func (SRVRecord) ToSRVRecordOutput added in v3.31.1

func (i SRVRecord) ToSRVRecordOutput() SRVRecordOutput

func (SRVRecord) ToSRVRecordOutputWithContext added in v3.31.1

func (i SRVRecord) ToSRVRecordOutputWithContext(ctx context.Context) SRVRecordOutput

type SRVRecordArgs

type SRVRecordArgs struct {
	// The name of the DNS SRV Record. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `record` blocks as defined below.
	Records SRVRecordRecordArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringInput
}

The set of arguments for constructing a SRVRecord resource.

func (SRVRecordArgs) ElementType

func (SRVRecordArgs) ElementType() reflect.Type

type SRVRecordInput added in v3.31.1

type SRVRecordInput interface {
	pulumi.Input

	ToSRVRecordOutput() SRVRecordOutput
	ToSRVRecordOutputWithContext(ctx context.Context) SRVRecordOutput
}

type SRVRecordOutput added in v3.31.1

type SRVRecordOutput struct {
	*pulumi.OutputState
}

func (SRVRecordOutput) ElementType added in v3.31.1

func (SRVRecordOutput) ElementType() reflect.Type

func (SRVRecordOutput) ToSRVRecordOutput added in v3.31.1

func (o SRVRecordOutput) ToSRVRecordOutput() SRVRecordOutput

func (SRVRecordOutput) ToSRVRecordOutputWithContext added in v3.31.1

func (o SRVRecordOutput) ToSRVRecordOutputWithContext(ctx context.Context) SRVRecordOutput

type SRVRecordRecord

type SRVRecordRecord struct {
	// The Port the service is listening on.
	Port int `pulumi:"port"`
	// The priority of the SRV record.
	Priority int `pulumi:"priority"`
	// The FQDN of the service.
	Target string `pulumi:"target"`
	// The Weight of the SRV record.
	Weight int `pulumi:"weight"`
}

type SRVRecordRecordArgs

type SRVRecordRecordArgs struct {
	// The Port the service is listening on.
	Port pulumi.IntInput `pulumi:"port"`
	// The priority of the SRV record.
	Priority pulumi.IntInput `pulumi:"priority"`
	// The FQDN of the service.
	Target pulumi.StringInput `pulumi:"target"`
	// The Weight of the SRV record.
	Weight pulumi.IntInput `pulumi:"weight"`
}

func (SRVRecordRecordArgs) ElementType

func (SRVRecordRecordArgs) ElementType() reflect.Type

func (SRVRecordRecordArgs) ToSRVRecordRecordOutput

func (i SRVRecordRecordArgs) ToSRVRecordRecordOutput() SRVRecordRecordOutput

func (SRVRecordRecordArgs) ToSRVRecordRecordOutputWithContext

func (i SRVRecordRecordArgs) ToSRVRecordRecordOutputWithContext(ctx context.Context) SRVRecordRecordOutput

type SRVRecordRecordArray

type SRVRecordRecordArray []SRVRecordRecordInput

func (SRVRecordRecordArray) ElementType

func (SRVRecordRecordArray) ElementType() reflect.Type

func (SRVRecordRecordArray) ToSRVRecordRecordArrayOutput

func (i SRVRecordRecordArray) ToSRVRecordRecordArrayOutput() SRVRecordRecordArrayOutput

func (SRVRecordRecordArray) ToSRVRecordRecordArrayOutputWithContext

func (i SRVRecordRecordArray) ToSRVRecordRecordArrayOutputWithContext(ctx context.Context) SRVRecordRecordArrayOutput

type SRVRecordRecordArrayInput

type SRVRecordRecordArrayInput interface {
	pulumi.Input

	ToSRVRecordRecordArrayOutput() SRVRecordRecordArrayOutput
	ToSRVRecordRecordArrayOutputWithContext(context.Context) SRVRecordRecordArrayOutput
}

SRVRecordRecordArrayInput is an input type that accepts SRVRecordRecordArray and SRVRecordRecordArrayOutput values. You can construct a concrete instance of `SRVRecordRecordArrayInput` via:

SRVRecordRecordArray{ SRVRecordRecordArgs{...} }

type SRVRecordRecordArrayOutput

type SRVRecordRecordArrayOutput struct{ *pulumi.OutputState }

func (SRVRecordRecordArrayOutput) ElementType

func (SRVRecordRecordArrayOutput) ElementType() reflect.Type

func (SRVRecordRecordArrayOutput) Index

func (SRVRecordRecordArrayOutput) ToSRVRecordRecordArrayOutput

func (o SRVRecordRecordArrayOutput) ToSRVRecordRecordArrayOutput() SRVRecordRecordArrayOutput

func (SRVRecordRecordArrayOutput) ToSRVRecordRecordArrayOutputWithContext

func (o SRVRecordRecordArrayOutput) ToSRVRecordRecordArrayOutputWithContext(ctx context.Context) SRVRecordRecordArrayOutput

type SRVRecordRecordInput

type SRVRecordRecordInput interface {
	pulumi.Input

	ToSRVRecordRecordOutput() SRVRecordRecordOutput
	ToSRVRecordRecordOutputWithContext(context.Context) SRVRecordRecordOutput
}

SRVRecordRecordInput is an input type that accepts SRVRecordRecordArgs and SRVRecordRecordOutput values. You can construct a concrete instance of `SRVRecordRecordInput` via:

SRVRecordRecordArgs{...}

type SRVRecordRecordOutput

type SRVRecordRecordOutput struct{ *pulumi.OutputState }

func (SRVRecordRecordOutput) ElementType

func (SRVRecordRecordOutput) ElementType() reflect.Type

func (SRVRecordRecordOutput) Port

The Port the service is listening on.

func (SRVRecordRecordOutput) Priority

func (o SRVRecordRecordOutput) Priority() pulumi.IntOutput

The priority of the SRV record.

func (SRVRecordRecordOutput) Target

The FQDN of the service.

func (SRVRecordRecordOutput) ToSRVRecordRecordOutput

func (o SRVRecordRecordOutput) ToSRVRecordRecordOutput() SRVRecordRecordOutput

func (SRVRecordRecordOutput) ToSRVRecordRecordOutputWithContext

func (o SRVRecordRecordOutput) ToSRVRecordRecordOutputWithContext(ctx context.Context) SRVRecordRecordOutput

func (SRVRecordRecordOutput) Weight

The Weight of the SRV record.

type SRVRecordState

type SRVRecordState struct {
	// The FQDN of the DNS SRV Record.
	Fqdn pulumi.StringPtrInput
	// The name of the DNS SRV Record. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `record` blocks as defined below.
	Records SRVRecordRecordArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntPtrInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringPtrInput
}

func (SRVRecordState) ElementType

func (SRVRecordState) ElementType() reflect.Type

type TxtRecord

type TxtRecord struct {
	pulumi.CustomResourceState

	// The FQDN of the DNS TXT Record.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// The name of the DNS TXT Record. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `record` blocks as defined below.
	Records TxtRecordRecordArrayOutput `pulumi:"records"`
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	Ttl  pulumi.IntOutput       `pulumi:"ttl"`
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringOutput `pulumi:"zoneName"`
}

Enables you to manage DNS TXT Records within Azure Private DNS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		testZone, err := privatedns.NewZone(ctx, "testZone", &privatedns.ZoneArgs{
			ResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewTxtRecord(ctx, "testTxtRecord", &privatedns.TxtRecordArgs{
			ResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),
			ZoneName:          testZone.Name,
			Ttl:               pulumi.Int(300),
			Records: privatedns.TxtRecordRecordArray{
				&privatedns.TxtRecordRecordArgs{
					Value: pulumi.String("v=spf1 mx ~all"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS TXT Records can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/txtRecord:TxtRecord test /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/contoso.com/TXT/test

```

func GetTxtRecord

func GetTxtRecord(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TxtRecordState, opts ...pulumi.ResourceOption) (*TxtRecord, error)

GetTxtRecord gets an existing TxtRecord resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTxtRecord

func NewTxtRecord(ctx *pulumi.Context,
	name string, args *TxtRecordArgs, opts ...pulumi.ResourceOption) (*TxtRecord, error)

NewTxtRecord registers a new resource with the given unique name, arguments, and options.

func (TxtRecord) ElementType added in v3.31.1

func (TxtRecord) ElementType() reflect.Type

func (TxtRecord) ToTxtRecordOutput added in v3.31.1

func (i TxtRecord) ToTxtRecordOutput() TxtRecordOutput

func (TxtRecord) ToTxtRecordOutputWithContext added in v3.31.1

func (i TxtRecord) ToTxtRecordOutputWithContext(ctx context.Context) TxtRecordOutput

type TxtRecordArgs

type TxtRecordArgs struct {
	// The name of the DNS TXT Record. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `record` blocks as defined below.
	Records TxtRecordRecordArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringInput
}

The set of arguments for constructing a TxtRecord resource.

func (TxtRecordArgs) ElementType

func (TxtRecordArgs) ElementType() reflect.Type

type TxtRecordInput added in v3.31.1

type TxtRecordInput interface {
	pulumi.Input

	ToTxtRecordOutput() TxtRecordOutput
	ToTxtRecordOutputWithContext(ctx context.Context) TxtRecordOutput
}

type TxtRecordOutput added in v3.31.1

type TxtRecordOutput struct {
	*pulumi.OutputState
}

func (TxtRecordOutput) ElementType added in v3.31.1

func (TxtRecordOutput) ElementType() reflect.Type

func (TxtRecordOutput) ToTxtRecordOutput added in v3.31.1

func (o TxtRecordOutput) ToTxtRecordOutput() TxtRecordOutput

func (TxtRecordOutput) ToTxtRecordOutputWithContext added in v3.31.1

func (o TxtRecordOutput) ToTxtRecordOutputWithContext(ctx context.Context) TxtRecordOutput

type TxtRecordRecord

type TxtRecordRecord struct {
	// The value of the TXT record. Max length: 1024 characters
	Value string `pulumi:"value"`
}

type TxtRecordRecordArgs

type TxtRecordRecordArgs struct {
	// The value of the TXT record. Max length: 1024 characters
	Value pulumi.StringInput `pulumi:"value"`
}

func (TxtRecordRecordArgs) ElementType

func (TxtRecordRecordArgs) ElementType() reflect.Type

func (TxtRecordRecordArgs) ToTxtRecordRecordOutput

func (i TxtRecordRecordArgs) ToTxtRecordRecordOutput() TxtRecordRecordOutput

func (TxtRecordRecordArgs) ToTxtRecordRecordOutputWithContext

func (i TxtRecordRecordArgs) ToTxtRecordRecordOutputWithContext(ctx context.Context) TxtRecordRecordOutput

type TxtRecordRecordArray

type TxtRecordRecordArray []TxtRecordRecordInput

func (TxtRecordRecordArray) ElementType

func (TxtRecordRecordArray) ElementType() reflect.Type

func (TxtRecordRecordArray) ToTxtRecordRecordArrayOutput

func (i TxtRecordRecordArray) ToTxtRecordRecordArrayOutput() TxtRecordRecordArrayOutput

func (TxtRecordRecordArray) ToTxtRecordRecordArrayOutputWithContext

func (i TxtRecordRecordArray) ToTxtRecordRecordArrayOutputWithContext(ctx context.Context) TxtRecordRecordArrayOutput

type TxtRecordRecordArrayInput

type TxtRecordRecordArrayInput interface {
	pulumi.Input

	ToTxtRecordRecordArrayOutput() TxtRecordRecordArrayOutput
	ToTxtRecordRecordArrayOutputWithContext(context.Context) TxtRecordRecordArrayOutput
}

TxtRecordRecordArrayInput is an input type that accepts TxtRecordRecordArray and TxtRecordRecordArrayOutput values. You can construct a concrete instance of `TxtRecordRecordArrayInput` via:

TxtRecordRecordArray{ TxtRecordRecordArgs{...} }

type TxtRecordRecordArrayOutput

type TxtRecordRecordArrayOutput struct{ *pulumi.OutputState }

func (TxtRecordRecordArrayOutput) ElementType

func (TxtRecordRecordArrayOutput) ElementType() reflect.Type

func (TxtRecordRecordArrayOutput) Index

func (TxtRecordRecordArrayOutput) ToTxtRecordRecordArrayOutput

func (o TxtRecordRecordArrayOutput) ToTxtRecordRecordArrayOutput() TxtRecordRecordArrayOutput

func (TxtRecordRecordArrayOutput) ToTxtRecordRecordArrayOutputWithContext

func (o TxtRecordRecordArrayOutput) ToTxtRecordRecordArrayOutputWithContext(ctx context.Context) TxtRecordRecordArrayOutput

type TxtRecordRecordInput

type TxtRecordRecordInput interface {
	pulumi.Input

	ToTxtRecordRecordOutput() TxtRecordRecordOutput
	ToTxtRecordRecordOutputWithContext(context.Context) TxtRecordRecordOutput
}

TxtRecordRecordInput is an input type that accepts TxtRecordRecordArgs and TxtRecordRecordOutput values. You can construct a concrete instance of `TxtRecordRecordInput` via:

TxtRecordRecordArgs{...}

type TxtRecordRecordOutput

type TxtRecordRecordOutput struct{ *pulumi.OutputState }

func (TxtRecordRecordOutput) ElementType

func (TxtRecordRecordOutput) ElementType() reflect.Type

func (TxtRecordRecordOutput) ToTxtRecordRecordOutput

func (o TxtRecordRecordOutput) ToTxtRecordRecordOutput() TxtRecordRecordOutput

func (TxtRecordRecordOutput) ToTxtRecordRecordOutputWithContext

func (o TxtRecordRecordOutput) ToTxtRecordRecordOutputWithContext(ctx context.Context) TxtRecordRecordOutput

func (TxtRecordRecordOutput) Value

The value of the TXT record. Max length: 1024 characters

type TxtRecordState

type TxtRecordState struct {
	// The FQDN of the DNS TXT Record.
	Fqdn pulumi.StringPtrInput
	// The name of the DNS TXT Record. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// One or more `record` blocks as defined below.
	Records TxtRecordRecordArrayInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	Ttl  pulumi.IntPtrInput
	// Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created.
	ZoneName pulumi.StringPtrInput
}

func (TxtRecordState) ElementType

func (TxtRecordState) ElementType() reflect.Type

type Zone

type Zone struct {
	pulumi.CustomResourceState

	// The maximum number of record sets that can be created in this Private DNS zone.
	MaxNumberOfRecordSets pulumi.IntOutput `pulumi:"maxNumberOfRecordSets"`
	// The maximum number of virtual networks that can be linked to this Private DNS zone.
	MaxNumberOfVirtualNetworkLinks pulumi.IntOutput `pulumi:"maxNumberOfVirtualNetworkLinks"`
	// The maximum number of virtual networks that can be linked to this Private DNS zone with registration enabled.
	MaxNumberOfVirtualNetworkLinksWithRegistration pulumi.IntOutput `pulumi:"maxNumberOfVirtualNetworkLinksWithRegistration"`
	// The name of the Private DNS Zone. Must be a valid domain name.
	Name pulumi.StringOutput `pulumi:"name"`
	// The current number of record sets in this Private DNS zone.
	NumberOfRecordSets pulumi.IntOutput `pulumi:"numberOfRecordSets"`
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// An `soaRecord` block as defined below. Changing this forces a new resource to be created.
	SoaRecord ZoneSoaRecordOutput `pulumi:"soaRecord"`
	// A mapping of tags to assign to the Record Set.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Enables you to manage Private DNS zones within Azure DNS. These zones are hosted on Azure's name servers.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewZone(ctx, "exampleZone", &privatedns.ZoneArgs{
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS Zones can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/zone:Zone zone1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/zone1

```

func GetZone

func GetZone(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ZoneState, opts ...pulumi.ResourceOption) (*Zone, error)

GetZone gets an existing Zone resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewZone

func NewZone(ctx *pulumi.Context,
	name string, args *ZoneArgs, opts ...pulumi.ResourceOption) (*Zone, error)

NewZone registers a new resource with the given unique name, arguments, and options.

func (Zone) ElementType added in v3.31.1

func (Zone) ElementType() reflect.Type

func (Zone) ToZoneOutput added in v3.31.1

func (i Zone) ToZoneOutput() ZoneOutput

func (Zone) ToZoneOutputWithContext added in v3.31.1

func (i Zone) ToZoneOutputWithContext(ctx context.Context) ZoneOutput

type ZoneArgs

type ZoneArgs struct {
	// The name of the Private DNS Zone. Must be a valid domain name.
	Name pulumi.StringPtrInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// An `soaRecord` block as defined below. Changing this forces a new resource to be created.
	SoaRecord ZoneSoaRecordPtrInput
	// A mapping of tags to assign to the Record Set.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Zone resource.

func (ZoneArgs) ElementType

func (ZoneArgs) ElementType() reflect.Type

type ZoneInput added in v3.31.1

type ZoneInput interface {
	pulumi.Input

	ToZoneOutput() ZoneOutput
	ToZoneOutputWithContext(ctx context.Context) ZoneOutput
}

type ZoneOutput added in v3.31.1

type ZoneOutput struct {
	*pulumi.OutputState
}

func (ZoneOutput) ElementType added in v3.31.1

func (ZoneOutput) ElementType() reflect.Type

func (ZoneOutput) ToZoneOutput added in v3.31.1

func (o ZoneOutput) ToZoneOutput() ZoneOutput

func (ZoneOutput) ToZoneOutputWithContext added in v3.31.1

func (o ZoneOutput) ToZoneOutputWithContext(ctx context.Context) ZoneOutput

type ZoneSoaRecord added in v3.32.0

type ZoneSoaRecord struct {
	// The email contact for the SOA record.
	Email string `pulumi:"email"`
	// The expire time for the SOA record. Defaults to `2419200`.
	ExpireTime *int `pulumi:"expireTime"`
	// The fully qualified domain name of the Record Set.
	Fqdn *string `pulumi:"fqdn"`
	// The domain name of the authoritative name server for the SOA record.
	HostName *string `pulumi:"hostName"`
	// The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to `10`.
	MinimumTtl *int `pulumi:"minimumTtl"`
	// The refresh time for the SOA record. Defaults to `3600`.
	RefreshTime *int `pulumi:"refreshTime"`
	// The retry time for the SOA record. Defaults to `300`.
	RetryTime *int `pulumi:"retryTime"`
	// The serial number for the SOA record.
	SerialNumber *int `pulumi:"serialNumber"`
	// A mapping of tags to assign to the Record Set.
	Tags map[string]string `pulumi:"tags"`
	// The Time To Live of the SOA Record in seconds. Defaults to `3600`.
	Ttl *int `pulumi:"ttl"`
}

type ZoneSoaRecordArgs added in v3.32.0

type ZoneSoaRecordArgs struct {
	// The email contact for the SOA record.
	Email pulumi.StringInput `pulumi:"email"`
	// The expire time for the SOA record. Defaults to `2419200`.
	ExpireTime pulumi.IntPtrInput `pulumi:"expireTime"`
	// The fully qualified domain name of the Record Set.
	Fqdn pulumi.StringPtrInput `pulumi:"fqdn"`
	// The domain name of the authoritative name server for the SOA record.
	HostName pulumi.StringPtrInput `pulumi:"hostName"`
	// The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to `10`.
	MinimumTtl pulumi.IntPtrInput `pulumi:"minimumTtl"`
	// The refresh time for the SOA record. Defaults to `3600`.
	RefreshTime pulumi.IntPtrInput `pulumi:"refreshTime"`
	// The retry time for the SOA record. Defaults to `300`.
	RetryTime pulumi.IntPtrInput `pulumi:"retryTime"`
	// The serial number for the SOA record.
	SerialNumber pulumi.IntPtrInput `pulumi:"serialNumber"`
	// A mapping of tags to assign to the Record Set.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// The Time To Live of the SOA Record in seconds. Defaults to `3600`.
	Ttl pulumi.IntPtrInput `pulumi:"ttl"`
}

func (ZoneSoaRecordArgs) ElementType added in v3.32.0

func (ZoneSoaRecordArgs) ElementType() reflect.Type

func (ZoneSoaRecordArgs) ToZoneSoaRecordOutput added in v3.32.0

func (i ZoneSoaRecordArgs) ToZoneSoaRecordOutput() ZoneSoaRecordOutput

func (ZoneSoaRecordArgs) ToZoneSoaRecordOutputWithContext added in v3.32.0

func (i ZoneSoaRecordArgs) ToZoneSoaRecordOutputWithContext(ctx context.Context) ZoneSoaRecordOutput

func (ZoneSoaRecordArgs) ToZoneSoaRecordPtrOutput added in v3.32.0

func (i ZoneSoaRecordArgs) ToZoneSoaRecordPtrOutput() ZoneSoaRecordPtrOutput

func (ZoneSoaRecordArgs) ToZoneSoaRecordPtrOutputWithContext added in v3.32.0

func (i ZoneSoaRecordArgs) ToZoneSoaRecordPtrOutputWithContext(ctx context.Context) ZoneSoaRecordPtrOutput

type ZoneSoaRecordInput added in v3.32.0

type ZoneSoaRecordInput interface {
	pulumi.Input

	ToZoneSoaRecordOutput() ZoneSoaRecordOutput
	ToZoneSoaRecordOutputWithContext(context.Context) ZoneSoaRecordOutput
}

ZoneSoaRecordInput is an input type that accepts ZoneSoaRecordArgs and ZoneSoaRecordOutput values. You can construct a concrete instance of `ZoneSoaRecordInput` via:

ZoneSoaRecordArgs{...}

type ZoneSoaRecordOutput added in v3.32.0

type ZoneSoaRecordOutput struct{ *pulumi.OutputState }

func (ZoneSoaRecordOutput) ElementType added in v3.32.0

func (ZoneSoaRecordOutput) ElementType() reflect.Type

func (ZoneSoaRecordOutput) Email added in v3.32.0

The email contact for the SOA record.

func (ZoneSoaRecordOutput) ExpireTime added in v3.32.0

func (o ZoneSoaRecordOutput) ExpireTime() pulumi.IntPtrOutput

The expire time for the SOA record. Defaults to `2419200`.

func (ZoneSoaRecordOutput) Fqdn added in v3.32.0

The fully qualified domain name of the Record Set.

func (ZoneSoaRecordOutput) HostName added in v3.32.0

The domain name of the authoritative name server for the SOA record.

func (ZoneSoaRecordOutput) MinimumTtl added in v3.32.0

func (o ZoneSoaRecordOutput) MinimumTtl() pulumi.IntPtrOutput

The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to `10`.

func (ZoneSoaRecordOutput) RefreshTime added in v3.32.0

func (o ZoneSoaRecordOutput) RefreshTime() pulumi.IntPtrOutput

The refresh time for the SOA record. Defaults to `3600`.

func (ZoneSoaRecordOutput) RetryTime added in v3.32.0

func (o ZoneSoaRecordOutput) RetryTime() pulumi.IntPtrOutput

The retry time for the SOA record. Defaults to `300`.

func (ZoneSoaRecordOutput) SerialNumber added in v3.32.0

func (o ZoneSoaRecordOutput) SerialNumber() pulumi.IntPtrOutput

The serial number for the SOA record.

func (ZoneSoaRecordOutput) Tags added in v3.32.0

A mapping of tags to assign to the Record Set.

func (ZoneSoaRecordOutput) ToZoneSoaRecordOutput added in v3.32.0

func (o ZoneSoaRecordOutput) ToZoneSoaRecordOutput() ZoneSoaRecordOutput

func (ZoneSoaRecordOutput) ToZoneSoaRecordOutputWithContext added in v3.32.0

func (o ZoneSoaRecordOutput) ToZoneSoaRecordOutputWithContext(ctx context.Context) ZoneSoaRecordOutput

func (ZoneSoaRecordOutput) ToZoneSoaRecordPtrOutput added in v3.32.0

func (o ZoneSoaRecordOutput) ToZoneSoaRecordPtrOutput() ZoneSoaRecordPtrOutput

func (ZoneSoaRecordOutput) ToZoneSoaRecordPtrOutputWithContext added in v3.32.0

func (o ZoneSoaRecordOutput) ToZoneSoaRecordPtrOutputWithContext(ctx context.Context) ZoneSoaRecordPtrOutput

func (ZoneSoaRecordOutput) Ttl added in v3.32.0

The Time To Live of the SOA Record in seconds. Defaults to `3600`.

type ZoneSoaRecordPtrInput added in v3.32.0

type ZoneSoaRecordPtrInput interface {
	pulumi.Input

	ToZoneSoaRecordPtrOutput() ZoneSoaRecordPtrOutput
	ToZoneSoaRecordPtrOutputWithContext(context.Context) ZoneSoaRecordPtrOutput
}

ZoneSoaRecordPtrInput is an input type that accepts ZoneSoaRecordArgs, ZoneSoaRecordPtr and ZoneSoaRecordPtrOutput values. You can construct a concrete instance of `ZoneSoaRecordPtrInput` via:

        ZoneSoaRecordArgs{...}

or:

        nil

func ZoneSoaRecordPtr added in v3.32.0

func ZoneSoaRecordPtr(v *ZoneSoaRecordArgs) ZoneSoaRecordPtrInput

type ZoneSoaRecordPtrOutput added in v3.32.0

type ZoneSoaRecordPtrOutput struct{ *pulumi.OutputState }

func (ZoneSoaRecordPtrOutput) Elem added in v3.32.0

func (ZoneSoaRecordPtrOutput) ElementType added in v3.32.0

func (ZoneSoaRecordPtrOutput) ElementType() reflect.Type

func (ZoneSoaRecordPtrOutput) Email added in v3.32.0

The email contact for the SOA record.

func (ZoneSoaRecordPtrOutput) ExpireTime added in v3.32.0

The expire time for the SOA record. Defaults to `2419200`.

func (ZoneSoaRecordPtrOutput) Fqdn added in v3.32.0

The fully qualified domain name of the Record Set.

func (ZoneSoaRecordPtrOutput) HostName added in v3.32.0

The domain name of the authoritative name server for the SOA record.

func (ZoneSoaRecordPtrOutput) MinimumTtl added in v3.32.0

The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to `10`.

func (ZoneSoaRecordPtrOutput) RefreshTime added in v3.32.0

func (o ZoneSoaRecordPtrOutput) RefreshTime() pulumi.IntPtrOutput

The refresh time for the SOA record. Defaults to `3600`.

func (ZoneSoaRecordPtrOutput) RetryTime added in v3.32.0

The retry time for the SOA record. Defaults to `300`.

func (ZoneSoaRecordPtrOutput) SerialNumber added in v3.32.0

func (o ZoneSoaRecordPtrOutput) SerialNumber() pulumi.IntPtrOutput

The serial number for the SOA record.

func (ZoneSoaRecordPtrOutput) Tags added in v3.32.0

A mapping of tags to assign to the Record Set.

func (ZoneSoaRecordPtrOutput) ToZoneSoaRecordPtrOutput added in v3.32.0

func (o ZoneSoaRecordPtrOutput) ToZoneSoaRecordPtrOutput() ZoneSoaRecordPtrOutput

func (ZoneSoaRecordPtrOutput) ToZoneSoaRecordPtrOutputWithContext added in v3.32.0

func (o ZoneSoaRecordPtrOutput) ToZoneSoaRecordPtrOutputWithContext(ctx context.Context) ZoneSoaRecordPtrOutput

func (ZoneSoaRecordPtrOutput) Ttl added in v3.32.0

The Time To Live of the SOA Record in seconds. Defaults to `3600`.

type ZoneState

type ZoneState struct {
	// The maximum number of record sets that can be created in this Private DNS zone.
	MaxNumberOfRecordSets pulumi.IntPtrInput
	// The maximum number of virtual networks that can be linked to this Private DNS zone.
	MaxNumberOfVirtualNetworkLinks pulumi.IntPtrInput
	// The maximum number of virtual networks that can be linked to this Private DNS zone with registration enabled.
	MaxNumberOfVirtualNetworkLinksWithRegistration pulumi.IntPtrInput
	// The name of the Private DNS Zone. Must be a valid domain name.
	Name pulumi.StringPtrInput
	// The current number of record sets in this Private DNS zone.
	NumberOfRecordSets pulumi.IntPtrInput
	// Specifies the resource group where the resource exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// An `soaRecord` block as defined below. Changing this forces a new resource to be created.
	SoaRecord ZoneSoaRecordPtrInput
	// A mapping of tags to assign to the Record Set.
	Tags pulumi.StringMapInput
}

func (ZoneState) ElementType

func (ZoneState) ElementType() reflect.Type
type ZoneVirtualNetworkLink struct {
	pulumi.CustomResourceState

	// The name of the Private DNS Zone Virtual Network Link. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the Private DNS zone (without a terminating dot). Changing this forces a new resource to be created.
	PrivateDnsZoneName pulumi.StringOutput `pulumi:"privateDnsZoneName"`
	// Is auto-registration of virtual machine records in the virtual network in the Private DNS zone enabled? Defaults to `false`.
	RegistrationEnabled pulumi.BoolPtrOutput `pulumi:"registrationEnabled"`
	// Specifies the resource group where the Private DNS Zone exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The ID of the Virtual Network that should be linked to the DNS Zone. Changing this forces a new resource to be created.
	VirtualNetworkId pulumi.StringOutput `pulumi:"virtualNetworkId"`
}

Enables you to manage Private DNS zone Virtual Network Links. These Links enable DNS resolution and registration inside Azure Virtual Networks using Azure Private DNS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/privatedns"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		exampleZone, err := privatedns.NewZone(ctx, "exampleZone", &privatedns.ZoneArgs{
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		_, err = privatedns.NewZoneVirtualNetworkLink(ctx, "exampleZoneVirtualNetworkLink", &privatedns.ZoneVirtualNetworkLinkArgs{
			ResourceGroupName:  exampleResourceGroup.Name,
			PrivateDnsZoneName: exampleZone.Name,
			VirtualNetworkId:   pulumi.Any(azurerm_virtual_network.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Private DNS Zone Virtual Network Links can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:privatedns/zoneVirtualNetworkLink:ZoneVirtualNetworkLink link1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/privateDnsZones/zone1.com/virtualNetworkLinks/myVnetLink1

```

func GetZoneVirtualNetworkLink(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ZoneVirtualNetworkLinkState, opts ...pulumi.ResourceOption) (*ZoneVirtualNetworkLink, error)

GetZoneVirtualNetworkLink gets an existing ZoneVirtualNetworkLink resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewZoneVirtualNetworkLink(ctx *pulumi.Context,
	name string, args *ZoneVirtualNetworkLinkArgs, opts ...pulumi.ResourceOption) (*ZoneVirtualNetworkLink, error)

NewZoneVirtualNetworkLink registers a new resource with the given unique name, arguments, and options.

func (ZoneVirtualNetworkLink) ElementType added in v3.31.1

func (ZoneVirtualNetworkLink) ElementType() reflect.Type

func (ZoneVirtualNetworkLink) ToZoneVirtualNetworkLinkOutput added in v3.31.1

func (i ZoneVirtualNetworkLink) ToZoneVirtualNetworkLinkOutput() ZoneVirtualNetworkLinkOutput

func (ZoneVirtualNetworkLink) ToZoneVirtualNetworkLinkOutputWithContext added in v3.31.1

func (i ZoneVirtualNetworkLink) ToZoneVirtualNetworkLinkOutputWithContext(ctx context.Context) ZoneVirtualNetworkLinkOutput

type ZoneVirtualNetworkLinkArgs

type ZoneVirtualNetworkLinkArgs struct {
	// The name of the Private DNS Zone Virtual Network Link. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the Private DNS zone (without a terminating dot). Changing this forces a new resource to be created.
	PrivateDnsZoneName pulumi.StringInput
	// Is auto-registration of virtual machine records in the virtual network in the Private DNS zone enabled? Defaults to `false`.
	RegistrationEnabled pulumi.BoolPtrInput
	// Specifies the resource group where the Private DNS Zone exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// The ID of the Virtual Network that should be linked to the DNS Zone. Changing this forces a new resource to be created.
	VirtualNetworkId pulumi.StringInput
}

The set of arguments for constructing a ZoneVirtualNetworkLink resource.

func (ZoneVirtualNetworkLinkArgs) ElementType

func (ZoneVirtualNetworkLinkArgs) ElementType() reflect.Type

type ZoneVirtualNetworkLinkInput added in v3.31.1

type ZoneVirtualNetworkLinkInput interface {
	pulumi.Input

	ToZoneVirtualNetworkLinkOutput() ZoneVirtualNetworkLinkOutput
	ToZoneVirtualNetworkLinkOutputWithContext(ctx context.Context) ZoneVirtualNetworkLinkOutput
}

type ZoneVirtualNetworkLinkOutput added in v3.31.1

type ZoneVirtualNetworkLinkOutput struct {
	*pulumi.OutputState
}

func (ZoneVirtualNetworkLinkOutput) ElementType added in v3.31.1

func (ZoneVirtualNetworkLinkOutput) ToZoneVirtualNetworkLinkOutput added in v3.31.1

func (o ZoneVirtualNetworkLinkOutput) ToZoneVirtualNetworkLinkOutput() ZoneVirtualNetworkLinkOutput

func (ZoneVirtualNetworkLinkOutput) ToZoneVirtualNetworkLinkOutputWithContext added in v3.31.1

func (o ZoneVirtualNetworkLinkOutput) ToZoneVirtualNetworkLinkOutputWithContext(ctx context.Context) ZoneVirtualNetworkLinkOutput

type ZoneVirtualNetworkLinkState

type ZoneVirtualNetworkLinkState struct {
	// The name of the Private DNS Zone Virtual Network Link. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the Private DNS zone (without a terminating dot). Changing this forces a new resource to be created.
	PrivateDnsZoneName pulumi.StringPtrInput
	// Is auto-registration of virtual machine records in the virtual network in the Private DNS zone enabled? Defaults to `false`.
	RegistrationEnabled pulumi.BoolPtrInput
	// Specifies the resource group where the Private DNS Zone exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// The ID of the Virtual Network that should be linked to the DNS Zone. Changing this forces a new resource to be created.
	VirtualNetworkId pulumi.StringPtrInput
}

func (ZoneVirtualNetworkLinkState) ElementType

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL