RecordSetArgs

data class RecordSetArgs(val aRecords: Output<List<ARecordArgs>>? = null, val aaaaRecords: Output<List<AaaaRecordArgs>>? = null, val caaRecords: Output<List<CaaRecordArgs>>? = null, val cnameRecord: Output<CnameRecordArgs>? = null, val dsRecords: Output<List<DsRecordArgs>>? = null, val metadata: Output<Map<String, String>>? = null, val mxRecords: Output<List<MxRecordArgs>>? = null, val naptrRecords: Output<List<NaptrRecordArgs>>? = null, val nsRecords: Output<List<NsRecordArgs>>? = null, val ptrRecords: Output<List<PtrRecordArgs>>? = null, val recordType: Output<String>? = null, val relativeRecordSetName: Output<String>? = null, val resourceGroupName: Output<String>? = null, val soaRecord: Output<SoaRecordArgs>? = null, val srvRecords: Output<List<SrvRecordArgs>>? = null, val targetResource: Output<SubResourceArgs>? = null, val tlsaRecords: Output<List<TlsaRecordArgs>>? = null, val trafficManagementProfile: Output<SubResourceArgs>? = null, val ttl: Output<Double>? = null, val txtRecords: Output<List<TxtRecordArgs>>? = null, val zoneName: Output<String>? = null) : ConvertibleToJava<RecordSetArgs>

