1. Packages
  2. Yandex
  3. API Docs
  4. DnsZone
Yandex v0.13.0 published on Tuesday, Feb 22, 2022 by Pulumi

yandex.DnsZone

Explore with Pulumi AI

Manages a DNS Zone.

Example Usage

using Pulumi;
using Yandex = Pulumi.Yandex;

class MyStack : Stack
{
    public MyStack()
    {
        var foo = new Yandex.VpcNetwork("foo", new Yandex.VpcNetworkArgs
        {
        });
        var zone1 = new Yandex.DnsZone("zone1", new Yandex.DnsZoneArgs
        {
            Description = "desc",
            Labels = 
            {
                { "label1", "label-1-value" },
            },
            Zone = "example.com.",
            Public = false,
            PrivateNetworks = 
            {
                foo.Id,
            },
        });
        var rs1 = new Yandex.DnsRecordSet("rs1", new Yandex.DnsRecordSetArgs
        {
            ZoneId = zone1.Id,
            Type = "A",
            Ttl = 200,
            Datas = 
            {
                "10.1.0.1",
            },
        });
    }

}
Copy
package main

import (
	"github.com/pulumi/pulumi-yandex/sdk/go/yandex"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		foo, err := yandex.NewVpcNetwork(ctx, "foo", nil)
		if err != nil {
			return err
		}
		zone1, err := yandex.NewDnsZone(ctx, "zone1", &yandex.DnsZoneArgs{
			Description: pulumi.String("desc"),
			Labels: pulumi.StringMap{
				"label1": pulumi.String("label-1-value"),
			},
			Zone:   pulumi.String("example.com."),
			Public: pulumi.Bool(false),
			PrivateNetworks: pulumi.StringArray{
				foo.ID(),
			},
		})
		if err != nil {
			return err
		}
		_, err = yandex.NewDnsRecordSet(ctx, "rs1", &yandex.DnsRecordSetArgs{
			ZoneId: zone1.ID(),
			Type:   pulumi.String("A"),
			Ttl:    pulumi.Int(200),
			Datas: pulumi.StringArray{
				pulumi.String("10.1.0.1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy

Coming soon!

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

const foo = new yandex.VpcNetwork("foo", {});
const zone1 = new yandex.DnsZone("zone1", {
    description: "desc",
    labels: {
        label1: "label-1-value",
    },
    zone: "example.com.",
    "public": false,
    privateNetworks: [foo.id],
});
const rs1 = new yandex.DnsRecordSet("rs1", {
    zoneId: zone1.id,
    type: "A",
    ttl: 200,
    datas: ["10.1.0.1"],
});
Copy
import pulumi
import pulumi_yandex as yandex

foo = yandex.VpcNetwork("foo")
zone1 = yandex.DnsZone("zone1",
    description="desc",
    labels={
        "label1": "label-1-value",
    },
    zone="example.com.",
    public=False,
    private_networks=[foo.id])
rs1 = yandex.DnsRecordSet("rs1",
    zone_id=zone1.id,
    type="A",
    ttl=200,
    datas=["10.1.0.1"])
Copy

Coming soon!

Create DnsZone Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new DnsZone(name: string, args: DnsZoneArgs, opts?: CustomResourceOptions);
@overload
def DnsZone(resource_name: str,
            args: DnsZoneArgs,
            opts: Optional[ResourceOptions] = None)

@overload
def DnsZone(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            zone: Optional[str] = None,
            description: Optional[str] = None,
            folder_id: Optional[str] = None,
            labels: Optional[Mapping[str, str]] = None,
            name: Optional[str] = None,
            private_networks: Optional[Sequence[str]] = None,
            public: Optional[bool] = None)
func NewDnsZone(ctx *Context, name string, args DnsZoneArgs, opts ...ResourceOption) (*DnsZone, error)
public DnsZone(string name, DnsZoneArgs args, CustomResourceOptions? opts = null)
public DnsZone(String name, DnsZoneArgs args)
public DnsZone(String name, DnsZoneArgs args, CustomResourceOptions options)
type: yandex:DnsZone
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. DnsZoneArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. DnsZoneArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. DnsZoneArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. DnsZoneArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. DnsZoneArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var dnsZoneResource = new Yandex.DnsZone("dnsZoneResource", new()
{
    Zone = "string",
    Description = "string",
    FolderId = "string",
    Labels = 
    {
        { "string", "string" },
    },
    Name = "string",
    PrivateNetworks = new[]
    {
        "string",
    },
    Public = false,
});
Copy
example, err := yandex.NewDnsZone(ctx, "dnsZoneResource", &yandex.DnsZoneArgs{
	Zone:        pulumi.String("string"),
	Description: pulumi.String("string"),
	FolderId:    pulumi.String("string"),
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Name: pulumi.String("string"),
	PrivateNetworks: pulumi.StringArray{
		pulumi.String("string"),
	},
	Public: pulumi.Bool(false),
})
Copy
var dnsZoneResource = new DnsZone("dnsZoneResource", DnsZoneArgs.builder()
    .zone("string")
    .description("string")
    .folderId("string")
    .labels(Map.of("string", "string"))
    .name("string")
    .privateNetworks("string")
    .public_(false)
    .build());
Copy
dns_zone_resource = yandex.DnsZone("dnsZoneResource",
    zone="string",
    description="string",
    folder_id="string",
    labels={
        "string": "string",
    },
    name="string",
    private_networks=["string"],
    public=False)
Copy
const dnsZoneResource = new yandex.DnsZone("dnsZoneResource", {
    zone: "string",
    description: "string",
    folderId: "string",
    labels: {
        string: "string",
    },
    name: "string",
    privateNetworks: ["string"],
    "public": false,
});
Copy
type: yandex:DnsZone
properties:
    description: string
    folderId: string
    labels:
        string: string
    name: string
    privateNetworks:
        - string
    public: false
    zone: string
Copy

DnsZone Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The DnsZone resource accepts the following input properties:

Zone This property is required. string
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
Description string
Description of the DNS zone.
FolderId string
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
Labels Dictionary<string, string>
A set of key/value label pairs to assign to the DNS zone.
Name string
User assigned name of a specific resource. Must be unique within the folder.
PrivateNetworks List<string>
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
Public bool
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
Zone This property is required. string
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
Description string
Description of the DNS zone.
FolderId string
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
Labels map[string]string
A set of key/value label pairs to assign to the DNS zone.
Name string
User assigned name of a specific resource. Must be unique within the folder.
PrivateNetworks []string
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
Public bool
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
zone This property is required. String
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
description String
Description of the DNS zone.
folderId String
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
labels Map<String,String>
A set of key/value label pairs to assign to the DNS zone.
name String
User assigned name of a specific resource. Must be unique within the folder.
privateNetworks List<String>
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
public_ Boolean
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
zone This property is required. string
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
description string
Description of the DNS zone.
folderId string
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
labels {[key: string]: string}
A set of key/value label pairs to assign to the DNS zone.
name string
User assigned name of a specific resource. Must be unique within the folder.
privateNetworks string[]
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
public boolean
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
zone This property is required. str
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
description str
Description of the DNS zone.
folder_id str
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
labels Mapping[str, str]
A set of key/value label pairs to assign to the DNS zone.
name str
User assigned name of a specific resource. Must be unique within the folder.
private_networks Sequence[str]
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
public bool
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
zone This property is required. String
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
description String
Description of the DNS zone.
folderId String
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
labels Map<String>
A set of key/value label pairs to assign to the DNS zone.
name String
User assigned name of a specific resource. Must be unique within the folder.
privateNetworks List<String>
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
public Boolean
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.

Outputs

All input properties are implicitly available as output properties. Additionally, the DnsZone resource produces the following output properties:

CreatedAt string
(Computed) The DNS zone creation timestamp.
Id string
The provider-assigned unique ID for this managed resource.
CreatedAt string
(Computed) The DNS zone creation timestamp.
Id string
The provider-assigned unique ID for this managed resource.
createdAt String
(Computed) The DNS zone creation timestamp.
id String
The provider-assigned unique ID for this managed resource.
createdAt string
(Computed) The DNS zone creation timestamp.
id string
The provider-assigned unique ID for this managed resource.
created_at str
(Computed) The DNS zone creation timestamp.
id str
The provider-assigned unique ID for this managed resource.
createdAt String
(Computed) The DNS zone creation timestamp.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing DnsZone Resource

Get an existing DnsZone resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: DnsZoneState, opts?: CustomResourceOptions): DnsZone
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        created_at: Optional[str] = None,
        description: Optional[str] = None,
        folder_id: Optional[str] = None,
        labels: Optional[Mapping[str, str]] = None,
        name: Optional[str] = None,
        private_networks: Optional[Sequence[str]] = None,
        public: Optional[bool] = None,
        zone: Optional[str] = None) -> DnsZone
func GetDnsZone(ctx *Context, name string, id IDInput, state *DnsZoneState, opts ...ResourceOption) (*DnsZone, error)
public static DnsZone Get(string name, Input<string> id, DnsZoneState? state, CustomResourceOptions? opts = null)
public static DnsZone get(String name, Output<String> id, DnsZoneState state, CustomResourceOptions options)
resources:  _:    type: yandex:DnsZone    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
CreatedAt string
(Computed) The DNS zone creation timestamp.
Description string
Description of the DNS zone.
FolderId string
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
Labels Dictionary<string, string>
A set of key/value label pairs to assign to the DNS zone.
Name string
User assigned name of a specific resource. Must be unique within the folder.
PrivateNetworks List<string>
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
Public bool
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
Zone string
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
CreatedAt string
(Computed) The DNS zone creation timestamp.
Description string
Description of the DNS zone.
FolderId string
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
Labels map[string]string
A set of key/value label pairs to assign to the DNS zone.
Name string
User assigned name of a specific resource. Must be unique within the folder.
PrivateNetworks []string
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
Public bool
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
Zone string
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
createdAt String
(Computed) The DNS zone creation timestamp.
description String
Description of the DNS zone.
folderId String
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
labels Map<String,String>
A set of key/value label pairs to assign to the DNS zone.
name String
User assigned name of a specific resource. Must be unique within the folder.
privateNetworks List<String>
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
public_ Boolean
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
zone String
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
createdAt string
(Computed) The DNS zone creation timestamp.
description string
Description of the DNS zone.
folderId string
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
labels {[key: string]: string}
A set of key/value label pairs to assign to the DNS zone.
name string
User assigned name of a specific resource. Must be unique within the folder.
privateNetworks string[]
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
public boolean
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
zone string
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
created_at str
(Computed) The DNS zone creation timestamp.
description str
Description of the DNS zone.
folder_id str
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
labels Mapping[str, str]
A set of key/value label pairs to assign to the DNS zone.
name str
User assigned name of a specific resource. Must be unique within the folder.
private_networks Sequence[str]
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
public bool
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
zone str
The DNS name of this zone, e.g. "example.com.". Must ends with dot.
createdAt String
(Computed) The DNS zone creation timestamp.
description String
Description of the DNS zone.
folderId String
ID of the folder to create a zone in. If it is not provided, the default provider folder is used.
labels Map<String>
A set of key/value label pairs to assign to the DNS zone.
name String
User assigned name of a specific resource. Must be unique within the folder.
privateNetworks List<String>
For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from.
public Boolean
The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.
zone String
The DNS name of this zone, e.g. "example.com.". Must ends with dot.

Package Details

Repository
Yandex pulumi/pulumi-yandex
License
Apache-2.0
Notes
This Pulumi package is based on the yandex Terraform Provider.