Module dns

@pulumi/gcp > dns

Index

dns/getManagedZone.ts dns/managedZone.ts dns/recordSet.ts

class ManagedZone

Manages a zone within Google Cloud DNS. For more information see the official documentation and API.

constructor

new ManagedZone(name: string, args: ManagedZoneArgs, opts?: pulumi.CustomResourceOptions)

Create a ManagedZone resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ManagedZoneState): ManagedZone

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property description

public description: pulumi.Output<string | undefined>;

A textual description field. Defaults to ‘Managed by Terraform’.

property dnsName

public dnsName: pulumi.Output<string>;

The fully qualified DNS name of this zone, e.g. terraform.io..

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property labels

public labels: pulumi.Output<{ ... } | undefined>;

A set of key/value label pairs to assign to the instance.

property name

public name: pulumi.Output<string>;

A unique name for the resource, required by GCE. Changing this forces a new resource to be created.

property nameServers

public nameServers: pulumi.Output<string[]>;

The list of nameservers that will be authoritative for this domain. Use NS records to redirect from your DNS provider to these names, thus making Google Cloud DNS authoritative for this zone.

property project

public project: pulumi.Output<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class RecordSet

Manages a set of DNS records within Google Cloud DNS. For more information see the official documentation and API.

~> Note: The Google Cloud DNS API requires NS records be present at all times. To accommodate this, when creating NS records, the default records Google automatically creates will be silently overwritten. Also, when destroying NS records, Terraform will not actually remove NS records, but will report that it did.

constructor

new RecordSet(name: string, args: RecordSetArgs, opts?: pulumi.CustomResourceOptions)

Create a RecordSet resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RecordSetState): RecordSet

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property managedZone

public managedZone: pulumi.Output<string>;

The name of the zone in which this record set will reside.

property name

public name: pulumi.Output<string>;

The DNS name this record set will apply to.

property project

public project: pulumi.Output<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property rrdatas

public rrdatas: pulumi.Output<string[]>;

The string data for the records in this record set whose meaning depends on the DNS type. For TXT record, if the string data contains spaces, add surrounding \" if you don’t want your string to get split on spaces.

property ttl

public ttl: pulumi.Output<number>;

The time-to-live of this record set (seconds).

property type

public type: pulumi.Output<string>;

The DNS record set type.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

function getManagedZone

getManagedZone(args: GetManagedZoneArgs, opts?: pulumi.InvokeOptions): Promise<GetManagedZoneResult>

Provides access to a zone’s attributes within Google Cloud DNS. For more information see the official documentation and API.

data "google_dns_managed_zone" "env_dns_zone" {
  name        = "qa-zone"
}

resource "google_dns_record_set" "dns" {
  name = "my-address.${data.google_dns_managed_zone.env_dns_zone.dns_name}"
  type = "TXT"
  ttl  = 300

  managed_zone = "${data.google_dns_managed_zone.env_dns_zone.name}"

  rrdatas = ["test"]
}

interface GetManagedZoneArgs

A collection of arguments for invoking getManagedZone.

property name

name: string;

A unique name for the resource.

property project

project?: string;

The ID of the project for the Google Cloud DNS zone.

interface GetManagedZoneResult

A collection of values returned by getManagedZone.

property description

description: string;

A textual description field.

property dnsName

dnsName: string;

The fully qualified DNS name of this zone, e.g. terraform.io..

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property nameServers

nameServers: string[];

The list of nameservers that will be authoritative for this domain. Use NS records to redirect from your DNS provider to these names, thus making Google Cloud DNS authoritative for this zone.

interface ManagedZoneArgs

The set of arguments for constructing a ManagedZone resource.

property description

description?: pulumi.Input<string>;

A textual description field. Defaults to ‘Managed by Terraform’.

property dnsName

dnsName: pulumi.Input<string>;

The fully qualified DNS name of this zone, e.g. terraform.io..

property labels

labels?: pulumi.Input<{ ... }>;

A set of key/value label pairs to assign to the instance.

property name

name?: pulumi.Input<string>;

A unique name for the resource, required by GCE. Changing this forces a new resource to be created.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

interface ManagedZoneState

Input properties used for looking up and filtering ManagedZone resources.

property description

description?: pulumi.Input<string>;

A textual description field. Defaults to ‘Managed by Terraform’.

property dnsName

dnsName?: pulumi.Input<string>;

The fully qualified DNS name of this zone, e.g. terraform.io..

property labels

labels?: pulumi.Input<{ ... }>;

A set of key/value label pairs to assign to the instance.

property name

name?: pulumi.Input<string>;

A unique name for the resource, required by GCE. Changing this forces a new resource to be created.

property nameServers

nameServers?: pulumi.Input<pulumi.Input<string>[]>;

The list of nameservers that will be authoritative for this domain. Use NS records to redirect from your DNS provider to these names, thus making Google Cloud DNS authoritative for this zone.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

interface RecordSetArgs

The set of arguments for constructing a RecordSet resource.

property managedZone

managedZone: pulumi.Input<string>;

The name of the zone in which this record set will reside.

property name

name?: pulumi.Input<string>;

The DNS name this record set will apply to.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property rrdatas

rrdatas: pulumi.Input<pulumi.Input<string>[]>;

The string data for the records in this record set whose meaning depends on the DNS type. For TXT record, if the string data contains spaces, add surrounding \" if you don’t want your string to get split on spaces.

property ttl

ttl: pulumi.Input<number>;

The time-to-live of this record set (seconds).

property type

type: pulumi.Input<string>;

The DNS record set type.

interface RecordSetState

Input properties used for looking up and filtering RecordSet resources.

property managedZone

managedZone?: pulumi.Input<string>;

The name of the zone in which this record set will reside.

property name

name?: pulumi.Input<string>;

The DNS name this record set will apply to.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property rrdatas

rrdatas?: pulumi.Input<pulumi.Input<string>[]>;

The string data for the records in this record set whose meaning depends on the DNS type. For TXT record, if the string data contains spaces, add surrounding \" if you don’t want your string to get split on spaces.

property ttl

ttl?: pulumi.Input<number>;

The time-to-live of this record set (seconds).

property type

type?: pulumi.Input<string>;

The DNS record set type.