Describes a DNS record set (a collection of DNS records with the same name and type). Uses Azure REST API version 2023-07-01-preview. Other available API versions: 2015-05-04-preview, 2016-04-01, 2017-09-01, 2017-10-01, 2018-03-01-preview, 2018-05-01. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native dns [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create A recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
ARecords = new[]
{
new AzureNative.Dns.Inputs.ARecordArgs
{
Ipv4Address = "127.0.0.1",
},
},
Metadata =
{
{ "key1", "value1" },
},
RecordType = "A",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
ARecords: dns.ARecordArray{
&dns.ARecordArgs{
Ipv4Address: pulumi.String("127.0.0.1"),
},
},
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("A"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.ARecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.aRecords(ARecordArgs.builder()
.ipv4Address("127.0.0.1")
.build())
.metadata(Map.of("key1", "value1"))
.recordType("A")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create A recordset with alias target resource

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
RecordType = "A",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
TargetResource = new AzureNative.Dns.Inputs.SubResourceArgs
{
Id = "/subscriptions/726f8cd6-6459-4db4-8e6d-2cd2716904e2/resourceGroups/test/providers/Microsoft.Network/trafficManagerProfiles/testpp2",
},
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("A"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
TargetResource: &dns.SubResourceArgs{
Id: pulumi.String("/subscriptions/726f8cd6-6459-4db4-8e6d-2cd2716904e2/resourceGroups/test/providers/Microsoft.Network/trafficManagerProfiles/testpp2"),
},
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.SubResourceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.recordType("A")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.targetResource(SubResourceArgs.builder()
.id("/subscriptions/726f8cd6-6459-4db4-8e6d-2cd2716904e2/resourceGroups/test/providers/Microsoft.Network/trafficManagerProfiles/testpp2")
.build())
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create A recordset with traffic management profile

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
RecordType = "A",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
TrafficManagementProfile = new AzureNative.Dns.Inputs.SubResourceArgs
{
Id = "/subscriptions/726f8cd6-6459-4db4-8e6d-2cd2716904e2/resourceGroups/test/providers/Microsoft.Network/trafficManagerProfiles/testpp2",
},
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("A"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
TrafficManagementProfile: &dns.SubResourceArgs{
Id: pulumi.String("/subscriptions/726f8cd6-6459-4db4-8e6d-2cd2716904e2/resourceGroups/test/providers/Microsoft.Network/trafficManagerProfiles/testpp2"),
},
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.SubResourceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.recordType("A")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.trafficManagementProfile(SubResourceArgs.builder()
.id("/subscriptions/726f8cd6-6459-4db4-8e6d-2cd2716904e2/resourceGroups/test/providers/Microsoft.Network/trafficManagerProfiles/testpp2")
.build())
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create AAAA recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
AaaaRecords = new[]
{
new AzureNative.Dns.Inputs.AaaaRecordArgs
{
Ipv6Address = "::1",
},
},
Metadata =
{
{ "key1", "value1" },
},
RecordType = "AAAA",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
AaaaRecords: dns.AaaaRecordArray{
&dns.AaaaRecordArgs{
Ipv6Address: pulumi.String("::1"),
},
},
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("AAAA"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.AaaaRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.aaaaRecords(AaaaRecordArgs.builder()
.ipv6Address("::1")
.build())
.metadata(Map.of("key1", "value1"))
.recordType("AAAA")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create CAA recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
CaaRecords = new[]
{
new AzureNative.Dns.Inputs.CaaRecordArgs
{
Flags = 0,
Tag = "issue",
Value = "ca.contoso.com",
},
},
Metadata =
{
{ "key1", "value1" },
},
RecordType = "CAA",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
CaaRecords: dns.CaaRecordArray{
&dns.CaaRecordArgs{
Flags: pulumi.Int(0),
Tag: pulumi.String("issue"),
Value: pulumi.String("ca.contoso.com"),
},
},
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("CAA"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.CaaRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.caaRecords(CaaRecordArgs.builder()
.flags(0)
.tag("issue")
.value("ca.contoso.com")
.build())
.metadata(Map.of("key1", "value1"))
.recordType("CAA")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create CNAME recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
CnameRecord = new AzureNative.Dns.Inputs.CnameRecordArgs
{
Cname = "contoso.com",
},
Metadata =
{
{ "key1", "value1" },
},
RecordType = "CNAME",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
CnameRecord: &dns.CnameRecordArgs{
Cname: pulumi.String("contoso.com"),
},
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("CNAME"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.CnameRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.cnameRecord(CnameRecordArgs.builder()
.cname("contoso.com")
.build())
.metadata(Map.of("key1", "value1"))
.recordType("CNAME")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create DS recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
DsRecords = new[]
{
new AzureNative.Dns.Inputs.DsRecordArgs
{
Algorithm = 5,
Digest = new AzureNative.Dns.Inputs.DigestArgs
{
AlgorithmType = 1,
Value = "2BB183AF5F22588179A53B0A98631FAD1A292118",
},
KeyTag = 60485,
},
},
Metadata =
{
{ "key1", "value1" },
},
RecordType = "DS",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
DsRecords: dns.DsRecordArray{
&dns.DsRecordArgs{
Algorithm: pulumi.Int(5),
Digest: &dns.DigestArgs{
AlgorithmType: pulumi.Int(1),
Value: pulumi.String("2BB183AF5F22588179A53B0A98631FAD1A292118"),
},
KeyTag: pulumi.Int(60485),
},
},
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("DS"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.DsRecordArgs;
import com.pulumi.azurenative.dns.inputs.DigestArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.dsRecords(DsRecordArgs.builder()
.algorithm(5)
.digest(DigestArgs.builder()
.algorithmType(1)
.value("2BB183AF5F22588179A53B0A98631FAD1A292118")
.build())
.keyTag(60485)
.build())
.metadata(Map.of("key1", "value1"))
.recordType("DS")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create MX recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
MxRecords = new[]
{
new AzureNative.Dns.Inputs.MxRecordArgs
{
Exchange = "mail.contoso.com",
Preference = 0,
},
},
RecordType = "MX",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
MxRecords: dns.MxRecordArray{
&dns.MxRecordArgs{
Exchange: pulumi.String("mail.contoso.com"),
Preference: pulumi.Int(0),
},
},
RecordType: pulumi.String("MX"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.MxRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.mxRecords(MxRecordArgs.builder()
.exchange("mail.contoso.com")
.preference(0)
.build())
.recordType("MX")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create NAPTR recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
NaptrRecords = new[]
{
new AzureNative.Dns.Inputs.NaptrRecordArgs
{
Flags = "U",
Order = 100,
Preference = 10,
Regexp = "!^.*$!sip:user@example.com!",
Replacement = "",
Services = "E2U+sip",
},
},
RecordType = "NAPTR",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
NaptrRecords: dns.NaptrRecordArray{
&dns.NaptrRecordArgs{
Flags: pulumi.String("U"),
Order: pulumi.Int(100),
Preference: pulumi.Int(10),
Regexp: pulumi.String("!^.*$!sip:user@example.com!"),
Replacement: pulumi.String(""),
Services: pulumi.String("E2U+sip"),
},
},
RecordType: pulumi.String("NAPTR"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.NaptrRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.naptrRecords(NaptrRecordArgs.builder()
.flags("U")
.order(100)
.preference(10)
.regexp("!^.*$!sip:user@example.com!")
.replacement("")
.services("E2U+sip")
.build())
.recordType("NAPTR")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create NS recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
NsRecords = new[]
{
new AzureNative.Dns.Inputs.NsRecordArgs
{
Nsdname = "ns1.contoso.com",
},
},
RecordType = "NS",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
NsRecords: dns.NsRecordArray{
&dns.NsRecordArgs{
Nsdname: pulumi.String("ns1.contoso.com"),
},
},
RecordType: pulumi.String("NS"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.NsRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.nsRecords(NsRecordArgs.builder()
.nsdname("ns1.contoso.com")
.build())
.recordType("NS")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create PTR recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
PtrRecords = new[]
{
new AzureNative.Dns.Inputs.PtrRecordArgs
{
Ptrdname = "localhost",
},
},
RecordType = "PTR",
RelativeRecordSetName = "1",
ResourceGroupName = "rg1",
Ttl = 3600,
ZoneName = "0.0.127.in-addr.arpa",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
PtrRecords: dns.PtrRecordArray{
&dns.PtrRecordArgs{
Ptrdname: pulumi.String("localhost"),
},
},
RecordType: pulumi.String("PTR"),
RelativeRecordSetName: pulumi.String("1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("0.0.127.in-addr.arpa"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.PtrRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.ptrRecords(PtrRecordArgs.builder()
.ptrdname("localhost")
.build())
.recordType("PTR")
.relativeRecordSetName("1")
.resourceGroupName("rg1")
.ttl(3600)
.zoneName("0.0.127.in-addr.arpa")
.build());
}
}

Create SOA recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
RecordType = "SOA",
RelativeRecordSetName = "@",
ResourceGroupName = "rg1",
SoaRecord = new AzureNative.Dns.Inputs.SoaRecordArgs
{
Email = "hostmaster.contoso.com",
ExpireTime = 2419200,
Host = "ns1.contoso.com",
MinimumTtl = 300,
RefreshTime = 3600,
RetryTime = 300,
SerialNumber = 1,
},
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("SOA"),
RelativeRecordSetName: pulumi.String("@"),
ResourceGroupName: pulumi.String("rg1"),
SoaRecord: &dns.SoaRecordArgs{
Email: pulumi.String("hostmaster.contoso.com"),
ExpireTime: pulumi.Float64(2419200),
Host: pulumi.String("ns1.contoso.com"),
MinimumTtl: pulumi.Float64(300),
RefreshTime: pulumi.Float64(3600),
RetryTime: pulumi.Float64(300),
SerialNumber: pulumi.Float64(1),
},
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.SoaRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.recordType("SOA")
.relativeRecordSetName("@")
.resourceGroupName("rg1")
.soaRecord(SoaRecordArgs.builder()
.email("hostmaster.contoso.com")
.expireTime(2419200)
.host("ns1.contoso.com")
.minimumTtl(300)
.refreshTime(3600)
.retryTime(300)
.serialNumber(1)
.build())
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create SRV recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
RecordType = "SRV",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
SrvRecords = new[]
{
new AzureNative.Dns.Inputs.SrvRecordArgs
{
Port = 80,
Priority = 0,
Target = "contoso.com",
Weight = 10,
},
},
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("SRV"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
SrvRecords: dns.SrvRecordArray{
&dns.SrvRecordArgs{
Port: pulumi.Int(80),
Priority: pulumi.Int(0),
Target: pulumi.String("contoso.com"),
Weight: pulumi.Int(10),
},
},
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.SrvRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.recordType("SRV")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.srvRecords(SrvRecordArgs.builder()
.port(80)
.priority(0)
.target("contoso.com")
.weight(10)
.build())
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create TLSA recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
RecordType = "TLSA",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
TlsaRecords = new[]
{
new AzureNative.Dns.Inputs.TlsaRecordArgs
{
CertAssociationData = "6EC8A4B7F511454D84DCC055213B8D195E8ADA751FE14300AFE32D54B162438B",
MatchingType = 1,
Selector = 1,
Usage = 3,
},
},
Ttl = 3600,
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("TLSA"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
TlsaRecords: dns.TlsaRecordArray{
&dns.TlsaRecordArgs{
CertAssociationData: pulumi.String("6EC8A4B7F511454D84DCC055213B8D195E8ADA751FE14300AFE32D54B162438B"),
MatchingType: pulumi.Int(1),
Selector: pulumi.Int(1),
Usage: pulumi.Int(3),
},
},
Ttl: pulumi.Float64(3600),
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.TlsaRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.recordType("TLSA")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.tlsaRecords(TlsaRecordArgs.builder()
.certAssociationData("6EC8A4B7F511454D84DCC055213B8D195E8ADA751FE14300AFE32D54B162438B")
.matchingType(1)
.selector(1)
.usage(3)
.build())
.ttl(3600)
.zoneName("zone1")
.build());
}
}

Create TXT recordset

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var recordSet = new AzureNative.Dns.RecordSet("recordSet", new()
{
Metadata =
{
{ "key1", "value1" },
},
RecordType = "TXT",
RelativeRecordSetName = "record1",
ResourceGroupName = "rg1",
Ttl = 3600,
TxtRecords = new[]
{
new AzureNative.Dns.Inputs.TxtRecordArgs
{
Value = new[]
{
"string1",
"string2",
},
},
},
ZoneName = "zone1",
});
});
package main
import (
dns "github.com/pulumi/pulumi-azure-native-sdk/dns/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
Metadata: pulumi.StringMap{
"key1": pulumi.String("value1"),
},
RecordType: pulumi.String("TXT"),
RelativeRecordSetName: pulumi.String("record1"),
ResourceGroupName: pulumi.String("rg1"),
Ttl: pulumi.Float64(3600),
TxtRecords: dns.TxtRecordArray{
&dns.TxtRecordArgs{
Value: pulumi.StringArray{
pulumi.String("string1"),
pulumi.String("string2"),
},
},
},
ZoneName: pulumi.String("zone1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dns.RecordSet;
import com.pulumi.azurenative.dns.RecordSetArgs;
import com.pulumi.azurenative.dns.inputs.TxtRecordArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var recordSet = new RecordSet("recordSet", RecordSetArgs.builder()
.metadata(Map.of("key1", "value1"))
.recordType("TXT")
.relativeRecordSetName("record1")
.resourceGroupName("rg1")
.ttl(3600)
.txtRecords(TxtRecordArgs.builder()
.value(
"string1",
"string2")
.build())
.zoneName("zone1")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:dns:RecordSet record1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}

Constructors

Link copied to clipboard
constructor(aRecords: Output<List<ARecordArgs>>? = null, aaaaRecords: Output<List<AaaaRecordArgs>>? = null, caaRecords: Output<List<CaaRecordArgs>>? = null, cnameRecord: Output<CnameRecordArgs>? = null, dsRecords: Output<List<DsRecordArgs>>? = null, metadata: Output<Map<String, String>>? = null, mxRecords: Output<List<MxRecordArgs>>? = null, naptrRecords: Output<List<NaptrRecordArgs>>? = null, nsRecords: Output<List<NsRecordArgs>>? = null, ptrRecords: Output<List<PtrRecordArgs>>? = null, recordType: Output<String>? = null, relativeRecordSetName: Output<String>? = null, resourceGroupName: Output<String>? = null, soaRecord: Output<SoaRecordArgs>? = null, srvRecords: Output<List<SrvRecordArgs>>? = null, targetResource: Output<SubResourceArgs>? = null, tlsaRecords: Output<List<TlsaRecordArgs>>? = null, trafficManagementProfile: Output<SubResourceArgs>? = null, ttl: Output<Double>? = null, txtRecords: Output<List<TxtRecordArgs>>? = null, zoneName: Output<String>? = null)

Properties

Link copied to clipboard
val aaaaRecords: Output<List<AaaaRecordArgs>>? = null

The list of AAAA records in the record set.

Link copied to clipboard
val aRecords: Output<List<ARecordArgs>>? = null

The list of A records in the record set.

Link copied to clipboard
val caaRecords: Output<List<CaaRecordArgs>>? = null

The list of CAA records in the record set.

Link copied to clipboard
val cnameRecord: Output<CnameRecordArgs>? = null

The CNAME record in the record set.

Link copied to clipboard
val dsRecords: Output<List<DsRecordArgs>>? = null

The list of DS records in the record set.

Link copied to clipboard
val metadata: Output<Map<String, String>>? = null

The metadata attached to the record set.

Link copied to clipboard
val mxRecords: Output<List<MxRecordArgs>>? = null

The list of MX records in the record set.

Link copied to clipboard
val naptrRecords: Output<List<NaptrRecordArgs>>? = null

The list of NAPTR records in the record set.

Link copied to clipboard
val nsRecords: Output<List<NsRecordArgs>>? = null

The list of NS records in the record set.

Link copied to clipboard
val ptrRecords: Output<List<PtrRecordArgs>>? = null

The list of PTR records in the record set.

Link copied to clipboard
val recordType: Output<String>? = null

The type of DNS record in this record set.

Link copied to clipboard
val relativeRecordSetName: Output<String>? = null

The name of the record set, relative to the name of the zone.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group. The name is case insensitive.

Link copied to clipboard
val soaRecord: Output<SoaRecordArgs>? = null

The SOA record in the record set.

Link copied to clipboard
val srvRecords: Output<List<SrvRecordArgs>>? = null

The list of SRV records in the record set.

Link copied to clipboard
val targetResource: Output<SubResourceArgs>? = null

A reference to an azure resource from where the dns resource value is taken.

Link copied to clipboard
val tlsaRecords: Output<List<TlsaRecordArgs>>? = null

The list of TLSA records in the record set.

Link copied to clipboard

A reference to an azure traffic manager profile resource from where the dns resource value is taken.

Link copied to clipboard
val ttl: Output<Double>? = null

The TTL (time-to-live) of the records in the record set.

Link copied to clipboard
val txtRecords: Output<List<TxtRecordArgs>>? = null

The list of TXT records in the record set.

Link copied to clipboard
val zoneName: Output<String>? = null

The name of the DNS zone (without a terminating dot).

Functions

Link copied to clipboard
open override fun toJava(): RecordSetArgs