AlidnsRecordArgs

data class AlidnsRecordArgs(val domainName: Output<String>? = null, val lang: Output<String>? = null, val line: Output<String>? = null, val priority: Output<Int>? = null, val remark: Output<String>? = null, val rr: Output<String>? = null, val status: Output<String>? = null, val ttl: Output<Int>? = null, val type: Output<String>? = null, val userClientIp: Output<String>? = null, val value: Output<String>? = null) : ConvertibleToJava<AlidnsRecordArgs>

Provides a Alidns Record resource. For information about Alidns Domain Record and how to use it, see What is Resource Alidns Record.

NOTE: Available since v1.85.0. NOTE: When the site is an international site, the type neither supports REDIRECT_URL nor REDIRECT_URL

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = new alicloud.dns.DomainGroup("default", {domainGroupName: "tf-example"});
const defaultAlidnsDomain = new alicloud.dns.AlidnsDomain("default", {
domainName: "starmove.com",
groupId: _default.id,
tags: {
Created: "TF",
For: "example",
},
});
const record = new alicloud.dns.AlidnsRecord("record", {
domainName: defaultAlidnsDomain.domainName,
rr: "alimail",
type: "CNAME",
value: "mail.mxhichin.com",
remark: "tf-example",
status: "ENABLE",
});
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.dns.DomainGroup("default", domain_group_name="tf-example")
default_alidns_domain = alicloud.dns.AlidnsDomain("default",
domain_name="starmove.com",
group_id=default.id,
tags={
"Created": "TF",
"For": "example",
})
record = alicloud.dns.AlidnsRecord("record",
domain_name=default_alidns_domain.domain_name,
rr="alimail",
type="CNAME",
value="mail.mxhichin.com",
remark="tf-example",
status="ENABLE")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = new AliCloud.Dns.DomainGroup("default", new()
{
DomainGroupName = "tf-example",
});
var defaultAlidnsDomain = new AliCloud.Dns.AlidnsDomain("default", new()
{
DomainName = "starmove.com",
GroupId = @default.Id,
Tags =
{
{ "Created", "TF" },
{ "For", "example" },
},
});
var record = new AliCloud.Dns.AlidnsRecord("record", new()
{
DomainName = defaultAlidnsDomain.DomainName,
Rr = "alimail",
Type = "CNAME",
Value = "mail.mxhichin.com",
Remark = "tf-example",
Status = "ENABLE",
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_default, err := dns.NewDomainGroup(ctx, "default", &dns.DomainGroupArgs{
DomainGroupName: pulumi.String("tf-example"),
})
if err != nil {
return err
}
defaultAlidnsDomain, err := dns.NewAlidnsDomain(ctx, "default", &dns.AlidnsDomainArgs{
DomainName: pulumi.String("starmove.com"),
GroupId: _default.ID(),
Tags: pulumi.StringMap{
"Created": pulumi.String("TF"),
"For": pulumi.String("example"),
},
})
if err != nil {
return err
}
_, err = dns.NewAlidnsRecord(ctx, "record", &dns.AlidnsRecordArgs{
DomainName: defaultAlidnsDomain.DomainName,
Rr: pulumi.String("alimail"),
Type: pulumi.String("CNAME"),
Value: pulumi.String("mail.mxhichin.com"),
Remark: pulumi.String("tf-example"),
Status: pulumi.String("ENABLE"),
})
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.alicloud.dns.DomainGroup;
import com.pulumi.alicloud.dns.DomainGroupArgs;
import com.pulumi.alicloud.dns.AlidnsDomain;
import com.pulumi.alicloud.dns.AlidnsDomainArgs;
import com.pulumi.alicloud.dns.AlidnsRecord;
import com.pulumi.alicloud.dns.AlidnsRecordArgs;
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 default_ = new DomainGroup("default", DomainGroupArgs.builder()
.domainGroupName("tf-example")
.build());
var defaultAlidnsDomain = new AlidnsDomain("defaultAlidnsDomain", AlidnsDomainArgs.builder()
.domainName("starmove.com")
.groupId(default_.id())
.tags(Map.ofEntries(
Map.entry("Created", "TF"),
Map.entry("For", "example")
))
.build());
var record = new AlidnsRecord("record", AlidnsRecordArgs.builder()
.domainName(defaultAlidnsDomain.domainName())
.rr("alimail")
.type("CNAME")
.value("mail.mxhichin.com")
.remark("tf-example")
.status("ENABLE")
.build());
}
}
resources:
default:
type: alicloud:dns:DomainGroup
properties:
domainGroupName: tf-example
defaultAlidnsDomain:
type: alicloud:dns:AlidnsDomain
name: default
properties:
domainName: starmove.com
groupId: ${default.id}
tags:
Created: TF
For: example
record:
type: alicloud:dns:AlidnsRecord
properties:
domainName: ${defaultAlidnsDomain.domainName}
rr: alimail
type: CNAME
value: mail.mxhichin.com
remark: tf-example
status: ENABLE

Import

Alidns Domain Record can be imported using the id, e.g.

$ pulumi import alicloud:dns/alidnsRecord:AlidnsRecord example abc123456

Constructors

Link copied to clipboard
constructor(domainName: Output<String>? = null, lang: Output<String>? = null, line: Output<String>? = null, priority: Output<Int>? = null, remark: Output<String>? = null, rr: Output<String>? = null, status: Output<String>? = null, ttl: Output<Int>? = null, type: Output<String>? = null, userClientIp: Output<String>? = null, value: Output<String>? = null)

Properties

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

Name of the domain. This name without suffix can have a string of 1 to 63 characters, must contain only alphanumeric characters or "-", and must not begin or end with "-", and "-" must not in the 3th and 4th character positions at the same time. Suffix .sh and .tel are not supported.

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

User language.

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

The resolution line of domain record. When the type is FORWORD_URL, this parameter must be default. Default value is default. For checking all resolution lines enumeration please visit Alibaba Cloud DNS doc or using alicloud.dns.getResolutionLines in data source to get the value.

Link copied to clipboard
val priority: Output<Int>? = null

The priority of domain record. Valid values: [1-10]. When the type is MX, this parameter is required.

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

The remark of the domain record.

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

Host record for the domain record. This host_record can have at most 253 characters, and each part split with . can have at most 63 characters, and must contain only alphanumeric characters or hyphens, such as -, ., *, @, and must not begin or end with -.

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

The status of the domain record. Valid values: ENABLE,DISABLE.

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

The effective time of domain record. Its scope depends on the edition of the cloud resolution. Free is [600, 86400], Basic is [120, 86400], Standard is [60, 86400], Ultimate is [10, 86400], Exclusive is [1, 86400]. Default value is 600.

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

The type of domain record. Valid values: A,NS,MX,TXT,CNAME,SRV,AAAA,CAA, REDIRECT_URL and FORWORD_URL.

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

The IP address of the client.

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

The value of domain record, When the type is MX,NS,CNAME,SRV, the server will treat the value as a fully qualified domain name, so it's no need to add a . at the end.

Functions

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