dns

package
v6.67.1 Latest Latest
Warning

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

Go to latest
Published: Nov 4, 2023 License: Apache-2.0 Imports: 8 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DnsManagedZoneIamBinding added in v6.47.0

type DnsManagedZoneIamBinding struct {
	pulumi.CustomResourceState

	Condition DnsManagedZoneIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringOutput      `pulumi:"managedZone"`
	Members     pulumi.StringArrayOutput `pulumi:"members"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `dns.DnsManagedZoneIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Cloud DNS ManagedZone. Each of these resources serves a different use case:

* `dns.DnsManagedZoneIamPolicy`: Authoritative. Sets the IAM policy for the managedzone and replaces any existing policy already attached. * `dns.DnsManagedZoneIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the managedzone are preserved. * `dns.DnsManagedZoneIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the managedzone are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `dns.DnsManagedZoneIamPolicy`: Retrieves the IAM policy for the managedzone

> **Note:** `dns.DnsManagedZoneIamPolicy` **cannot** be used in conjunction with `dns.DnsManagedZoneIamBinding` and `dns.DnsManagedZoneIamMember` or they will fight over what your policy should be.

> **Note:** `dns.DnsManagedZoneIamBinding` resources **can be** used in conjunction with `dns.DnsManagedZoneIamMember` resources **only if** they do not grant privilege to the same role.

## google\_dns\_managed\_zone\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = dns.NewDnsManagedZoneIamPolicy(ctx, "policy", &dns.DnsManagedZoneIamPolicyArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_dns\_managed\_zone\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewDnsManagedZoneIamBinding(ctx, "binding", &dns.DnsManagedZoneIamBindingArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_dns\_managed\_zone\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewDnsManagedZoneIamMember(ctx, "member", &dns.DnsManagedZoneIamMemberArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/managedZones/{{managed_zone}} * {{project}}/{{managed_zone}} * {{managed_zone}} Any variables not passed in the import command will be taken from the provider configuration. Cloud DNS managedzone IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamBinding:DnsManagedZoneIamBinding editor "projects/{{project}}/managedZones/{{managed_zone}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamBinding:DnsManagedZoneIamBinding editor "projects/{{project}}/managedZones/{{managed_zone}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamBinding:DnsManagedZoneIamBinding editor projects/{{project}}/managedZones/{{managed_zone}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetDnsManagedZoneIamBinding added in v6.47.0

func GetDnsManagedZoneIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DnsManagedZoneIamBindingState, opts ...pulumi.ResourceOption) (*DnsManagedZoneIamBinding, error)

GetDnsManagedZoneIamBinding gets an existing DnsManagedZoneIamBinding 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 NewDnsManagedZoneIamBinding added in v6.47.0

func NewDnsManagedZoneIamBinding(ctx *pulumi.Context,
	name string, args *DnsManagedZoneIamBindingArgs, opts ...pulumi.ResourceOption) (*DnsManagedZoneIamBinding, error)

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

func (*DnsManagedZoneIamBinding) ElementType added in v6.47.0

func (*DnsManagedZoneIamBinding) ElementType() reflect.Type

func (*DnsManagedZoneIamBinding) ToDnsManagedZoneIamBindingOutput added in v6.47.0

func (i *DnsManagedZoneIamBinding) ToDnsManagedZoneIamBindingOutput() DnsManagedZoneIamBindingOutput

func (*DnsManagedZoneIamBinding) ToDnsManagedZoneIamBindingOutputWithContext added in v6.47.0

func (i *DnsManagedZoneIamBinding) ToDnsManagedZoneIamBindingOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingOutput

func (*DnsManagedZoneIamBinding) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingArgs added in v6.47.0

type DnsManagedZoneIamBindingArgs struct {
	Condition DnsManagedZoneIamBindingConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringInput
	Members     pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `dns.DnsManagedZoneIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a DnsManagedZoneIamBinding resource.

func (DnsManagedZoneIamBindingArgs) ElementType added in v6.47.0

type DnsManagedZoneIamBindingArray added in v6.47.0

type DnsManagedZoneIamBindingArray []DnsManagedZoneIamBindingInput

func (DnsManagedZoneIamBindingArray) ElementType added in v6.47.0

func (DnsManagedZoneIamBindingArray) ToDnsManagedZoneIamBindingArrayOutput added in v6.47.0

func (i DnsManagedZoneIamBindingArray) ToDnsManagedZoneIamBindingArrayOutput() DnsManagedZoneIamBindingArrayOutput

func (DnsManagedZoneIamBindingArray) ToDnsManagedZoneIamBindingArrayOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamBindingArray) ToDnsManagedZoneIamBindingArrayOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingArrayOutput

func (DnsManagedZoneIamBindingArray) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingArrayInput added in v6.47.0

type DnsManagedZoneIamBindingArrayInput interface {
	pulumi.Input

	ToDnsManagedZoneIamBindingArrayOutput() DnsManagedZoneIamBindingArrayOutput
	ToDnsManagedZoneIamBindingArrayOutputWithContext(context.Context) DnsManagedZoneIamBindingArrayOutput
}

DnsManagedZoneIamBindingArrayInput is an input type that accepts DnsManagedZoneIamBindingArray and DnsManagedZoneIamBindingArrayOutput values. You can construct a concrete instance of `DnsManagedZoneIamBindingArrayInput` via:

DnsManagedZoneIamBindingArray{ DnsManagedZoneIamBindingArgs{...} }

type DnsManagedZoneIamBindingArrayOutput added in v6.47.0

type DnsManagedZoneIamBindingArrayOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamBindingArrayOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamBindingArrayOutput) Index added in v6.47.0

func (DnsManagedZoneIamBindingArrayOutput) ToDnsManagedZoneIamBindingArrayOutput added in v6.47.0

func (o DnsManagedZoneIamBindingArrayOutput) ToDnsManagedZoneIamBindingArrayOutput() DnsManagedZoneIamBindingArrayOutput

func (DnsManagedZoneIamBindingArrayOutput) ToDnsManagedZoneIamBindingArrayOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamBindingArrayOutput) ToDnsManagedZoneIamBindingArrayOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingArrayOutput

func (DnsManagedZoneIamBindingArrayOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingCondition added in v6.47.0

type DnsManagedZoneIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type DnsManagedZoneIamBindingConditionArgs added in v6.47.0

type DnsManagedZoneIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (DnsManagedZoneIamBindingConditionArgs) ElementType added in v6.47.0

func (DnsManagedZoneIamBindingConditionArgs) ToDnsManagedZoneIamBindingConditionOutput added in v6.47.0

func (i DnsManagedZoneIamBindingConditionArgs) ToDnsManagedZoneIamBindingConditionOutput() DnsManagedZoneIamBindingConditionOutput

func (DnsManagedZoneIamBindingConditionArgs) ToDnsManagedZoneIamBindingConditionOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamBindingConditionArgs) ToDnsManagedZoneIamBindingConditionOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingConditionOutput

func (DnsManagedZoneIamBindingConditionArgs) ToDnsManagedZoneIamBindingConditionPtrOutput added in v6.47.0

func (i DnsManagedZoneIamBindingConditionArgs) ToDnsManagedZoneIamBindingConditionPtrOutput() DnsManagedZoneIamBindingConditionPtrOutput

func (DnsManagedZoneIamBindingConditionArgs) ToDnsManagedZoneIamBindingConditionPtrOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamBindingConditionArgs) ToDnsManagedZoneIamBindingConditionPtrOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingConditionPtrOutput

func (DnsManagedZoneIamBindingConditionArgs) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingConditionInput added in v6.47.0

type DnsManagedZoneIamBindingConditionInput interface {
	pulumi.Input

	ToDnsManagedZoneIamBindingConditionOutput() DnsManagedZoneIamBindingConditionOutput
	ToDnsManagedZoneIamBindingConditionOutputWithContext(context.Context) DnsManagedZoneIamBindingConditionOutput
}

DnsManagedZoneIamBindingConditionInput is an input type that accepts DnsManagedZoneIamBindingConditionArgs and DnsManagedZoneIamBindingConditionOutput values. You can construct a concrete instance of `DnsManagedZoneIamBindingConditionInput` via:

DnsManagedZoneIamBindingConditionArgs{...}

type DnsManagedZoneIamBindingConditionOutput added in v6.47.0

type DnsManagedZoneIamBindingConditionOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamBindingConditionOutput) Description added in v6.47.0

func (DnsManagedZoneIamBindingConditionOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamBindingConditionOutput) Expression added in v6.47.0

func (DnsManagedZoneIamBindingConditionOutput) Title added in v6.47.0

func (DnsManagedZoneIamBindingConditionOutput) ToDnsManagedZoneIamBindingConditionOutput added in v6.47.0

func (o DnsManagedZoneIamBindingConditionOutput) ToDnsManagedZoneIamBindingConditionOutput() DnsManagedZoneIamBindingConditionOutput

func (DnsManagedZoneIamBindingConditionOutput) ToDnsManagedZoneIamBindingConditionOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamBindingConditionOutput) ToDnsManagedZoneIamBindingConditionOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingConditionOutput

func (DnsManagedZoneIamBindingConditionOutput) ToDnsManagedZoneIamBindingConditionPtrOutput added in v6.47.0

func (o DnsManagedZoneIamBindingConditionOutput) ToDnsManagedZoneIamBindingConditionPtrOutput() DnsManagedZoneIamBindingConditionPtrOutput

func (DnsManagedZoneIamBindingConditionOutput) ToDnsManagedZoneIamBindingConditionPtrOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamBindingConditionOutput) ToDnsManagedZoneIamBindingConditionPtrOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingConditionPtrOutput

func (DnsManagedZoneIamBindingConditionOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingConditionPtrInput added in v6.47.0

type DnsManagedZoneIamBindingConditionPtrInput interface {
	pulumi.Input

	ToDnsManagedZoneIamBindingConditionPtrOutput() DnsManagedZoneIamBindingConditionPtrOutput
	ToDnsManagedZoneIamBindingConditionPtrOutputWithContext(context.Context) DnsManagedZoneIamBindingConditionPtrOutput
}

DnsManagedZoneIamBindingConditionPtrInput is an input type that accepts DnsManagedZoneIamBindingConditionArgs, DnsManagedZoneIamBindingConditionPtr and DnsManagedZoneIamBindingConditionPtrOutput values. You can construct a concrete instance of `DnsManagedZoneIamBindingConditionPtrInput` via:

        DnsManagedZoneIamBindingConditionArgs{...}

or:

        nil

type DnsManagedZoneIamBindingConditionPtrOutput added in v6.47.0

type DnsManagedZoneIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamBindingConditionPtrOutput) Description added in v6.47.0

func (DnsManagedZoneIamBindingConditionPtrOutput) Elem added in v6.47.0

func (DnsManagedZoneIamBindingConditionPtrOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamBindingConditionPtrOutput) Expression added in v6.47.0

func (DnsManagedZoneIamBindingConditionPtrOutput) Title added in v6.47.0

func (DnsManagedZoneIamBindingConditionPtrOutput) ToDnsManagedZoneIamBindingConditionPtrOutput added in v6.47.0

func (o DnsManagedZoneIamBindingConditionPtrOutput) ToDnsManagedZoneIamBindingConditionPtrOutput() DnsManagedZoneIamBindingConditionPtrOutput

func (DnsManagedZoneIamBindingConditionPtrOutput) ToDnsManagedZoneIamBindingConditionPtrOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamBindingConditionPtrOutput) ToDnsManagedZoneIamBindingConditionPtrOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingConditionPtrOutput

func (DnsManagedZoneIamBindingConditionPtrOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingInput added in v6.47.0

type DnsManagedZoneIamBindingInput interface {
	pulumi.Input

	ToDnsManagedZoneIamBindingOutput() DnsManagedZoneIamBindingOutput
	ToDnsManagedZoneIamBindingOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingOutput
}

type DnsManagedZoneIamBindingMap added in v6.47.0

type DnsManagedZoneIamBindingMap map[string]DnsManagedZoneIamBindingInput

func (DnsManagedZoneIamBindingMap) ElementType added in v6.47.0

func (DnsManagedZoneIamBindingMap) ToDnsManagedZoneIamBindingMapOutput added in v6.47.0

func (i DnsManagedZoneIamBindingMap) ToDnsManagedZoneIamBindingMapOutput() DnsManagedZoneIamBindingMapOutput

func (DnsManagedZoneIamBindingMap) ToDnsManagedZoneIamBindingMapOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamBindingMap) ToDnsManagedZoneIamBindingMapOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingMapOutput

func (DnsManagedZoneIamBindingMap) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingMapInput added in v6.47.0

type DnsManagedZoneIamBindingMapInput interface {
	pulumi.Input

	ToDnsManagedZoneIamBindingMapOutput() DnsManagedZoneIamBindingMapOutput
	ToDnsManagedZoneIamBindingMapOutputWithContext(context.Context) DnsManagedZoneIamBindingMapOutput
}

DnsManagedZoneIamBindingMapInput is an input type that accepts DnsManagedZoneIamBindingMap and DnsManagedZoneIamBindingMapOutput values. You can construct a concrete instance of `DnsManagedZoneIamBindingMapInput` via:

DnsManagedZoneIamBindingMap{ "key": DnsManagedZoneIamBindingArgs{...} }

type DnsManagedZoneIamBindingMapOutput added in v6.47.0

type DnsManagedZoneIamBindingMapOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamBindingMapOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamBindingMapOutput) MapIndex added in v6.47.0

func (DnsManagedZoneIamBindingMapOutput) ToDnsManagedZoneIamBindingMapOutput added in v6.47.0

func (o DnsManagedZoneIamBindingMapOutput) ToDnsManagedZoneIamBindingMapOutput() DnsManagedZoneIamBindingMapOutput

func (DnsManagedZoneIamBindingMapOutput) ToDnsManagedZoneIamBindingMapOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamBindingMapOutput) ToDnsManagedZoneIamBindingMapOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingMapOutput

func (DnsManagedZoneIamBindingMapOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingOutput added in v6.47.0

type DnsManagedZoneIamBindingOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamBindingOutput) Condition added in v6.47.0

func (DnsManagedZoneIamBindingOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamBindingOutput) Etag added in v6.47.0

(Computed) The etag of the IAM policy.

func (DnsManagedZoneIamBindingOutput) ManagedZone added in v6.47.0

Used to find the parent resource to bind the IAM policy to

func (DnsManagedZoneIamBindingOutput) Members added in v6.47.0

func (DnsManagedZoneIamBindingOutput) Project added in v6.47.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (DnsManagedZoneIamBindingOutput) Role added in v6.47.0

The role that should be applied. Only one `dns.DnsManagedZoneIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (DnsManagedZoneIamBindingOutput) ToDnsManagedZoneIamBindingOutput added in v6.47.0

func (o DnsManagedZoneIamBindingOutput) ToDnsManagedZoneIamBindingOutput() DnsManagedZoneIamBindingOutput

func (DnsManagedZoneIamBindingOutput) ToDnsManagedZoneIamBindingOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamBindingOutput) ToDnsManagedZoneIamBindingOutputWithContext(ctx context.Context) DnsManagedZoneIamBindingOutput

func (DnsManagedZoneIamBindingOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamBindingState added in v6.47.0

type DnsManagedZoneIamBindingState struct {
	Condition DnsManagedZoneIamBindingConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringPtrInput
	Members     pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `dns.DnsManagedZoneIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (DnsManagedZoneIamBindingState) ElementType added in v6.47.0

type DnsManagedZoneIamMember added in v6.47.0

type DnsManagedZoneIamMember struct {
	pulumi.CustomResourceState

	Condition DnsManagedZoneIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringOutput `pulumi:"managedZone"`
	Member      pulumi.StringOutput `pulumi:"member"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `dns.DnsManagedZoneIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Cloud DNS ManagedZone. Each of these resources serves a different use case:

* `dns.DnsManagedZoneIamPolicy`: Authoritative. Sets the IAM policy for the managedzone and replaces any existing policy already attached. * `dns.DnsManagedZoneIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the managedzone are preserved. * `dns.DnsManagedZoneIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the managedzone are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `dns.DnsManagedZoneIamPolicy`: Retrieves the IAM policy for the managedzone

> **Note:** `dns.DnsManagedZoneIamPolicy` **cannot** be used in conjunction with `dns.DnsManagedZoneIamBinding` and `dns.DnsManagedZoneIamMember` or they will fight over what your policy should be.

> **Note:** `dns.DnsManagedZoneIamBinding` resources **can be** used in conjunction with `dns.DnsManagedZoneIamMember` resources **only if** they do not grant privilege to the same role.

## google\_dns\_managed\_zone\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = dns.NewDnsManagedZoneIamPolicy(ctx, "policy", &dns.DnsManagedZoneIamPolicyArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_dns\_managed\_zone\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewDnsManagedZoneIamBinding(ctx, "binding", &dns.DnsManagedZoneIamBindingArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_dns\_managed\_zone\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewDnsManagedZoneIamMember(ctx, "member", &dns.DnsManagedZoneIamMemberArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/managedZones/{{managed_zone}} * {{project}}/{{managed_zone}} * {{managed_zone}} Any variables not passed in the import command will be taken from the provider configuration. Cloud DNS managedzone IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamMember:DnsManagedZoneIamMember editor "projects/{{project}}/managedZones/{{managed_zone}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamMember:DnsManagedZoneIamMember editor "projects/{{project}}/managedZones/{{managed_zone}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamMember:DnsManagedZoneIamMember editor projects/{{project}}/managedZones/{{managed_zone}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetDnsManagedZoneIamMember added in v6.47.0

func GetDnsManagedZoneIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DnsManagedZoneIamMemberState, opts ...pulumi.ResourceOption) (*DnsManagedZoneIamMember, error)

GetDnsManagedZoneIamMember gets an existing DnsManagedZoneIamMember 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 NewDnsManagedZoneIamMember added in v6.47.0

func NewDnsManagedZoneIamMember(ctx *pulumi.Context,
	name string, args *DnsManagedZoneIamMemberArgs, opts ...pulumi.ResourceOption) (*DnsManagedZoneIamMember, error)

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

func (*DnsManagedZoneIamMember) ElementType added in v6.47.0

func (*DnsManagedZoneIamMember) ElementType() reflect.Type

func (*DnsManagedZoneIamMember) ToDnsManagedZoneIamMemberOutput added in v6.47.0

func (i *DnsManagedZoneIamMember) ToDnsManagedZoneIamMemberOutput() DnsManagedZoneIamMemberOutput

func (*DnsManagedZoneIamMember) ToDnsManagedZoneIamMemberOutputWithContext added in v6.47.0

func (i *DnsManagedZoneIamMember) ToDnsManagedZoneIamMemberOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberOutput

func (*DnsManagedZoneIamMember) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberArgs added in v6.47.0

type DnsManagedZoneIamMemberArgs struct {
	Condition DnsManagedZoneIamMemberConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringInput
	Member      pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `dns.DnsManagedZoneIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a DnsManagedZoneIamMember resource.

func (DnsManagedZoneIamMemberArgs) ElementType added in v6.47.0

type DnsManagedZoneIamMemberArray added in v6.47.0

type DnsManagedZoneIamMemberArray []DnsManagedZoneIamMemberInput

func (DnsManagedZoneIamMemberArray) ElementType added in v6.47.0

func (DnsManagedZoneIamMemberArray) ToDnsManagedZoneIamMemberArrayOutput added in v6.47.0

func (i DnsManagedZoneIamMemberArray) ToDnsManagedZoneIamMemberArrayOutput() DnsManagedZoneIamMemberArrayOutput

func (DnsManagedZoneIamMemberArray) ToDnsManagedZoneIamMemberArrayOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamMemberArray) ToDnsManagedZoneIamMemberArrayOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberArrayOutput

func (DnsManagedZoneIamMemberArray) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberArrayInput added in v6.47.0

type DnsManagedZoneIamMemberArrayInput interface {
	pulumi.Input

	ToDnsManagedZoneIamMemberArrayOutput() DnsManagedZoneIamMemberArrayOutput
	ToDnsManagedZoneIamMemberArrayOutputWithContext(context.Context) DnsManagedZoneIamMemberArrayOutput
}

DnsManagedZoneIamMemberArrayInput is an input type that accepts DnsManagedZoneIamMemberArray and DnsManagedZoneIamMemberArrayOutput values. You can construct a concrete instance of `DnsManagedZoneIamMemberArrayInput` via:

DnsManagedZoneIamMemberArray{ DnsManagedZoneIamMemberArgs{...} }

type DnsManagedZoneIamMemberArrayOutput added in v6.47.0

type DnsManagedZoneIamMemberArrayOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamMemberArrayOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamMemberArrayOutput) Index added in v6.47.0

func (DnsManagedZoneIamMemberArrayOutput) ToDnsManagedZoneIamMemberArrayOutput added in v6.47.0

func (o DnsManagedZoneIamMemberArrayOutput) ToDnsManagedZoneIamMemberArrayOutput() DnsManagedZoneIamMemberArrayOutput

func (DnsManagedZoneIamMemberArrayOutput) ToDnsManagedZoneIamMemberArrayOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamMemberArrayOutput) ToDnsManagedZoneIamMemberArrayOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberArrayOutput

func (DnsManagedZoneIamMemberArrayOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberCondition added in v6.47.0

type DnsManagedZoneIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type DnsManagedZoneIamMemberConditionArgs added in v6.47.0

type DnsManagedZoneIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (DnsManagedZoneIamMemberConditionArgs) ElementType added in v6.47.0

func (DnsManagedZoneIamMemberConditionArgs) ToDnsManagedZoneIamMemberConditionOutput added in v6.47.0

func (i DnsManagedZoneIamMemberConditionArgs) ToDnsManagedZoneIamMemberConditionOutput() DnsManagedZoneIamMemberConditionOutput

func (DnsManagedZoneIamMemberConditionArgs) ToDnsManagedZoneIamMemberConditionOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamMemberConditionArgs) ToDnsManagedZoneIamMemberConditionOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberConditionOutput

func (DnsManagedZoneIamMemberConditionArgs) ToDnsManagedZoneIamMemberConditionPtrOutput added in v6.47.0

func (i DnsManagedZoneIamMemberConditionArgs) ToDnsManagedZoneIamMemberConditionPtrOutput() DnsManagedZoneIamMemberConditionPtrOutput

func (DnsManagedZoneIamMemberConditionArgs) ToDnsManagedZoneIamMemberConditionPtrOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamMemberConditionArgs) ToDnsManagedZoneIamMemberConditionPtrOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberConditionPtrOutput

func (DnsManagedZoneIamMemberConditionArgs) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberConditionInput added in v6.47.0

type DnsManagedZoneIamMemberConditionInput interface {
	pulumi.Input

	ToDnsManagedZoneIamMemberConditionOutput() DnsManagedZoneIamMemberConditionOutput
	ToDnsManagedZoneIamMemberConditionOutputWithContext(context.Context) DnsManagedZoneIamMemberConditionOutput
}

DnsManagedZoneIamMemberConditionInput is an input type that accepts DnsManagedZoneIamMemberConditionArgs and DnsManagedZoneIamMemberConditionOutput values. You can construct a concrete instance of `DnsManagedZoneIamMemberConditionInput` via:

DnsManagedZoneIamMemberConditionArgs{...}

type DnsManagedZoneIamMemberConditionOutput added in v6.47.0

type DnsManagedZoneIamMemberConditionOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamMemberConditionOutput) Description added in v6.47.0

func (DnsManagedZoneIamMemberConditionOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamMemberConditionOutput) Expression added in v6.47.0

func (DnsManagedZoneIamMemberConditionOutput) Title added in v6.47.0

func (DnsManagedZoneIamMemberConditionOutput) ToDnsManagedZoneIamMemberConditionOutput added in v6.47.0

func (o DnsManagedZoneIamMemberConditionOutput) ToDnsManagedZoneIamMemberConditionOutput() DnsManagedZoneIamMemberConditionOutput

func (DnsManagedZoneIamMemberConditionOutput) ToDnsManagedZoneIamMemberConditionOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamMemberConditionOutput) ToDnsManagedZoneIamMemberConditionOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberConditionOutput

func (DnsManagedZoneIamMemberConditionOutput) ToDnsManagedZoneIamMemberConditionPtrOutput added in v6.47.0

func (o DnsManagedZoneIamMemberConditionOutput) ToDnsManagedZoneIamMemberConditionPtrOutput() DnsManagedZoneIamMemberConditionPtrOutput

func (DnsManagedZoneIamMemberConditionOutput) ToDnsManagedZoneIamMemberConditionPtrOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamMemberConditionOutput) ToDnsManagedZoneIamMemberConditionPtrOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberConditionPtrOutput

func (DnsManagedZoneIamMemberConditionOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberConditionPtrInput added in v6.47.0

type DnsManagedZoneIamMemberConditionPtrInput interface {
	pulumi.Input

	ToDnsManagedZoneIamMemberConditionPtrOutput() DnsManagedZoneIamMemberConditionPtrOutput
	ToDnsManagedZoneIamMemberConditionPtrOutputWithContext(context.Context) DnsManagedZoneIamMemberConditionPtrOutput
}

DnsManagedZoneIamMemberConditionPtrInput is an input type that accepts DnsManagedZoneIamMemberConditionArgs, DnsManagedZoneIamMemberConditionPtr and DnsManagedZoneIamMemberConditionPtrOutput values. You can construct a concrete instance of `DnsManagedZoneIamMemberConditionPtrInput` via:

        DnsManagedZoneIamMemberConditionArgs{...}

or:

        nil

type DnsManagedZoneIamMemberConditionPtrOutput added in v6.47.0

type DnsManagedZoneIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamMemberConditionPtrOutput) Description added in v6.47.0

func (DnsManagedZoneIamMemberConditionPtrOutput) Elem added in v6.47.0

func (DnsManagedZoneIamMemberConditionPtrOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamMemberConditionPtrOutput) Expression added in v6.47.0

func (DnsManagedZoneIamMemberConditionPtrOutput) Title added in v6.47.0

func (DnsManagedZoneIamMemberConditionPtrOutput) ToDnsManagedZoneIamMemberConditionPtrOutput added in v6.47.0

func (o DnsManagedZoneIamMemberConditionPtrOutput) ToDnsManagedZoneIamMemberConditionPtrOutput() DnsManagedZoneIamMemberConditionPtrOutput

func (DnsManagedZoneIamMemberConditionPtrOutput) ToDnsManagedZoneIamMemberConditionPtrOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamMemberConditionPtrOutput) ToDnsManagedZoneIamMemberConditionPtrOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberConditionPtrOutput

func (DnsManagedZoneIamMemberConditionPtrOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberInput added in v6.47.0

type DnsManagedZoneIamMemberInput interface {
	pulumi.Input

	ToDnsManagedZoneIamMemberOutput() DnsManagedZoneIamMemberOutput
	ToDnsManagedZoneIamMemberOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberOutput
}

type DnsManagedZoneIamMemberMap added in v6.47.0

type DnsManagedZoneIamMemberMap map[string]DnsManagedZoneIamMemberInput

func (DnsManagedZoneIamMemberMap) ElementType added in v6.47.0

func (DnsManagedZoneIamMemberMap) ElementType() reflect.Type

func (DnsManagedZoneIamMemberMap) ToDnsManagedZoneIamMemberMapOutput added in v6.47.0

func (i DnsManagedZoneIamMemberMap) ToDnsManagedZoneIamMemberMapOutput() DnsManagedZoneIamMemberMapOutput

func (DnsManagedZoneIamMemberMap) ToDnsManagedZoneIamMemberMapOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamMemberMap) ToDnsManagedZoneIamMemberMapOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberMapOutput

func (DnsManagedZoneIamMemberMap) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberMapInput added in v6.47.0

type DnsManagedZoneIamMemberMapInput interface {
	pulumi.Input

	ToDnsManagedZoneIamMemberMapOutput() DnsManagedZoneIamMemberMapOutput
	ToDnsManagedZoneIamMemberMapOutputWithContext(context.Context) DnsManagedZoneIamMemberMapOutput
}

DnsManagedZoneIamMemberMapInput is an input type that accepts DnsManagedZoneIamMemberMap and DnsManagedZoneIamMemberMapOutput values. You can construct a concrete instance of `DnsManagedZoneIamMemberMapInput` via:

DnsManagedZoneIamMemberMap{ "key": DnsManagedZoneIamMemberArgs{...} }

type DnsManagedZoneIamMemberMapOutput added in v6.47.0

type DnsManagedZoneIamMemberMapOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamMemberMapOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamMemberMapOutput) MapIndex added in v6.47.0

func (DnsManagedZoneIamMemberMapOutput) ToDnsManagedZoneIamMemberMapOutput added in v6.47.0

func (o DnsManagedZoneIamMemberMapOutput) ToDnsManagedZoneIamMemberMapOutput() DnsManagedZoneIamMemberMapOutput

func (DnsManagedZoneIamMemberMapOutput) ToDnsManagedZoneIamMemberMapOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamMemberMapOutput) ToDnsManagedZoneIamMemberMapOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberMapOutput

func (DnsManagedZoneIamMemberMapOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberOutput added in v6.47.0

type DnsManagedZoneIamMemberOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamMemberOutput) Condition added in v6.47.0

func (DnsManagedZoneIamMemberOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamMemberOutput) Etag added in v6.47.0

(Computed) The etag of the IAM policy.

func (DnsManagedZoneIamMemberOutput) ManagedZone added in v6.47.0

Used to find the parent resource to bind the IAM policy to

func (DnsManagedZoneIamMemberOutput) Member added in v6.47.0

func (DnsManagedZoneIamMemberOutput) Project added in v6.47.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (DnsManagedZoneIamMemberOutput) Role added in v6.47.0

The role that should be applied. Only one `dns.DnsManagedZoneIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (DnsManagedZoneIamMemberOutput) ToDnsManagedZoneIamMemberOutput added in v6.47.0

func (o DnsManagedZoneIamMemberOutput) ToDnsManagedZoneIamMemberOutput() DnsManagedZoneIamMemberOutput

func (DnsManagedZoneIamMemberOutput) ToDnsManagedZoneIamMemberOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamMemberOutput) ToDnsManagedZoneIamMemberOutputWithContext(ctx context.Context) DnsManagedZoneIamMemberOutput

func (DnsManagedZoneIamMemberOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamMemberState added in v6.47.0

type DnsManagedZoneIamMemberState struct {
	Condition DnsManagedZoneIamMemberConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringPtrInput
	Member      pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `dns.DnsManagedZoneIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (DnsManagedZoneIamMemberState) ElementType added in v6.47.0

type DnsManagedZoneIamPolicy added in v6.47.0

type DnsManagedZoneIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringOutput `pulumi:"managedZone"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
}

Three different resources help you manage your IAM policy for Cloud DNS ManagedZone. Each of these resources serves a different use case:

* `dns.DnsManagedZoneIamPolicy`: Authoritative. Sets the IAM policy for the managedzone and replaces any existing policy already attached. * `dns.DnsManagedZoneIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the managedzone are preserved. * `dns.DnsManagedZoneIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the managedzone are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `dns.DnsManagedZoneIamPolicy`: Retrieves the IAM policy for the managedzone

> **Note:** `dns.DnsManagedZoneIamPolicy` **cannot** be used in conjunction with `dns.DnsManagedZoneIamBinding` and `dns.DnsManagedZoneIamMember` or they will fight over what your policy should be.

> **Note:** `dns.DnsManagedZoneIamBinding` resources **can be** used in conjunction with `dns.DnsManagedZoneIamMember` resources **only if** they do not grant privilege to the same role.

## google\_dns\_managed\_zone\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = dns.NewDnsManagedZoneIamPolicy(ctx, "policy", &dns.DnsManagedZoneIamPolicyArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_dns\_managed\_zone\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewDnsManagedZoneIamBinding(ctx, "binding", &dns.DnsManagedZoneIamBindingArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_dns\_managed\_zone\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewDnsManagedZoneIamMember(ctx, "member", &dns.DnsManagedZoneIamMemberArgs{
			Project:     pulumi.Any(google_dns_managed_zone.Default.Project),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Default.Name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/managedZones/{{managed_zone}} * {{project}}/{{managed_zone}} * {{managed_zone}} Any variables not passed in the import command will be taken from the provider configuration. Cloud DNS managedzone IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamPolicy:DnsManagedZoneIamPolicy editor "projects/{{project}}/managedZones/{{managed_zone}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamPolicy:DnsManagedZoneIamPolicy editor "projects/{{project}}/managedZones/{{managed_zone}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:dns/dnsManagedZoneIamPolicy:DnsManagedZoneIamPolicy editor projects/{{project}}/managedZones/{{managed_zone}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetDnsManagedZoneIamPolicy added in v6.47.0

func GetDnsManagedZoneIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DnsManagedZoneIamPolicyState, opts ...pulumi.ResourceOption) (*DnsManagedZoneIamPolicy, error)

GetDnsManagedZoneIamPolicy gets an existing DnsManagedZoneIamPolicy 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 NewDnsManagedZoneIamPolicy added in v6.47.0

func NewDnsManagedZoneIamPolicy(ctx *pulumi.Context,
	name string, args *DnsManagedZoneIamPolicyArgs, opts ...pulumi.ResourceOption) (*DnsManagedZoneIamPolicy, error)

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

func (*DnsManagedZoneIamPolicy) ElementType added in v6.47.0

func (*DnsManagedZoneIamPolicy) ElementType() reflect.Type

func (*DnsManagedZoneIamPolicy) ToDnsManagedZoneIamPolicyOutput added in v6.47.0

func (i *DnsManagedZoneIamPolicy) ToDnsManagedZoneIamPolicyOutput() DnsManagedZoneIamPolicyOutput

func (*DnsManagedZoneIamPolicy) ToDnsManagedZoneIamPolicyOutputWithContext added in v6.47.0

func (i *DnsManagedZoneIamPolicy) ToDnsManagedZoneIamPolicyOutputWithContext(ctx context.Context) DnsManagedZoneIamPolicyOutput

func (*DnsManagedZoneIamPolicy) ToOutput added in v6.65.1

type DnsManagedZoneIamPolicyArgs added in v6.47.0

type DnsManagedZoneIamPolicyArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
}

The set of arguments for constructing a DnsManagedZoneIamPolicy resource.

func (DnsManagedZoneIamPolicyArgs) ElementType added in v6.47.0

type DnsManagedZoneIamPolicyArray added in v6.47.0

type DnsManagedZoneIamPolicyArray []DnsManagedZoneIamPolicyInput

func (DnsManagedZoneIamPolicyArray) ElementType added in v6.47.0

func (DnsManagedZoneIamPolicyArray) ToDnsManagedZoneIamPolicyArrayOutput added in v6.47.0

func (i DnsManagedZoneIamPolicyArray) ToDnsManagedZoneIamPolicyArrayOutput() DnsManagedZoneIamPolicyArrayOutput

func (DnsManagedZoneIamPolicyArray) ToDnsManagedZoneIamPolicyArrayOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamPolicyArray) ToDnsManagedZoneIamPolicyArrayOutputWithContext(ctx context.Context) DnsManagedZoneIamPolicyArrayOutput

func (DnsManagedZoneIamPolicyArray) ToOutput added in v6.65.1

type DnsManagedZoneIamPolicyArrayInput added in v6.47.0

type DnsManagedZoneIamPolicyArrayInput interface {
	pulumi.Input

	ToDnsManagedZoneIamPolicyArrayOutput() DnsManagedZoneIamPolicyArrayOutput
	ToDnsManagedZoneIamPolicyArrayOutputWithContext(context.Context) DnsManagedZoneIamPolicyArrayOutput
}

DnsManagedZoneIamPolicyArrayInput is an input type that accepts DnsManagedZoneIamPolicyArray and DnsManagedZoneIamPolicyArrayOutput values. You can construct a concrete instance of `DnsManagedZoneIamPolicyArrayInput` via:

DnsManagedZoneIamPolicyArray{ DnsManagedZoneIamPolicyArgs{...} }

type DnsManagedZoneIamPolicyArrayOutput added in v6.47.0

type DnsManagedZoneIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamPolicyArrayOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamPolicyArrayOutput) Index added in v6.47.0

func (DnsManagedZoneIamPolicyArrayOutput) ToDnsManagedZoneIamPolicyArrayOutput added in v6.47.0

func (o DnsManagedZoneIamPolicyArrayOutput) ToDnsManagedZoneIamPolicyArrayOutput() DnsManagedZoneIamPolicyArrayOutput

func (DnsManagedZoneIamPolicyArrayOutput) ToDnsManagedZoneIamPolicyArrayOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamPolicyArrayOutput) ToDnsManagedZoneIamPolicyArrayOutputWithContext(ctx context.Context) DnsManagedZoneIamPolicyArrayOutput

func (DnsManagedZoneIamPolicyArrayOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamPolicyInput added in v6.47.0

type DnsManagedZoneIamPolicyInput interface {
	pulumi.Input

	ToDnsManagedZoneIamPolicyOutput() DnsManagedZoneIamPolicyOutput
	ToDnsManagedZoneIamPolicyOutputWithContext(ctx context.Context) DnsManagedZoneIamPolicyOutput
}

type DnsManagedZoneIamPolicyMap added in v6.47.0

type DnsManagedZoneIamPolicyMap map[string]DnsManagedZoneIamPolicyInput

func (DnsManagedZoneIamPolicyMap) ElementType added in v6.47.0

func (DnsManagedZoneIamPolicyMap) ElementType() reflect.Type

func (DnsManagedZoneIamPolicyMap) ToDnsManagedZoneIamPolicyMapOutput added in v6.47.0

func (i DnsManagedZoneIamPolicyMap) ToDnsManagedZoneIamPolicyMapOutput() DnsManagedZoneIamPolicyMapOutput

func (DnsManagedZoneIamPolicyMap) ToDnsManagedZoneIamPolicyMapOutputWithContext added in v6.47.0

func (i DnsManagedZoneIamPolicyMap) ToDnsManagedZoneIamPolicyMapOutputWithContext(ctx context.Context) DnsManagedZoneIamPolicyMapOutput

func (DnsManagedZoneIamPolicyMap) ToOutput added in v6.65.1

type DnsManagedZoneIamPolicyMapInput added in v6.47.0

type DnsManagedZoneIamPolicyMapInput interface {
	pulumi.Input

	ToDnsManagedZoneIamPolicyMapOutput() DnsManagedZoneIamPolicyMapOutput
	ToDnsManagedZoneIamPolicyMapOutputWithContext(context.Context) DnsManagedZoneIamPolicyMapOutput
}

DnsManagedZoneIamPolicyMapInput is an input type that accepts DnsManagedZoneIamPolicyMap and DnsManagedZoneIamPolicyMapOutput values. You can construct a concrete instance of `DnsManagedZoneIamPolicyMapInput` via:

DnsManagedZoneIamPolicyMap{ "key": DnsManagedZoneIamPolicyArgs{...} }

type DnsManagedZoneIamPolicyMapOutput added in v6.47.0

type DnsManagedZoneIamPolicyMapOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamPolicyMapOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamPolicyMapOutput) MapIndex added in v6.47.0

func (DnsManagedZoneIamPolicyMapOutput) ToDnsManagedZoneIamPolicyMapOutput added in v6.47.0

func (o DnsManagedZoneIamPolicyMapOutput) ToDnsManagedZoneIamPolicyMapOutput() DnsManagedZoneIamPolicyMapOutput

func (DnsManagedZoneIamPolicyMapOutput) ToDnsManagedZoneIamPolicyMapOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamPolicyMapOutput) ToDnsManagedZoneIamPolicyMapOutputWithContext(ctx context.Context) DnsManagedZoneIamPolicyMapOutput

func (DnsManagedZoneIamPolicyMapOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamPolicyOutput added in v6.47.0

type DnsManagedZoneIamPolicyOutput struct{ *pulumi.OutputState }

func (DnsManagedZoneIamPolicyOutput) ElementType added in v6.47.0

func (DnsManagedZoneIamPolicyOutput) Etag added in v6.47.0

(Computed) The etag of the IAM policy.

func (DnsManagedZoneIamPolicyOutput) ManagedZone added in v6.47.0

Used to find the parent resource to bind the IAM policy to

func (DnsManagedZoneIamPolicyOutput) PolicyData added in v6.47.0

The policy data generated by a `organizations.getIAMPolicy` data source.

func (DnsManagedZoneIamPolicyOutput) Project added in v6.47.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (DnsManagedZoneIamPolicyOutput) ToDnsManagedZoneIamPolicyOutput added in v6.47.0

func (o DnsManagedZoneIamPolicyOutput) ToDnsManagedZoneIamPolicyOutput() DnsManagedZoneIamPolicyOutput

func (DnsManagedZoneIamPolicyOutput) ToDnsManagedZoneIamPolicyOutputWithContext added in v6.47.0

func (o DnsManagedZoneIamPolicyOutput) ToDnsManagedZoneIamPolicyOutputWithContext(ctx context.Context) DnsManagedZoneIamPolicyOutput

func (DnsManagedZoneIamPolicyOutput) ToOutput added in v6.65.1

type DnsManagedZoneIamPolicyState added in v6.47.0

type DnsManagedZoneIamPolicyState struct {
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
}

func (DnsManagedZoneIamPolicyState) ElementType added in v6.47.0

type GetKeysArgs

type GetKeysArgs struct {
	// The name or id of the Cloud DNS managed zone.
	ManagedZone string `pulumi:"managedZone"`
	// The ID of the project in which the resource belongs. If `project` is not provided, the provider project is used.
	Project *string `pulumi:"project"`
}

A collection of arguments for invoking getKeys.

type GetKeysKeySigningKey

type GetKeysKeySigningKey struct {
	// String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time. Possible values are `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, and `rsasha512`.
	Algorithm string `pulumi:"algorithm"`
	// The time that this resource was created in the control plane. This is in RFC3339 text format.
	CreationTime string `pulumi:"creationTime"`
	// A mutable string of at most 1024 characters associated with this resource for the user's convenience.
	Description string `pulumi:"description"`
	// A list of cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Each contains:
	Digests []GetKeysKeySigningKeyDigest `pulumi:"digests"`
	// The DS record based on the KSK record. This is used when [delegating](https://cloud.google.com/dns/docs/dnssec-advanced#subdelegation) DNSSEC-signed subdomains.
	DsRecord string `pulumi:"dsRecord"`
	// Unique identifier for the resource; defined by the server.
	Id string `pulumi:"id"`
	// Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.
	IsActive bool `pulumi:"isActive"`
	// Length of the key in bits. Specified at creation time then immutable.
	KeyLength int `pulumi:"keyLength"`
	// The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B.
	KeyTag int `pulumi:"keyTag"`
	// Base64 encoded public half of this key.
	PublicKey string `pulumi:"publicKey"`
}

type GetKeysKeySigningKeyArgs

type GetKeysKeySigningKeyArgs struct {
	// String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time. Possible values are `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, and `rsasha512`.
	Algorithm pulumi.StringInput `pulumi:"algorithm"`
	// The time that this resource was created in the control plane. This is in RFC3339 text format.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// A mutable string of at most 1024 characters associated with this resource for the user's convenience.
	Description pulumi.StringInput `pulumi:"description"`
	// A list of cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Each contains:
	Digests GetKeysKeySigningKeyDigestArrayInput `pulumi:"digests"`
	// The DS record based on the KSK record. This is used when [delegating](https://cloud.google.com/dns/docs/dnssec-advanced#subdelegation) DNSSEC-signed subdomains.
	DsRecord pulumi.StringInput `pulumi:"dsRecord"`
	// Unique identifier for the resource; defined by the server.
	Id pulumi.StringInput `pulumi:"id"`
	// Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.
	IsActive pulumi.BoolInput `pulumi:"isActive"`
	// Length of the key in bits. Specified at creation time then immutable.
	KeyLength pulumi.IntInput `pulumi:"keyLength"`
	// The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B.
	KeyTag pulumi.IntInput `pulumi:"keyTag"`
	// Base64 encoded public half of this key.
	PublicKey pulumi.StringInput `pulumi:"publicKey"`
}

func (GetKeysKeySigningKeyArgs) ElementType

func (GetKeysKeySigningKeyArgs) ElementType() reflect.Type

func (GetKeysKeySigningKeyArgs) ToGetKeysKeySigningKeyOutput

func (i GetKeysKeySigningKeyArgs) ToGetKeysKeySigningKeyOutput() GetKeysKeySigningKeyOutput

func (GetKeysKeySigningKeyArgs) ToGetKeysKeySigningKeyOutputWithContext

func (i GetKeysKeySigningKeyArgs) ToGetKeysKeySigningKeyOutputWithContext(ctx context.Context) GetKeysKeySigningKeyOutput

func (GetKeysKeySigningKeyArgs) ToOutput added in v6.65.1

type GetKeysKeySigningKeyArray

type GetKeysKeySigningKeyArray []GetKeysKeySigningKeyInput

func (GetKeysKeySigningKeyArray) ElementType

func (GetKeysKeySigningKeyArray) ElementType() reflect.Type

func (GetKeysKeySigningKeyArray) ToGetKeysKeySigningKeyArrayOutput

func (i GetKeysKeySigningKeyArray) ToGetKeysKeySigningKeyArrayOutput() GetKeysKeySigningKeyArrayOutput

func (GetKeysKeySigningKeyArray) ToGetKeysKeySigningKeyArrayOutputWithContext

func (i GetKeysKeySigningKeyArray) ToGetKeysKeySigningKeyArrayOutputWithContext(ctx context.Context) GetKeysKeySigningKeyArrayOutput

func (GetKeysKeySigningKeyArray) ToOutput added in v6.65.1

type GetKeysKeySigningKeyArrayInput

type GetKeysKeySigningKeyArrayInput interface {
	pulumi.Input

	ToGetKeysKeySigningKeyArrayOutput() GetKeysKeySigningKeyArrayOutput
	ToGetKeysKeySigningKeyArrayOutputWithContext(context.Context) GetKeysKeySigningKeyArrayOutput
}

GetKeysKeySigningKeyArrayInput is an input type that accepts GetKeysKeySigningKeyArray and GetKeysKeySigningKeyArrayOutput values. You can construct a concrete instance of `GetKeysKeySigningKeyArrayInput` via:

GetKeysKeySigningKeyArray{ GetKeysKeySigningKeyArgs{...} }

type GetKeysKeySigningKeyArrayOutput

type GetKeysKeySigningKeyArrayOutput struct{ *pulumi.OutputState }

func (GetKeysKeySigningKeyArrayOutput) ElementType

func (GetKeysKeySigningKeyArrayOutput) Index

func (GetKeysKeySigningKeyArrayOutput) ToGetKeysKeySigningKeyArrayOutput

func (o GetKeysKeySigningKeyArrayOutput) ToGetKeysKeySigningKeyArrayOutput() GetKeysKeySigningKeyArrayOutput

func (GetKeysKeySigningKeyArrayOutput) ToGetKeysKeySigningKeyArrayOutputWithContext

func (o GetKeysKeySigningKeyArrayOutput) ToGetKeysKeySigningKeyArrayOutputWithContext(ctx context.Context) GetKeysKeySigningKeyArrayOutput

func (GetKeysKeySigningKeyArrayOutput) ToOutput added in v6.65.1

type GetKeysKeySigningKeyDigest

type GetKeysKeySigningKeyDigest struct {
	// The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.
	Digest string `pulumi:"digest"`
	// Specifies the algorithm used to calculate this digest. Possible values are `sha1`, `sha256` and `sha384`
	Type string `pulumi:"type"`
}

type GetKeysKeySigningKeyDigestArgs

type GetKeysKeySigningKeyDigestArgs struct {
	// The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.
	Digest pulumi.StringInput `pulumi:"digest"`
	// Specifies the algorithm used to calculate this digest. Possible values are `sha1`, `sha256` and `sha384`
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetKeysKeySigningKeyDigestArgs) ElementType

func (GetKeysKeySigningKeyDigestArgs) ToGetKeysKeySigningKeyDigestOutput

func (i GetKeysKeySigningKeyDigestArgs) ToGetKeysKeySigningKeyDigestOutput() GetKeysKeySigningKeyDigestOutput

func (GetKeysKeySigningKeyDigestArgs) ToGetKeysKeySigningKeyDigestOutputWithContext

func (i GetKeysKeySigningKeyDigestArgs) ToGetKeysKeySigningKeyDigestOutputWithContext(ctx context.Context) GetKeysKeySigningKeyDigestOutput

func (GetKeysKeySigningKeyDigestArgs) ToOutput added in v6.65.1

type GetKeysKeySigningKeyDigestArray

type GetKeysKeySigningKeyDigestArray []GetKeysKeySigningKeyDigestInput

func (GetKeysKeySigningKeyDigestArray) ElementType

func (GetKeysKeySigningKeyDigestArray) ToGetKeysKeySigningKeyDigestArrayOutput

func (i GetKeysKeySigningKeyDigestArray) ToGetKeysKeySigningKeyDigestArrayOutput() GetKeysKeySigningKeyDigestArrayOutput

func (GetKeysKeySigningKeyDigestArray) ToGetKeysKeySigningKeyDigestArrayOutputWithContext

func (i GetKeysKeySigningKeyDigestArray) ToGetKeysKeySigningKeyDigestArrayOutputWithContext(ctx context.Context) GetKeysKeySigningKeyDigestArrayOutput

func (GetKeysKeySigningKeyDigestArray) ToOutput added in v6.65.1

type GetKeysKeySigningKeyDigestArrayInput

type GetKeysKeySigningKeyDigestArrayInput interface {
	pulumi.Input

	ToGetKeysKeySigningKeyDigestArrayOutput() GetKeysKeySigningKeyDigestArrayOutput
	ToGetKeysKeySigningKeyDigestArrayOutputWithContext(context.Context) GetKeysKeySigningKeyDigestArrayOutput
}

GetKeysKeySigningKeyDigestArrayInput is an input type that accepts GetKeysKeySigningKeyDigestArray and GetKeysKeySigningKeyDigestArrayOutput values. You can construct a concrete instance of `GetKeysKeySigningKeyDigestArrayInput` via:

GetKeysKeySigningKeyDigestArray{ GetKeysKeySigningKeyDigestArgs{...} }

type GetKeysKeySigningKeyDigestArrayOutput

type GetKeysKeySigningKeyDigestArrayOutput struct{ *pulumi.OutputState }

func (GetKeysKeySigningKeyDigestArrayOutput) ElementType

func (GetKeysKeySigningKeyDigestArrayOutput) Index

func (GetKeysKeySigningKeyDigestArrayOutput) ToGetKeysKeySigningKeyDigestArrayOutput

func (o GetKeysKeySigningKeyDigestArrayOutput) ToGetKeysKeySigningKeyDigestArrayOutput() GetKeysKeySigningKeyDigestArrayOutput

func (GetKeysKeySigningKeyDigestArrayOutput) ToGetKeysKeySigningKeyDigestArrayOutputWithContext

func (o GetKeysKeySigningKeyDigestArrayOutput) ToGetKeysKeySigningKeyDigestArrayOutputWithContext(ctx context.Context) GetKeysKeySigningKeyDigestArrayOutput

func (GetKeysKeySigningKeyDigestArrayOutput) ToOutput added in v6.65.1

type GetKeysKeySigningKeyDigestInput

type GetKeysKeySigningKeyDigestInput interface {
	pulumi.Input

	ToGetKeysKeySigningKeyDigestOutput() GetKeysKeySigningKeyDigestOutput
	ToGetKeysKeySigningKeyDigestOutputWithContext(context.Context) GetKeysKeySigningKeyDigestOutput
}

GetKeysKeySigningKeyDigestInput is an input type that accepts GetKeysKeySigningKeyDigestArgs and GetKeysKeySigningKeyDigestOutput values. You can construct a concrete instance of `GetKeysKeySigningKeyDigestInput` via:

GetKeysKeySigningKeyDigestArgs{...}

type GetKeysKeySigningKeyDigestOutput

type GetKeysKeySigningKeyDigestOutput struct{ *pulumi.OutputState }

func (GetKeysKeySigningKeyDigestOutput) Digest

The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.

func (GetKeysKeySigningKeyDigestOutput) ElementType

func (GetKeysKeySigningKeyDigestOutput) ToGetKeysKeySigningKeyDigestOutput

func (o GetKeysKeySigningKeyDigestOutput) ToGetKeysKeySigningKeyDigestOutput() GetKeysKeySigningKeyDigestOutput

func (GetKeysKeySigningKeyDigestOutput) ToGetKeysKeySigningKeyDigestOutputWithContext

func (o GetKeysKeySigningKeyDigestOutput) ToGetKeysKeySigningKeyDigestOutputWithContext(ctx context.Context) GetKeysKeySigningKeyDigestOutput

func (GetKeysKeySigningKeyDigestOutput) ToOutput added in v6.65.1

func (GetKeysKeySigningKeyDigestOutput) Type

Specifies the algorithm used to calculate this digest. Possible values are `sha1`, `sha256` and `sha384`

type GetKeysKeySigningKeyInput

type GetKeysKeySigningKeyInput interface {
	pulumi.Input

	ToGetKeysKeySigningKeyOutput() GetKeysKeySigningKeyOutput
	ToGetKeysKeySigningKeyOutputWithContext(context.Context) GetKeysKeySigningKeyOutput
}

GetKeysKeySigningKeyInput is an input type that accepts GetKeysKeySigningKeyArgs and GetKeysKeySigningKeyOutput values. You can construct a concrete instance of `GetKeysKeySigningKeyInput` via:

GetKeysKeySigningKeyArgs{...}

type GetKeysKeySigningKeyOutput

type GetKeysKeySigningKeyOutput struct{ *pulumi.OutputState }

func (GetKeysKeySigningKeyOutput) Algorithm

String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time. Possible values are `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, and `rsasha512`.

func (GetKeysKeySigningKeyOutput) CreationTime

The time that this resource was created in the control plane. This is in RFC3339 text format.

func (GetKeysKeySigningKeyOutput) Description

A mutable string of at most 1024 characters associated with this resource for the user's convenience.

func (GetKeysKeySigningKeyOutput) Digests

A list of cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Each contains:

func (GetKeysKeySigningKeyOutput) DsRecord

The DS record based on the KSK record. This is used when [delegating](https://cloud.google.com/dns/docs/dnssec-advanced#subdelegation) DNSSEC-signed subdomains.

func (GetKeysKeySigningKeyOutput) ElementType

func (GetKeysKeySigningKeyOutput) ElementType() reflect.Type

func (GetKeysKeySigningKeyOutput) Id

Unique identifier for the resource; defined by the server.

func (GetKeysKeySigningKeyOutput) IsActive

Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.

func (GetKeysKeySigningKeyOutput) KeyLength

Length of the key in bits. Specified at creation time then immutable.

func (GetKeysKeySigningKeyOutput) KeyTag

The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B.

func (GetKeysKeySigningKeyOutput) PublicKey

Base64 encoded public half of this key.

func (GetKeysKeySigningKeyOutput) ToGetKeysKeySigningKeyOutput

func (o GetKeysKeySigningKeyOutput) ToGetKeysKeySigningKeyOutput() GetKeysKeySigningKeyOutput

func (GetKeysKeySigningKeyOutput) ToGetKeysKeySigningKeyOutputWithContext

func (o GetKeysKeySigningKeyOutput) ToGetKeysKeySigningKeyOutputWithContext(ctx context.Context) GetKeysKeySigningKeyOutput

func (GetKeysKeySigningKeyOutput) ToOutput added in v6.65.1

type GetKeysOutputArgs

type GetKeysOutputArgs struct {
	// The name or id of the Cloud DNS managed zone.
	ManagedZone pulumi.StringInput `pulumi:"managedZone"`
	// The ID of the project in which the resource belongs. If `project` is not provided, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
}

A collection of arguments for invoking getKeys.

func (GetKeysOutputArgs) ElementType

func (GetKeysOutputArgs) ElementType() reflect.Type

type GetKeysResult

type GetKeysResult struct {
	// Unique identifier for the resource; defined by the server.
	Id string `pulumi:"id"`
	// A list of Key-signing key (KSK) records. Structure is documented below. Additionally, the DS record is provided:
	KeySigningKeys []GetKeysKeySigningKey `pulumi:"keySigningKeys"`
	ManagedZone    string                 `pulumi:"managedZone"`
	Project        string                 `pulumi:"project"`
	// A list of Zone-signing key (ZSK) records. Structure is documented below.
	ZoneSigningKeys []GetKeysZoneSigningKey `pulumi:"zoneSigningKeys"`
}

A collection of values returned by getKeys.

func GetKeys

func GetKeys(ctx *pulumi.Context, args *GetKeysArgs, opts ...pulumi.InvokeOption) (*GetKeysResult, error)

Get the DNSKEY and DS records of DNSSEC-signed managed zones. For more information see the [official documentation](https://cloud.google.com/dns/docs/dnskeys/) and [API](https://cloud.google.com/dns/docs/reference/v1/dnsKeys).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		foo, err := dns.NewManagedZone(ctx, "foo", &dns.ManagedZoneArgs{
			DnsName: pulumi.String("foo.bar."),
			DnssecConfig: &dns.ManagedZoneDnssecConfigArgs{
				State:        pulumi.String("on"),
				NonExistence: pulumi.String("nsec3"),
			},
		})
		if err != nil {
			return err
		}
		fooDnsKeys := dns.GetKeysOutput(ctx, dns.GetKeysOutputArgs{
			ManagedZone: foo.ID(),
		}, nil)
		ctx.Export("fooDnsDsRecord", fooDnsKeys.ApplyT(func(fooDnsKeys dns.GetKeysResult) (*string, error) {
			return &fooDnsKeys.KeySigningKeys[0].DsRecord, nil
		}).(pulumi.StringPtrOutput))
		return nil
	})
}

```

type GetKeysResultOutput

type GetKeysResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getKeys.

func (GetKeysResultOutput) ElementType

func (GetKeysResultOutput) ElementType() reflect.Type

func (GetKeysResultOutput) Id

Unique identifier for the resource; defined by the server.

func (GetKeysResultOutput) KeySigningKeys

A list of Key-signing key (KSK) records. Structure is documented below. Additionally, the DS record is provided:

func (GetKeysResultOutput) ManagedZone

func (o GetKeysResultOutput) ManagedZone() pulumi.StringOutput

func (GetKeysResultOutput) Project

func (GetKeysResultOutput) ToGetKeysResultOutput

func (o GetKeysResultOutput) ToGetKeysResultOutput() GetKeysResultOutput

func (GetKeysResultOutput) ToGetKeysResultOutputWithContext

func (o GetKeysResultOutput) ToGetKeysResultOutputWithContext(ctx context.Context) GetKeysResultOutput

func (GetKeysResultOutput) ToOutput added in v6.65.1

func (GetKeysResultOutput) ZoneSigningKeys

A list of Zone-signing key (ZSK) records. Structure is documented below.

type GetKeysZoneSigningKey

type GetKeysZoneSigningKey struct {
	// String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time. Possible values are `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, and `rsasha512`.
	Algorithm string `pulumi:"algorithm"`
	// The time that this resource was created in the control plane. This is in RFC3339 text format.
	CreationTime string `pulumi:"creationTime"`
	// A mutable string of at most 1024 characters associated with this resource for the user's convenience.
	Description string `pulumi:"description"`
	// A list of cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Each contains:
	Digests []GetKeysZoneSigningKeyDigest `pulumi:"digests"`
	// Unique identifier for the resource; defined by the server.
	Id string `pulumi:"id"`
	// Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.
	IsActive bool `pulumi:"isActive"`
	// Length of the key in bits. Specified at creation time then immutable.
	KeyLength int `pulumi:"keyLength"`
	// The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B.
	KeyTag int `pulumi:"keyTag"`
	// Base64 encoded public half of this key.
	PublicKey string `pulumi:"publicKey"`
}

type GetKeysZoneSigningKeyArgs

type GetKeysZoneSigningKeyArgs struct {
	// String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time. Possible values are `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, and `rsasha512`.
	Algorithm pulumi.StringInput `pulumi:"algorithm"`
	// The time that this resource was created in the control plane. This is in RFC3339 text format.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// A mutable string of at most 1024 characters associated with this resource for the user's convenience.
	Description pulumi.StringInput `pulumi:"description"`
	// A list of cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Each contains:
	Digests GetKeysZoneSigningKeyDigestArrayInput `pulumi:"digests"`
	// Unique identifier for the resource; defined by the server.
	Id pulumi.StringInput `pulumi:"id"`
	// Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.
	IsActive pulumi.BoolInput `pulumi:"isActive"`
	// Length of the key in bits. Specified at creation time then immutable.
	KeyLength pulumi.IntInput `pulumi:"keyLength"`
	// The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B.
	KeyTag pulumi.IntInput `pulumi:"keyTag"`
	// Base64 encoded public half of this key.
	PublicKey pulumi.StringInput `pulumi:"publicKey"`
}

func (GetKeysZoneSigningKeyArgs) ElementType

func (GetKeysZoneSigningKeyArgs) ElementType() reflect.Type

func (GetKeysZoneSigningKeyArgs) ToGetKeysZoneSigningKeyOutput

func (i GetKeysZoneSigningKeyArgs) ToGetKeysZoneSigningKeyOutput() GetKeysZoneSigningKeyOutput

func (GetKeysZoneSigningKeyArgs) ToGetKeysZoneSigningKeyOutputWithContext

func (i GetKeysZoneSigningKeyArgs) ToGetKeysZoneSigningKeyOutputWithContext(ctx context.Context) GetKeysZoneSigningKeyOutput

func (GetKeysZoneSigningKeyArgs) ToOutput added in v6.65.1

type GetKeysZoneSigningKeyArray

type GetKeysZoneSigningKeyArray []GetKeysZoneSigningKeyInput

func (GetKeysZoneSigningKeyArray) ElementType

func (GetKeysZoneSigningKeyArray) ElementType() reflect.Type

func (GetKeysZoneSigningKeyArray) ToGetKeysZoneSigningKeyArrayOutput

func (i GetKeysZoneSigningKeyArray) ToGetKeysZoneSigningKeyArrayOutput() GetKeysZoneSigningKeyArrayOutput

func (GetKeysZoneSigningKeyArray) ToGetKeysZoneSigningKeyArrayOutputWithContext

func (i GetKeysZoneSigningKeyArray) ToGetKeysZoneSigningKeyArrayOutputWithContext(ctx context.Context) GetKeysZoneSigningKeyArrayOutput

func (GetKeysZoneSigningKeyArray) ToOutput added in v6.65.1

type GetKeysZoneSigningKeyArrayInput

type GetKeysZoneSigningKeyArrayInput interface {
	pulumi.Input

	ToGetKeysZoneSigningKeyArrayOutput() GetKeysZoneSigningKeyArrayOutput
	ToGetKeysZoneSigningKeyArrayOutputWithContext(context.Context) GetKeysZoneSigningKeyArrayOutput
}

GetKeysZoneSigningKeyArrayInput is an input type that accepts GetKeysZoneSigningKeyArray and GetKeysZoneSigningKeyArrayOutput values. You can construct a concrete instance of `GetKeysZoneSigningKeyArrayInput` via:

GetKeysZoneSigningKeyArray{ GetKeysZoneSigningKeyArgs{...} }

type GetKeysZoneSigningKeyArrayOutput

type GetKeysZoneSigningKeyArrayOutput struct{ *pulumi.OutputState }

func (GetKeysZoneSigningKeyArrayOutput) ElementType

func (GetKeysZoneSigningKeyArrayOutput) Index

func (GetKeysZoneSigningKeyArrayOutput) ToGetKeysZoneSigningKeyArrayOutput

func (o GetKeysZoneSigningKeyArrayOutput) ToGetKeysZoneSigningKeyArrayOutput() GetKeysZoneSigningKeyArrayOutput

func (GetKeysZoneSigningKeyArrayOutput) ToGetKeysZoneSigningKeyArrayOutputWithContext

func (o GetKeysZoneSigningKeyArrayOutput) ToGetKeysZoneSigningKeyArrayOutputWithContext(ctx context.Context) GetKeysZoneSigningKeyArrayOutput

func (GetKeysZoneSigningKeyArrayOutput) ToOutput added in v6.65.1

type GetKeysZoneSigningKeyDigest

type GetKeysZoneSigningKeyDigest struct {
	// The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.
	Digest string `pulumi:"digest"`
	// Specifies the algorithm used to calculate this digest. Possible values are `sha1`, `sha256` and `sha384`
	Type string `pulumi:"type"`
}

type GetKeysZoneSigningKeyDigestArgs

type GetKeysZoneSigningKeyDigestArgs struct {
	// The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.
	Digest pulumi.StringInput `pulumi:"digest"`
	// Specifies the algorithm used to calculate this digest. Possible values are `sha1`, `sha256` and `sha384`
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetKeysZoneSigningKeyDigestArgs) ElementType

func (GetKeysZoneSigningKeyDigestArgs) ToGetKeysZoneSigningKeyDigestOutput

func (i GetKeysZoneSigningKeyDigestArgs) ToGetKeysZoneSigningKeyDigestOutput() GetKeysZoneSigningKeyDigestOutput

func (GetKeysZoneSigningKeyDigestArgs) ToGetKeysZoneSigningKeyDigestOutputWithContext

func (i GetKeysZoneSigningKeyDigestArgs) ToGetKeysZoneSigningKeyDigestOutputWithContext(ctx context.Context) GetKeysZoneSigningKeyDigestOutput

func (GetKeysZoneSigningKeyDigestArgs) ToOutput added in v6.65.1

type GetKeysZoneSigningKeyDigestArray

type GetKeysZoneSigningKeyDigestArray []GetKeysZoneSigningKeyDigestInput

func (GetKeysZoneSigningKeyDigestArray) ElementType

func (GetKeysZoneSigningKeyDigestArray) ToGetKeysZoneSigningKeyDigestArrayOutput

func (i GetKeysZoneSigningKeyDigestArray) ToGetKeysZoneSigningKeyDigestArrayOutput() GetKeysZoneSigningKeyDigestArrayOutput

func (GetKeysZoneSigningKeyDigestArray) ToGetKeysZoneSigningKeyDigestArrayOutputWithContext

func (i GetKeysZoneSigningKeyDigestArray) ToGetKeysZoneSigningKeyDigestArrayOutputWithContext(ctx context.Context) GetKeysZoneSigningKeyDigestArrayOutput

func (GetKeysZoneSigningKeyDigestArray) ToOutput added in v6.65.1

type GetKeysZoneSigningKeyDigestArrayInput

type GetKeysZoneSigningKeyDigestArrayInput interface {
	pulumi.Input

	ToGetKeysZoneSigningKeyDigestArrayOutput() GetKeysZoneSigningKeyDigestArrayOutput
	ToGetKeysZoneSigningKeyDigestArrayOutputWithContext(context.Context) GetKeysZoneSigningKeyDigestArrayOutput
}

GetKeysZoneSigningKeyDigestArrayInput is an input type that accepts GetKeysZoneSigningKeyDigestArray and GetKeysZoneSigningKeyDigestArrayOutput values. You can construct a concrete instance of `GetKeysZoneSigningKeyDigestArrayInput` via:

GetKeysZoneSigningKeyDigestArray{ GetKeysZoneSigningKeyDigestArgs{...} }

type GetKeysZoneSigningKeyDigestArrayOutput

type GetKeysZoneSigningKeyDigestArrayOutput struct{ *pulumi.OutputState }

func (GetKeysZoneSigningKeyDigestArrayOutput) ElementType

func (GetKeysZoneSigningKeyDigestArrayOutput) Index

func (GetKeysZoneSigningKeyDigestArrayOutput) ToGetKeysZoneSigningKeyDigestArrayOutput

func (o GetKeysZoneSigningKeyDigestArrayOutput) ToGetKeysZoneSigningKeyDigestArrayOutput() GetKeysZoneSigningKeyDigestArrayOutput

func (GetKeysZoneSigningKeyDigestArrayOutput) ToGetKeysZoneSigningKeyDigestArrayOutputWithContext

func (o GetKeysZoneSigningKeyDigestArrayOutput) ToGetKeysZoneSigningKeyDigestArrayOutputWithContext(ctx context.Context) GetKeysZoneSigningKeyDigestArrayOutput

func (GetKeysZoneSigningKeyDigestArrayOutput) ToOutput added in v6.65.1

type GetKeysZoneSigningKeyDigestInput

type GetKeysZoneSigningKeyDigestInput interface {
	pulumi.Input

	ToGetKeysZoneSigningKeyDigestOutput() GetKeysZoneSigningKeyDigestOutput
	ToGetKeysZoneSigningKeyDigestOutputWithContext(context.Context) GetKeysZoneSigningKeyDigestOutput
}

GetKeysZoneSigningKeyDigestInput is an input type that accepts GetKeysZoneSigningKeyDigestArgs and GetKeysZoneSigningKeyDigestOutput values. You can construct a concrete instance of `GetKeysZoneSigningKeyDigestInput` via:

GetKeysZoneSigningKeyDigestArgs{...}

type GetKeysZoneSigningKeyDigestOutput

type GetKeysZoneSigningKeyDigestOutput struct{ *pulumi.OutputState }

func (GetKeysZoneSigningKeyDigestOutput) Digest

The base-16 encoded bytes of this digest. Suitable for use in a DS resource record.

func (GetKeysZoneSigningKeyDigestOutput) ElementType

func (GetKeysZoneSigningKeyDigestOutput) ToGetKeysZoneSigningKeyDigestOutput

func (o GetKeysZoneSigningKeyDigestOutput) ToGetKeysZoneSigningKeyDigestOutput() GetKeysZoneSigningKeyDigestOutput

func (GetKeysZoneSigningKeyDigestOutput) ToGetKeysZoneSigningKeyDigestOutputWithContext

func (o GetKeysZoneSigningKeyDigestOutput) ToGetKeysZoneSigningKeyDigestOutputWithContext(ctx context.Context) GetKeysZoneSigningKeyDigestOutput

func (GetKeysZoneSigningKeyDigestOutput) ToOutput added in v6.65.1

func (GetKeysZoneSigningKeyDigestOutput) Type

Specifies the algorithm used to calculate this digest. Possible values are `sha1`, `sha256` and `sha384`

type GetKeysZoneSigningKeyInput

type GetKeysZoneSigningKeyInput interface {
	pulumi.Input

	ToGetKeysZoneSigningKeyOutput() GetKeysZoneSigningKeyOutput
	ToGetKeysZoneSigningKeyOutputWithContext(context.Context) GetKeysZoneSigningKeyOutput
}

GetKeysZoneSigningKeyInput is an input type that accepts GetKeysZoneSigningKeyArgs and GetKeysZoneSigningKeyOutput values. You can construct a concrete instance of `GetKeysZoneSigningKeyInput` via:

GetKeysZoneSigningKeyArgs{...}

type GetKeysZoneSigningKeyOutput

type GetKeysZoneSigningKeyOutput struct{ *pulumi.OutputState }

func (GetKeysZoneSigningKeyOutput) Algorithm

String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time. Possible values are `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, and `rsasha512`.

func (GetKeysZoneSigningKeyOutput) CreationTime

The time that this resource was created in the control plane. This is in RFC3339 text format.

func (GetKeysZoneSigningKeyOutput) Description

A mutable string of at most 1024 characters associated with this resource for the user's convenience.

func (GetKeysZoneSigningKeyOutput) Digests

A list of cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Each contains:

func (GetKeysZoneSigningKeyOutput) ElementType

func (GetKeysZoneSigningKeyOutput) Id

Unique identifier for the resource; defined by the server.

func (GetKeysZoneSigningKeyOutput) IsActive

Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures.

func (GetKeysZoneSigningKeyOutput) KeyLength

Length of the key in bits. Specified at creation time then immutable.

func (GetKeysZoneSigningKeyOutput) KeyTag

The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B.

func (GetKeysZoneSigningKeyOutput) PublicKey

Base64 encoded public half of this key.

func (GetKeysZoneSigningKeyOutput) ToGetKeysZoneSigningKeyOutput

func (o GetKeysZoneSigningKeyOutput) ToGetKeysZoneSigningKeyOutput() GetKeysZoneSigningKeyOutput

func (GetKeysZoneSigningKeyOutput) ToGetKeysZoneSigningKeyOutputWithContext

func (o GetKeysZoneSigningKeyOutput) ToGetKeysZoneSigningKeyOutputWithContext(ctx context.Context) GetKeysZoneSigningKeyOutput

func (GetKeysZoneSigningKeyOutput) ToOutput added in v6.65.1

type GetManagedZoneIamPolicyArgs added in v6.59.0

type GetManagedZoneIamPolicyArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone string `pulumi:"managedZone"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project *string `pulumi:"project"`
}

A collection of arguments for invoking getManagedZoneIamPolicy.

type GetManagedZoneIamPolicyOutputArgs added in v6.59.0

type GetManagedZoneIamPolicyOutputArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	ManagedZone pulumi.StringInput `pulumi:"managedZone"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
}

A collection of arguments for invoking getManagedZoneIamPolicy.

func (GetManagedZoneIamPolicyOutputArgs) ElementType added in v6.59.0

type GetManagedZoneIamPolicyResult added in v6.59.0

type GetManagedZoneIamPolicyResult struct {
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id          string `pulumi:"id"`
	ManagedZone string `pulumi:"managedZone"`
	// (Required only by `dns.DnsManagedZoneIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData string `pulumi:"policyData"`
	Project    string `pulumi:"project"`
}

A collection of values returned by getManagedZoneIamPolicy.

func GetManagedZoneIamPolicy added in v6.59.0

func GetManagedZoneIamPolicy(ctx *pulumi.Context, args *GetManagedZoneIamPolicyArgs, opts ...pulumi.InvokeOption) (*GetManagedZoneIamPolicyResult, error)

Retrieves the current IAM policy data for managedzone

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.GetManagedZoneIamPolicy(ctx, &dns.GetManagedZoneIamPolicyArgs{
			Project:     pulumi.StringRef(google_dns_managed_zone.Default.Project),
			ManagedZone: google_dns_managed_zone.Default.Name,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetManagedZoneIamPolicyResultOutput added in v6.59.0

type GetManagedZoneIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getManagedZoneIamPolicy.

func GetManagedZoneIamPolicyOutput added in v6.59.0

func (GetManagedZoneIamPolicyResultOutput) ElementType added in v6.59.0

func (GetManagedZoneIamPolicyResultOutput) Etag added in v6.59.0

(Computed) The etag of the IAM policy.

func (GetManagedZoneIamPolicyResultOutput) Id added in v6.59.0

The provider-assigned unique ID for this managed resource.

func (GetManagedZoneIamPolicyResultOutput) ManagedZone added in v6.59.0

func (GetManagedZoneIamPolicyResultOutput) PolicyData added in v6.59.0

(Required only by `dns.DnsManagedZoneIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (GetManagedZoneIamPolicyResultOutput) Project added in v6.59.0

func (GetManagedZoneIamPolicyResultOutput) ToGetManagedZoneIamPolicyResultOutput added in v6.59.0

func (o GetManagedZoneIamPolicyResultOutput) ToGetManagedZoneIamPolicyResultOutput() GetManagedZoneIamPolicyResultOutput

func (GetManagedZoneIamPolicyResultOutput) ToGetManagedZoneIamPolicyResultOutputWithContext added in v6.59.0

func (o GetManagedZoneIamPolicyResultOutput) ToGetManagedZoneIamPolicyResultOutputWithContext(ctx context.Context) GetManagedZoneIamPolicyResultOutput

func (GetManagedZoneIamPolicyResultOutput) ToOutput added in v6.65.1

type LookupManagedZoneArgs

type LookupManagedZoneArgs struct {
	// A unique name for the resource.
	Name string `pulumi:"name"`
	// The ID of the project for the Google Cloud DNS zone.
	Project *string `pulumi:"project"`
}

A collection of arguments for invoking getManagedZone.

type LookupManagedZoneOutputArgs

type LookupManagedZoneOutputArgs struct {
	// A unique name for the resource.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the project for the Google Cloud DNS zone.
	Project pulumi.StringPtrInput `pulumi:"project"`
}

A collection of arguments for invoking getManagedZone.

func (LookupManagedZoneOutputArgs) ElementType

type LookupManagedZoneResult

type LookupManagedZoneResult struct {
	// A textual description field.
	Description string `pulumi:"description"`
	// The fully qualified DNS name of this zone, e.g. `example.io.`.
	DnsName       string `pulumi:"dnsName"`
	Id            string `pulumi:"id"`
	ManagedZoneId int    `pulumi:"managedZoneId"`
	Name          string `pulumi:"name"`
	// 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.
	NameServers []string `pulumi:"nameServers"`
	Project     *string  `pulumi:"project"`
	// The zone's visibility: public zones are exposed to the Internet,
	// while private zones are visible only to Virtual Private Cloud resources.
	Visibility string `pulumi:"visibility"`
}

A collection of values returned by getManagedZone.

func LookupManagedZone

func LookupManagedZone(ctx *pulumi.Context, args *LookupManagedZoneArgs, opts ...pulumi.InvokeOption) (*LookupManagedZoneResult, error)

Provides access to a zone's attributes within Google Cloud DNS. For more information see [the official documentation](https://cloud.google.com/dns/zones/) and [API](https://cloud.google.com/dns/api/v1/managedZones).

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		envDnsZone, err := dns.LookupManagedZone(ctx, &dns.LookupManagedZoneArgs{
			Name: "qa-zone",
		}, nil)
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "dns", &dns.RecordSetArgs{
			Name:        pulumi.String(fmt.Sprintf("my-address.%v", envDnsZone.DnsName)),
			Type:        pulumi.String("TXT"),
			Ttl:         pulumi.Int(300),
			ManagedZone: *pulumi.String(envDnsZone.Name),
			Rrdatas: pulumi.StringArray{
				pulumi.String("test"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupManagedZoneResultOutput

type LookupManagedZoneResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getManagedZone.

func (LookupManagedZoneResultOutput) Description

A textual description field.

func (LookupManagedZoneResultOutput) DnsName

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

func (LookupManagedZoneResultOutput) ElementType

func (LookupManagedZoneResultOutput) Id

func (LookupManagedZoneResultOutput) ManagedZoneId added in v6.35.0

func (LookupManagedZoneResultOutput) Name

func (LookupManagedZoneResultOutput) NameServers

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.

func (LookupManagedZoneResultOutput) Project

func (LookupManagedZoneResultOutput) ToLookupManagedZoneResultOutput

func (o LookupManagedZoneResultOutput) ToLookupManagedZoneResultOutput() LookupManagedZoneResultOutput

func (LookupManagedZoneResultOutput) ToLookupManagedZoneResultOutputWithContext

func (o LookupManagedZoneResultOutput) ToLookupManagedZoneResultOutputWithContext(ctx context.Context) LookupManagedZoneResultOutput

func (LookupManagedZoneResultOutput) ToOutput added in v6.65.1

func (LookupManagedZoneResultOutput) Visibility

The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources.

type LookupRecordSetArgs added in v6.15.1

type LookupRecordSetArgs struct {
	// The Name of the zone.
	ManagedZone string `pulumi:"managedZone"`
	// The DNS name for the resource.
	Name string `pulumi:"name"`
	// The ID of the project for the Google Cloud.
	Project *string `pulumi:"project"`
	// The RRSet type. [See this table for supported types](https://cloud.google.com/dns/docs/records#record_type).
	Type string `pulumi:"type"`
}

A collection of arguments for invoking getRecordSet.

type LookupRecordSetOutputArgs added in v6.15.1

type LookupRecordSetOutputArgs struct {
	// The Name of the zone.
	ManagedZone pulumi.StringInput `pulumi:"managedZone"`
	// The DNS name for the resource.
	Name pulumi.StringInput `pulumi:"name"`
	// The ID of the project for the Google Cloud.
	Project pulumi.StringPtrInput `pulumi:"project"`
	// The RRSet type. [See this table for supported types](https://cloud.google.com/dns/docs/records#record_type).
	Type pulumi.StringInput `pulumi:"type"`
}

A collection of arguments for invoking getRecordSet.

func (LookupRecordSetOutputArgs) ElementType added in v6.15.1

func (LookupRecordSetOutputArgs) ElementType() reflect.Type

type LookupRecordSetResult added in v6.15.1

type LookupRecordSetResult struct {
	Id          string  `pulumi:"id"`
	ManagedZone string  `pulumi:"managedZone"`
	Name        string  `pulumi:"name"`
	Project     *string `pulumi:"project"`
	// The string data for the records in this record set.
	Rrdatas []string `pulumi:"rrdatas"`
	// The time-to-live of this record set (seconds).
	Ttl  int    `pulumi:"ttl"`
	Type string `pulumi:"type"`
}

A collection of values returned by getRecordSet.

func LookupRecordSet added in v6.15.1

func LookupRecordSet(ctx *pulumi.Context, args *LookupRecordSetArgs, opts ...pulumi.InvokeOption) (*LookupRecordSetResult, error)

Get a DNS record set within Google Cloud DNS For more information see [the official documentation](https://cloud.google.com/dns/docs/records) and [API](https://cloud.google.com/dns/docs/reference/v1/resourceRecordSets)

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		sample, err := dns.LookupManagedZone(ctx, &dns.LookupManagedZoneArgs{
			Name: "sample-zone",
		}, nil)
		if err != nil {
			return err
		}
		_, err = dns.LookupRecordSet(ctx, &dns.LookupRecordSetArgs{
			ManagedZone: sample.Name,
			Name:        fmt.Sprintf("my-record.%v", sample.DnsName),
			Type:        "A",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupRecordSetResultOutput added in v6.15.1

type LookupRecordSetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRecordSet.

func LookupRecordSetOutput added in v6.15.1

func (LookupRecordSetResultOutput) ElementType added in v6.15.1

func (LookupRecordSetResultOutput) Id added in v6.15.1

func (LookupRecordSetResultOutput) ManagedZone added in v6.15.1

func (LookupRecordSetResultOutput) Name added in v6.15.1

func (LookupRecordSetResultOutput) Project added in v6.15.1

func (LookupRecordSetResultOutput) Rrdatas added in v6.15.1

The string data for the records in this record set.

func (LookupRecordSetResultOutput) ToLookupRecordSetResultOutput added in v6.15.1

func (o LookupRecordSetResultOutput) ToLookupRecordSetResultOutput() LookupRecordSetResultOutput

func (LookupRecordSetResultOutput) ToLookupRecordSetResultOutputWithContext added in v6.15.1

func (o LookupRecordSetResultOutput) ToLookupRecordSetResultOutputWithContext(ctx context.Context) LookupRecordSetResultOutput

func (LookupRecordSetResultOutput) ToOutput added in v6.65.1

func (LookupRecordSetResultOutput) Ttl added in v6.15.1

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

func (LookupRecordSetResultOutput) Type added in v6.15.1

type ManagedZone

type ManagedZone struct {
	pulumi.CustomResourceState

	// Cloud logging configuration
	// Structure is documented below.
	CloudLoggingConfig ManagedZoneCloudLoggingConfigOutput `pulumi:"cloudLoggingConfig"`
	// The time that this resource was created on the server.
	// This is in RFC3339 text format.
	CreationTime pulumi.StringOutput `pulumi:"creationTime"`
	// A textual description field. Defaults to 'Managed by Pulumi'.
	Description pulumi.StringOutput `pulumi:"description"`
	// The DNS name of this managed zone, for instance "example.com.".
	DnsName pulumi.StringOutput `pulumi:"dnsName"`
	// DNSSEC configuration
	// Structure is documented below.
	DnssecConfig ManagedZoneDnssecConfigPtrOutput `pulumi:"dnssecConfig"`
	// Set this true to delete all records in the zone.
	ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"`
	// The presence for this field indicates that outbound forwarding is enabled
	// for this zone. The value of this field contains the set of destinations
	// to forward to.
	// Structure is documented below.
	ForwardingConfig ManagedZoneForwardingConfigPtrOutput `pulumi:"forwardingConfig"`
	// A set of key/value label pairs to assign to this ManagedZone.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// Unique identifier for the resource; defined by the server.
	ManagedZoneId pulumi.IntOutput `pulumi:"managedZoneId"`
	// User assigned name for this resource.
	// Must be unique within the project.
	//
	// ***
	Name pulumi.StringOutput `pulumi:"name"`
	// Delegate your managedZone to these virtual name servers;
	// defined by the server
	NameServers pulumi.StringArrayOutput `pulumi:"nameServers"`
	// The presence of this field indicates that DNS Peering is enabled for this
	// zone. The value of this field contains the network to peer with.
	// Structure is documented below.
	PeeringConfig ManagedZonePeeringConfigPtrOutput `pulumi:"peeringConfig"`
	// For privately visible zones, the set of Virtual Private Cloud
	// resources that the zone is visible from. At least one of `gkeClusters` or `networks` must be specified.
	// Structure is documented below.
	PrivateVisibilityConfig ManagedZonePrivateVisibilityConfigPtrOutput `pulumi:"privateVisibilityConfig"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// Specifies if this is a managed reverse lookup zone. If true, Cloud DNS will resolve reverse
	// lookup queries using automatically configured records for VPC resources. This only applies
	// to networks listed under `privateVisibilityConfig`.
	ReverseLookup pulumi.BoolPtrOutput `pulumi:"reverseLookup"`
	// The presence of this field indicates that this zone is backed by Service Directory. The value of this field contains information related to the namespace associated with the zone.
	// Structure is documented below.
	ServiceDirectoryConfig ManagedZoneServiceDirectoryConfigPtrOutput `pulumi:"serviceDirectoryConfig"`
	// The zone's visibility: public zones are exposed to the Internet,
	// while private zones are visible only to Virtual Private Cloud resources.
	// Default value is `public`.
	// Possible values are: `private`, `public`.
	Visibility pulumi.StringPtrOutput `pulumi:"visibility"`
}

A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.

To get more information about ManagedZone, see:

* [API documentation](https://cloud.google.com/dns/api/v1/managedZones) * How-to Guides

## Example Usage ### Dns Managed Zone Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewManagedZone(ctx, "example-zone", &dns.ManagedZoneArgs{
			Description: pulumi.String("Example DNS zone"),
			DnsName:     pulumi.String("my-domain.com."),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Dns Managed Zone Private

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewNetwork(ctx, "network-1", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewNetwork(ctx, "network-2", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewManagedZone(ctx, "private-zone", &dns.ManagedZoneArgs{
			DnsName:     pulumi.String("private.example.com."),
			Description: pulumi.String("Example private DNS zone"),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
			Visibility: pulumi.String("private"),
			PrivateVisibilityConfig: &dns.ManagedZonePrivateVisibilityConfigArgs{
				Networks: dns.ManagedZonePrivateVisibilityConfigNetworkArray{
					&dns.ManagedZonePrivateVisibilityConfigNetworkArgs{
						NetworkUrl: network_1.ID(),
					},
					&dns.ManagedZonePrivateVisibilityConfigNetworkArgs{
						NetworkUrl: network_2.ID(),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Dns Managed Zone Private Forwarding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewNetwork(ctx, "network-1", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewNetwork(ctx, "network-2", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewManagedZone(ctx, "private-zone", &dns.ManagedZoneArgs{
			DnsName:     pulumi.String("private.example.com."),
			Description: pulumi.String("Example private DNS zone"),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
			Visibility: pulumi.String("private"),
			PrivateVisibilityConfig: &dns.ManagedZonePrivateVisibilityConfigArgs{
				Networks: dns.ManagedZonePrivateVisibilityConfigNetworkArray{
					&dns.ManagedZonePrivateVisibilityConfigNetworkArgs{
						NetworkUrl: network_1.ID(),
					},
					&dns.ManagedZonePrivateVisibilityConfigNetworkArgs{
						NetworkUrl: network_2.ID(),
					},
				},
			},
			ForwardingConfig: &dns.ManagedZoneForwardingConfigArgs{
				TargetNameServers: dns.ManagedZoneForwardingConfigTargetNameServerArray{
					&dns.ManagedZoneForwardingConfigTargetNameServerArgs{
						Ipv4Address: pulumi.String("172.16.1.10"),
					},
					&dns.ManagedZoneForwardingConfigTargetNameServerArgs{
						Ipv4Address: pulumi.String("172.16.1.20"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Dns Managed Zone Private Gke

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewNetwork(ctx, "network-1", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewSubnetwork(ctx, "subnetwork-1", &compute.SubnetworkArgs{
			Network:               network_1.Name,
			IpCidrRange:           pulumi.String("10.0.36.0/24"),
			Region:                pulumi.String("us-central1"),
			PrivateIpGoogleAccess: pulumi.Bool(true),
			SecondaryIpRanges: compute.SubnetworkSecondaryIpRangeArray{
				&compute.SubnetworkSecondaryIpRangeArgs{
					RangeName:   pulumi.String("pod"),
					IpCidrRange: pulumi.String("10.0.0.0/19"),
				},
				&compute.SubnetworkSecondaryIpRangeArgs{
					RangeName:   pulumi.String("svc"),
					IpCidrRange: pulumi.String("10.0.32.0/22"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = container.NewCluster(ctx, "cluster-1", &container.ClusterArgs{
			Location:         pulumi.String("us-central1-c"),
			InitialNodeCount: pulumi.Int(1),
			NetworkingMode:   pulumi.String("VPC_NATIVE"),
			DefaultSnatStatus: &container.ClusterDefaultSnatStatusArgs{
				Disabled: pulumi.Bool(true),
			},
			Network:    network_1.Name,
			Subnetwork: subnetwork_1.Name,
			PrivateClusterConfig: &container.ClusterPrivateClusterConfigArgs{
				EnablePrivateEndpoint: pulumi.Bool(true),
				EnablePrivateNodes:    pulumi.Bool(true),
				MasterIpv4CidrBlock:   pulumi.String("10.42.0.0/28"),
				MasterGlobalAccessConfig: &container.ClusterPrivateClusterConfigMasterGlobalAccessConfigArgs{
					Enabled: pulumi.Bool(true),
				},
			},
			MasterAuthorizedNetworksConfig: nil,
			IpAllocationPolicy: &container.ClusterIpAllocationPolicyArgs{
				ClusterSecondaryRangeName: subnetwork_1.SecondaryIpRanges.ApplyT(func(secondaryIpRanges []compute.SubnetworkSecondaryIpRange) (*string, error) {
					return &secondaryIpRanges[0].RangeName, nil
				}).(pulumi.StringPtrOutput),
				ServicesSecondaryRangeName: subnetwork_1.SecondaryIpRanges.ApplyT(func(secondaryIpRanges []compute.SubnetworkSecondaryIpRange) (*string, error) {
					return &secondaryIpRanges[1].RangeName, nil
				}).(pulumi.StringPtrOutput),
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewManagedZone(ctx, "private-zone-gke", &dns.ManagedZoneArgs{
			DnsName:     pulumi.String("private.example.com."),
			Description: pulumi.String("Example private DNS zone"),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
			Visibility: pulumi.String("private"),
			PrivateVisibilityConfig: &dns.ManagedZonePrivateVisibilityConfigArgs{
				GkeClusters: dns.ManagedZonePrivateVisibilityConfigGkeClusterArray{
					&dns.ManagedZonePrivateVisibilityConfigGkeClusterArgs{
						GkeClusterName: cluster_1.ID(),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Dns Managed Zone Private Peering

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewNetwork(ctx, "network-source", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewNetwork(ctx, "network-target", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewManagedZone(ctx, "peering-zone", &dns.ManagedZoneArgs{
			DnsName:     pulumi.String("peering.example.com."),
			Description: pulumi.String("Example private DNS peering zone"),
			Visibility:  pulumi.String("private"),
			PrivateVisibilityConfig: &dns.ManagedZonePrivateVisibilityConfigArgs{
				Networks: dns.ManagedZonePrivateVisibilityConfigNetworkArray{
					&dns.ManagedZonePrivateVisibilityConfigNetworkArgs{
						NetworkUrl: network_source.ID(),
					},
				},
			},
			PeeringConfig: &dns.ManagedZonePeeringConfigArgs{
				TargetNetwork: &dns.ManagedZonePeeringConfigTargetNetworkArgs{
					NetworkUrl: network_target.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Dns Managed Zone Service Directory

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/servicedirectory"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := servicedirectory.NewNamespace(ctx, "example", &servicedirectory.NamespaceArgs{
			NamespaceId: pulumi.String("example"),
			Location:    pulumi.String("us-central1"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = dns.NewManagedZone(ctx, "sd-zone", &dns.ManagedZoneArgs{
			DnsName:     pulumi.String("services.example.com."),
			Description: pulumi.String("Example private DNS Service Directory zone"),
			Visibility:  pulumi.String("private"),
			ServiceDirectoryConfig: &dns.ManagedZoneServiceDirectoryConfigArgs{
				Namespace: &dns.ManagedZoneServiceDirectoryConfigNamespaceArgs{
					NamespaceUrl: example.ID(),
				},
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = compute.NewNetwork(ctx, "network", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Dns Managed Zone Cloud Logging

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewManagedZone(ctx, "cloud-logging-enabled-zone", &dns.ManagedZoneArgs{
			CloudLoggingConfig: &dns.ManagedZoneCloudLoggingConfigArgs{
				EnableLogging: pulumi.Bool(true),
			},
			Description: pulumi.String("Example cloud logging enabled DNS zone"),
			DnsName:     pulumi.String("services.example.com."),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ManagedZone can be imported using any of these accepted formats

```sh

$ pulumi import gcp:dns/managedZone:ManagedZone default projects/{{project}}/managedZones/{{name}}

```

```sh

$ pulumi import gcp:dns/managedZone:ManagedZone default {{project}}/{{name}}

```

```sh

$ pulumi import gcp:dns/managedZone:ManagedZone default {{name}}

```

func GetManagedZone

func GetManagedZone(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ManagedZoneState, opts ...pulumi.ResourceOption) (*ManagedZone, error)

GetManagedZone gets an existing ManagedZone 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 NewManagedZone

func NewManagedZone(ctx *pulumi.Context,
	name string, args *ManagedZoneArgs, opts ...pulumi.ResourceOption) (*ManagedZone, error)

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

func (*ManagedZone) ElementType

func (*ManagedZone) ElementType() reflect.Type

func (*ManagedZone) ToManagedZoneOutput

func (i *ManagedZone) ToManagedZoneOutput() ManagedZoneOutput

func (*ManagedZone) ToManagedZoneOutputWithContext

func (i *ManagedZone) ToManagedZoneOutputWithContext(ctx context.Context) ManagedZoneOutput

func (*ManagedZone) ToOutput added in v6.65.1

func (i *ManagedZone) ToOutput(ctx context.Context) pulumix.Output[*ManagedZone]

type ManagedZoneArgs

type ManagedZoneArgs struct {
	// Cloud logging configuration
	// Structure is documented below.
	CloudLoggingConfig ManagedZoneCloudLoggingConfigPtrInput
	// A textual description field. Defaults to 'Managed by Pulumi'.
	Description pulumi.StringPtrInput
	// The DNS name of this managed zone, for instance "example.com.".
	DnsName pulumi.StringInput
	// DNSSEC configuration
	// Structure is documented below.
	DnssecConfig ManagedZoneDnssecConfigPtrInput
	// Set this true to delete all records in the zone.
	ForceDestroy pulumi.BoolPtrInput
	// The presence for this field indicates that outbound forwarding is enabled
	// for this zone. The value of this field contains the set of destinations
	// to forward to.
	// Structure is documented below.
	ForwardingConfig ManagedZoneForwardingConfigPtrInput
	// A set of key/value label pairs to assign to this ManagedZone.
	Labels pulumi.StringMapInput
	// User assigned name for this resource.
	// Must be unique within the project.
	//
	// ***
	Name pulumi.StringPtrInput
	// The presence of this field indicates that DNS Peering is enabled for this
	// zone. The value of this field contains the network to peer with.
	// Structure is documented below.
	PeeringConfig ManagedZonePeeringConfigPtrInput
	// For privately visible zones, the set of Virtual Private Cloud
	// resources that the zone is visible from. At least one of `gkeClusters` or `networks` must be specified.
	// Structure is documented below.
	PrivateVisibilityConfig ManagedZonePrivateVisibilityConfigPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Specifies if this is a managed reverse lookup zone. If true, Cloud DNS will resolve reverse
	// lookup queries using automatically configured records for VPC resources. This only applies
	// to networks listed under `privateVisibilityConfig`.
	ReverseLookup pulumi.BoolPtrInput
	// The presence of this field indicates that this zone is backed by Service Directory. The value of this field contains information related to the namespace associated with the zone.
	// Structure is documented below.
	ServiceDirectoryConfig ManagedZoneServiceDirectoryConfigPtrInput
	// The zone's visibility: public zones are exposed to the Internet,
	// while private zones are visible only to Virtual Private Cloud resources.
	// Default value is `public`.
	// Possible values are: `private`, `public`.
	Visibility pulumi.StringPtrInput
}

The set of arguments for constructing a ManagedZone resource.

func (ManagedZoneArgs) ElementType

func (ManagedZoneArgs) ElementType() reflect.Type

type ManagedZoneArray

type ManagedZoneArray []ManagedZoneInput

func (ManagedZoneArray) ElementType

func (ManagedZoneArray) ElementType() reflect.Type

func (ManagedZoneArray) ToManagedZoneArrayOutput

func (i ManagedZoneArray) ToManagedZoneArrayOutput() ManagedZoneArrayOutput

func (ManagedZoneArray) ToManagedZoneArrayOutputWithContext

func (i ManagedZoneArray) ToManagedZoneArrayOutputWithContext(ctx context.Context) ManagedZoneArrayOutput

func (ManagedZoneArray) ToOutput added in v6.65.1

type ManagedZoneArrayInput

type ManagedZoneArrayInput interface {
	pulumi.Input

	ToManagedZoneArrayOutput() ManagedZoneArrayOutput
	ToManagedZoneArrayOutputWithContext(context.Context) ManagedZoneArrayOutput
}

ManagedZoneArrayInput is an input type that accepts ManagedZoneArray and ManagedZoneArrayOutput values. You can construct a concrete instance of `ManagedZoneArrayInput` via:

ManagedZoneArray{ ManagedZoneArgs{...} }

type ManagedZoneArrayOutput

type ManagedZoneArrayOutput struct{ *pulumi.OutputState }

func (ManagedZoneArrayOutput) ElementType

func (ManagedZoneArrayOutput) ElementType() reflect.Type

func (ManagedZoneArrayOutput) Index

func (ManagedZoneArrayOutput) ToManagedZoneArrayOutput

func (o ManagedZoneArrayOutput) ToManagedZoneArrayOutput() ManagedZoneArrayOutput

func (ManagedZoneArrayOutput) ToManagedZoneArrayOutputWithContext

func (o ManagedZoneArrayOutput) ToManagedZoneArrayOutputWithContext(ctx context.Context) ManagedZoneArrayOutput

func (ManagedZoneArrayOutput) ToOutput added in v6.65.1

type ManagedZoneCloudLoggingConfig added in v6.41.0

type ManagedZoneCloudLoggingConfig struct {
	// If set, enable query logging for this ManagedZone. False by default, making logging opt-in.
	EnableLogging bool `pulumi:"enableLogging"`
}

type ManagedZoneCloudLoggingConfigArgs added in v6.41.0

type ManagedZoneCloudLoggingConfigArgs struct {
	// If set, enable query logging for this ManagedZone. False by default, making logging opt-in.
	EnableLogging pulumi.BoolInput `pulumi:"enableLogging"`
}

func (ManagedZoneCloudLoggingConfigArgs) ElementType added in v6.41.0

func (ManagedZoneCloudLoggingConfigArgs) ToManagedZoneCloudLoggingConfigOutput added in v6.41.0

func (i ManagedZoneCloudLoggingConfigArgs) ToManagedZoneCloudLoggingConfigOutput() ManagedZoneCloudLoggingConfigOutput

func (ManagedZoneCloudLoggingConfigArgs) ToManagedZoneCloudLoggingConfigOutputWithContext added in v6.41.0

func (i ManagedZoneCloudLoggingConfigArgs) ToManagedZoneCloudLoggingConfigOutputWithContext(ctx context.Context) ManagedZoneCloudLoggingConfigOutput

func (ManagedZoneCloudLoggingConfigArgs) ToManagedZoneCloudLoggingConfigPtrOutput added in v6.41.0

func (i ManagedZoneCloudLoggingConfigArgs) ToManagedZoneCloudLoggingConfigPtrOutput() ManagedZoneCloudLoggingConfigPtrOutput

func (ManagedZoneCloudLoggingConfigArgs) ToManagedZoneCloudLoggingConfigPtrOutputWithContext added in v6.41.0

func (i ManagedZoneCloudLoggingConfigArgs) ToManagedZoneCloudLoggingConfigPtrOutputWithContext(ctx context.Context) ManagedZoneCloudLoggingConfigPtrOutput

func (ManagedZoneCloudLoggingConfigArgs) ToOutput added in v6.65.1

type ManagedZoneCloudLoggingConfigInput added in v6.41.0

type ManagedZoneCloudLoggingConfigInput interface {
	pulumi.Input

	ToManagedZoneCloudLoggingConfigOutput() ManagedZoneCloudLoggingConfigOutput
	ToManagedZoneCloudLoggingConfigOutputWithContext(context.Context) ManagedZoneCloudLoggingConfigOutput
}

ManagedZoneCloudLoggingConfigInput is an input type that accepts ManagedZoneCloudLoggingConfigArgs and ManagedZoneCloudLoggingConfigOutput values. You can construct a concrete instance of `ManagedZoneCloudLoggingConfigInput` via:

ManagedZoneCloudLoggingConfigArgs{...}

type ManagedZoneCloudLoggingConfigOutput added in v6.41.0

type ManagedZoneCloudLoggingConfigOutput struct{ *pulumi.OutputState }

func (ManagedZoneCloudLoggingConfigOutput) ElementType added in v6.41.0

func (ManagedZoneCloudLoggingConfigOutput) EnableLogging added in v6.41.0

If set, enable query logging for this ManagedZone. False by default, making logging opt-in.

func (ManagedZoneCloudLoggingConfigOutput) ToManagedZoneCloudLoggingConfigOutput added in v6.41.0

func (o ManagedZoneCloudLoggingConfigOutput) ToManagedZoneCloudLoggingConfigOutput() ManagedZoneCloudLoggingConfigOutput

func (ManagedZoneCloudLoggingConfigOutput) ToManagedZoneCloudLoggingConfigOutputWithContext added in v6.41.0

func (o ManagedZoneCloudLoggingConfigOutput) ToManagedZoneCloudLoggingConfigOutputWithContext(ctx context.Context) ManagedZoneCloudLoggingConfigOutput

func (ManagedZoneCloudLoggingConfigOutput) ToManagedZoneCloudLoggingConfigPtrOutput added in v6.41.0

func (o ManagedZoneCloudLoggingConfigOutput) ToManagedZoneCloudLoggingConfigPtrOutput() ManagedZoneCloudLoggingConfigPtrOutput

func (ManagedZoneCloudLoggingConfigOutput) ToManagedZoneCloudLoggingConfigPtrOutputWithContext added in v6.41.0

func (o ManagedZoneCloudLoggingConfigOutput) ToManagedZoneCloudLoggingConfigPtrOutputWithContext(ctx context.Context) ManagedZoneCloudLoggingConfigPtrOutput

func (ManagedZoneCloudLoggingConfigOutput) ToOutput added in v6.65.1

type ManagedZoneCloudLoggingConfigPtrInput added in v6.41.0

type ManagedZoneCloudLoggingConfigPtrInput interface {
	pulumi.Input

	ToManagedZoneCloudLoggingConfigPtrOutput() ManagedZoneCloudLoggingConfigPtrOutput
	ToManagedZoneCloudLoggingConfigPtrOutputWithContext(context.Context) ManagedZoneCloudLoggingConfigPtrOutput
}

ManagedZoneCloudLoggingConfigPtrInput is an input type that accepts ManagedZoneCloudLoggingConfigArgs, ManagedZoneCloudLoggingConfigPtr and ManagedZoneCloudLoggingConfigPtrOutput values. You can construct a concrete instance of `ManagedZoneCloudLoggingConfigPtrInput` via:

        ManagedZoneCloudLoggingConfigArgs{...}

or:

        nil

type ManagedZoneCloudLoggingConfigPtrOutput added in v6.41.0

type ManagedZoneCloudLoggingConfigPtrOutput struct{ *pulumi.OutputState }

func (ManagedZoneCloudLoggingConfigPtrOutput) Elem added in v6.41.0

func (ManagedZoneCloudLoggingConfigPtrOutput) ElementType added in v6.41.0

func (ManagedZoneCloudLoggingConfigPtrOutput) EnableLogging added in v6.41.0

If set, enable query logging for this ManagedZone. False by default, making logging opt-in.

func (ManagedZoneCloudLoggingConfigPtrOutput) ToManagedZoneCloudLoggingConfigPtrOutput added in v6.41.0

func (o ManagedZoneCloudLoggingConfigPtrOutput) ToManagedZoneCloudLoggingConfigPtrOutput() ManagedZoneCloudLoggingConfigPtrOutput

func (ManagedZoneCloudLoggingConfigPtrOutput) ToManagedZoneCloudLoggingConfigPtrOutputWithContext added in v6.41.0

func (o ManagedZoneCloudLoggingConfigPtrOutput) ToManagedZoneCloudLoggingConfigPtrOutputWithContext(ctx context.Context) ManagedZoneCloudLoggingConfigPtrOutput

func (ManagedZoneCloudLoggingConfigPtrOutput) ToOutput added in v6.65.1

type ManagedZoneDnssecConfig

type ManagedZoneDnssecConfig struct {
	// Specifies parameters that will be used for generating initial DnsKeys
	// for this ManagedZone. If you provide a spec for keySigning or zoneSigning,
	// you must also provide one for the other.
	// defaultKeySpecs can only be updated when the state is `off`.
	// Structure is documented below.
	DefaultKeySpecs []ManagedZoneDnssecConfigDefaultKeySpec `pulumi:"defaultKeySpecs"`
	// Identifies what kind of resource this is
	Kind *string `pulumi:"kind"`
	// Specifies the mechanism used to provide authenticated denial-of-existence responses.
	// nonExistence can only be updated when the state is `off`.
	// Possible values are: `nsec`, `nsec3`.
	NonExistence *string `pulumi:"nonExistence"`
	// Specifies whether DNSSEC is enabled, and what mode it is in
	// Possible values are: `off`, `on`, `transfer`.
	State *string `pulumi:"state"`
}

type ManagedZoneDnssecConfigArgs

type ManagedZoneDnssecConfigArgs struct {
	// Specifies parameters that will be used for generating initial DnsKeys
	// for this ManagedZone. If you provide a spec for keySigning or zoneSigning,
	// you must also provide one for the other.
	// defaultKeySpecs can only be updated when the state is `off`.
	// Structure is documented below.
	DefaultKeySpecs ManagedZoneDnssecConfigDefaultKeySpecArrayInput `pulumi:"defaultKeySpecs"`
	// Identifies what kind of resource this is
	Kind pulumi.StringPtrInput `pulumi:"kind"`
	// Specifies the mechanism used to provide authenticated denial-of-existence responses.
	// nonExistence can only be updated when the state is `off`.
	// Possible values are: `nsec`, `nsec3`.
	NonExistence pulumi.StringPtrInput `pulumi:"nonExistence"`
	// Specifies whether DNSSEC is enabled, and what mode it is in
	// Possible values are: `off`, `on`, `transfer`.
	State pulumi.StringPtrInput `pulumi:"state"`
}

func (ManagedZoneDnssecConfigArgs) ElementType

func (ManagedZoneDnssecConfigArgs) ToManagedZoneDnssecConfigOutput

func (i ManagedZoneDnssecConfigArgs) ToManagedZoneDnssecConfigOutput() ManagedZoneDnssecConfigOutput

func (ManagedZoneDnssecConfigArgs) ToManagedZoneDnssecConfigOutputWithContext

func (i ManagedZoneDnssecConfigArgs) ToManagedZoneDnssecConfigOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigOutput

func (ManagedZoneDnssecConfigArgs) ToManagedZoneDnssecConfigPtrOutput

func (i ManagedZoneDnssecConfigArgs) ToManagedZoneDnssecConfigPtrOutput() ManagedZoneDnssecConfigPtrOutput

func (ManagedZoneDnssecConfigArgs) ToManagedZoneDnssecConfigPtrOutputWithContext

func (i ManagedZoneDnssecConfigArgs) ToManagedZoneDnssecConfigPtrOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigPtrOutput

func (ManagedZoneDnssecConfigArgs) ToOutput added in v6.65.1

type ManagedZoneDnssecConfigDefaultKeySpec

type ManagedZoneDnssecConfigDefaultKeySpec struct {
	// String mnemonic specifying the DNSSEC algorithm of this key
	// Possible values are: `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, `rsasha512`.
	Algorithm *string `pulumi:"algorithm"`
	// Length of the keys in bits
	KeyLength *int `pulumi:"keyLength"`
	// Specifies whether this is a key signing key (KSK) or a zone
	// signing key (ZSK). Key signing keys have the Secure Entry
	// Point flag set and, when active, will only be used to sign
	// resource record sets of type DNSKEY. Zone signing keys do
	// not have the Secure Entry Point flag set and will be used
	// to sign all other types of resource record sets.
	// Possible values are: `keySigning`, `zoneSigning`.
	KeyType *string `pulumi:"keyType"`
	// Identifies what kind of resource this is
	Kind *string `pulumi:"kind"`
}

type ManagedZoneDnssecConfigDefaultKeySpecArgs

type ManagedZoneDnssecConfigDefaultKeySpecArgs struct {
	// String mnemonic specifying the DNSSEC algorithm of this key
	// Possible values are: `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, `rsasha512`.
	Algorithm pulumi.StringPtrInput `pulumi:"algorithm"`
	// Length of the keys in bits
	KeyLength pulumi.IntPtrInput `pulumi:"keyLength"`
	// Specifies whether this is a key signing key (KSK) or a zone
	// signing key (ZSK). Key signing keys have the Secure Entry
	// Point flag set and, when active, will only be used to sign
	// resource record sets of type DNSKEY. Zone signing keys do
	// not have the Secure Entry Point flag set and will be used
	// to sign all other types of resource record sets.
	// Possible values are: `keySigning`, `zoneSigning`.
	KeyType pulumi.StringPtrInput `pulumi:"keyType"`
	// Identifies what kind of resource this is
	Kind pulumi.StringPtrInput `pulumi:"kind"`
}

func (ManagedZoneDnssecConfigDefaultKeySpecArgs) ElementType

func (ManagedZoneDnssecConfigDefaultKeySpecArgs) ToManagedZoneDnssecConfigDefaultKeySpecOutput

func (i ManagedZoneDnssecConfigDefaultKeySpecArgs) ToManagedZoneDnssecConfigDefaultKeySpecOutput() ManagedZoneDnssecConfigDefaultKeySpecOutput

func (ManagedZoneDnssecConfigDefaultKeySpecArgs) ToManagedZoneDnssecConfigDefaultKeySpecOutputWithContext

func (i ManagedZoneDnssecConfigDefaultKeySpecArgs) ToManagedZoneDnssecConfigDefaultKeySpecOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigDefaultKeySpecOutput

func (ManagedZoneDnssecConfigDefaultKeySpecArgs) ToOutput added in v6.65.1

type ManagedZoneDnssecConfigDefaultKeySpecArray

type ManagedZoneDnssecConfigDefaultKeySpecArray []ManagedZoneDnssecConfigDefaultKeySpecInput

func (ManagedZoneDnssecConfigDefaultKeySpecArray) ElementType

func (ManagedZoneDnssecConfigDefaultKeySpecArray) ToManagedZoneDnssecConfigDefaultKeySpecArrayOutput

func (i ManagedZoneDnssecConfigDefaultKeySpecArray) ToManagedZoneDnssecConfigDefaultKeySpecArrayOutput() ManagedZoneDnssecConfigDefaultKeySpecArrayOutput

func (ManagedZoneDnssecConfigDefaultKeySpecArray) ToManagedZoneDnssecConfigDefaultKeySpecArrayOutputWithContext

func (i ManagedZoneDnssecConfigDefaultKeySpecArray) ToManagedZoneDnssecConfigDefaultKeySpecArrayOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigDefaultKeySpecArrayOutput

func (ManagedZoneDnssecConfigDefaultKeySpecArray) ToOutput added in v6.65.1

type ManagedZoneDnssecConfigDefaultKeySpecArrayInput

type ManagedZoneDnssecConfigDefaultKeySpecArrayInput interface {
	pulumi.Input

	ToManagedZoneDnssecConfigDefaultKeySpecArrayOutput() ManagedZoneDnssecConfigDefaultKeySpecArrayOutput
	ToManagedZoneDnssecConfigDefaultKeySpecArrayOutputWithContext(context.Context) ManagedZoneDnssecConfigDefaultKeySpecArrayOutput
}

ManagedZoneDnssecConfigDefaultKeySpecArrayInput is an input type that accepts ManagedZoneDnssecConfigDefaultKeySpecArray and ManagedZoneDnssecConfigDefaultKeySpecArrayOutput values. You can construct a concrete instance of `ManagedZoneDnssecConfigDefaultKeySpecArrayInput` via:

ManagedZoneDnssecConfigDefaultKeySpecArray{ ManagedZoneDnssecConfigDefaultKeySpecArgs{...} }

type ManagedZoneDnssecConfigDefaultKeySpecArrayOutput

type ManagedZoneDnssecConfigDefaultKeySpecArrayOutput struct{ *pulumi.OutputState }

func (ManagedZoneDnssecConfigDefaultKeySpecArrayOutput) ElementType

func (ManagedZoneDnssecConfigDefaultKeySpecArrayOutput) Index

func (ManagedZoneDnssecConfigDefaultKeySpecArrayOutput) ToManagedZoneDnssecConfigDefaultKeySpecArrayOutput

func (o ManagedZoneDnssecConfigDefaultKeySpecArrayOutput) ToManagedZoneDnssecConfigDefaultKeySpecArrayOutput() ManagedZoneDnssecConfigDefaultKeySpecArrayOutput

func (ManagedZoneDnssecConfigDefaultKeySpecArrayOutput) ToManagedZoneDnssecConfigDefaultKeySpecArrayOutputWithContext

func (o ManagedZoneDnssecConfigDefaultKeySpecArrayOutput) ToManagedZoneDnssecConfigDefaultKeySpecArrayOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigDefaultKeySpecArrayOutput

func (ManagedZoneDnssecConfigDefaultKeySpecArrayOutput) ToOutput added in v6.65.1

type ManagedZoneDnssecConfigDefaultKeySpecInput

type ManagedZoneDnssecConfigDefaultKeySpecInput interface {
	pulumi.Input

	ToManagedZoneDnssecConfigDefaultKeySpecOutput() ManagedZoneDnssecConfigDefaultKeySpecOutput
	ToManagedZoneDnssecConfigDefaultKeySpecOutputWithContext(context.Context) ManagedZoneDnssecConfigDefaultKeySpecOutput
}

ManagedZoneDnssecConfigDefaultKeySpecInput is an input type that accepts ManagedZoneDnssecConfigDefaultKeySpecArgs and ManagedZoneDnssecConfigDefaultKeySpecOutput values. You can construct a concrete instance of `ManagedZoneDnssecConfigDefaultKeySpecInput` via:

ManagedZoneDnssecConfigDefaultKeySpecArgs{...}

type ManagedZoneDnssecConfigDefaultKeySpecOutput

type ManagedZoneDnssecConfigDefaultKeySpecOutput struct{ *pulumi.OutputState }

func (ManagedZoneDnssecConfigDefaultKeySpecOutput) Algorithm

String mnemonic specifying the DNSSEC algorithm of this key Possible values are: `ecdsap256sha256`, `ecdsap384sha384`, `rsasha1`, `rsasha256`, `rsasha512`.

func (ManagedZoneDnssecConfigDefaultKeySpecOutput) ElementType

func (ManagedZoneDnssecConfigDefaultKeySpecOutput) KeyLength

Length of the keys in bits

func (ManagedZoneDnssecConfigDefaultKeySpecOutput) KeyType

Specifies whether this is a key signing key (KSK) or a zone signing key (ZSK). Key signing keys have the Secure Entry Point flag set and, when active, will only be used to sign resource record sets of type DNSKEY. Zone signing keys do not have the Secure Entry Point flag set and will be used to sign all other types of resource record sets. Possible values are: `keySigning`, `zoneSigning`.

func (ManagedZoneDnssecConfigDefaultKeySpecOutput) Kind

Identifies what kind of resource this is

func (ManagedZoneDnssecConfigDefaultKeySpecOutput) ToManagedZoneDnssecConfigDefaultKeySpecOutput

func (o ManagedZoneDnssecConfigDefaultKeySpecOutput) ToManagedZoneDnssecConfigDefaultKeySpecOutput() ManagedZoneDnssecConfigDefaultKeySpecOutput

func (ManagedZoneDnssecConfigDefaultKeySpecOutput) ToManagedZoneDnssecConfigDefaultKeySpecOutputWithContext

func (o ManagedZoneDnssecConfigDefaultKeySpecOutput) ToManagedZoneDnssecConfigDefaultKeySpecOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigDefaultKeySpecOutput

func (ManagedZoneDnssecConfigDefaultKeySpecOutput) ToOutput added in v6.65.1

type ManagedZoneDnssecConfigInput

type ManagedZoneDnssecConfigInput interface {
	pulumi.Input

	ToManagedZoneDnssecConfigOutput() ManagedZoneDnssecConfigOutput
	ToManagedZoneDnssecConfigOutputWithContext(context.Context) ManagedZoneDnssecConfigOutput
}

ManagedZoneDnssecConfigInput is an input type that accepts ManagedZoneDnssecConfigArgs and ManagedZoneDnssecConfigOutput values. You can construct a concrete instance of `ManagedZoneDnssecConfigInput` via:

ManagedZoneDnssecConfigArgs{...}

type ManagedZoneDnssecConfigOutput

type ManagedZoneDnssecConfigOutput struct{ *pulumi.OutputState }

func (ManagedZoneDnssecConfigOutput) DefaultKeySpecs

Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. If you provide a spec for keySigning or zoneSigning, you must also provide one for the other. defaultKeySpecs can only be updated when the state is `off`. Structure is documented below.

func (ManagedZoneDnssecConfigOutput) ElementType

func (ManagedZoneDnssecConfigOutput) Kind

Identifies what kind of resource this is

func (ManagedZoneDnssecConfigOutput) NonExistence

Specifies the mechanism used to provide authenticated denial-of-existence responses. nonExistence can only be updated when the state is `off`. Possible values are: `nsec`, `nsec3`.

func (ManagedZoneDnssecConfigOutput) State

Specifies whether DNSSEC is enabled, and what mode it is in Possible values are: `off`, `on`, `transfer`.

func (ManagedZoneDnssecConfigOutput) ToManagedZoneDnssecConfigOutput

func (o ManagedZoneDnssecConfigOutput) ToManagedZoneDnssecConfigOutput() ManagedZoneDnssecConfigOutput

func (ManagedZoneDnssecConfigOutput) ToManagedZoneDnssecConfigOutputWithContext

func (o ManagedZoneDnssecConfigOutput) ToManagedZoneDnssecConfigOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigOutput

func (ManagedZoneDnssecConfigOutput) ToManagedZoneDnssecConfigPtrOutput

func (o ManagedZoneDnssecConfigOutput) ToManagedZoneDnssecConfigPtrOutput() ManagedZoneDnssecConfigPtrOutput

func (ManagedZoneDnssecConfigOutput) ToManagedZoneDnssecConfigPtrOutputWithContext

func (o ManagedZoneDnssecConfigOutput) ToManagedZoneDnssecConfigPtrOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigPtrOutput

func (ManagedZoneDnssecConfigOutput) ToOutput added in v6.65.1

type ManagedZoneDnssecConfigPtrInput

type ManagedZoneDnssecConfigPtrInput interface {
	pulumi.Input

	ToManagedZoneDnssecConfigPtrOutput() ManagedZoneDnssecConfigPtrOutput
	ToManagedZoneDnssecConfigPtrOutputWithContext(context.Context) ManagedZoneDnssecConfigPtrOutput
}

ManagedZoneDnssecConfigPtrInput is an input type that accepts ManagedZoneDnssecConfigArgs, ManagedZoneDnssecConfigPtr and ManagedZoneDnssecConfigPtrOutput values. You can construct a concrete instance of `ManagedZoneDnssecConfigPtrInput` via:

        ManagedZoneDnssecConfigArgs{...}

or:

        nil

type ManagedZoneDnssecConfigPtrOutput

type ManagedZoneDnssecConfigPtrOutput struct{ *pulumi.OutputState }

func (ManagedZoneDnssecConfigPtrOutput) DefaultKeySpecs

Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. If you provide a spec for keySigning or zoneSigning, you must also provide one for the other. defaultKeySpecs can only be updated when the state is `off`. Structure is documented below.

func (ManagedZoneDnssecConfigPtrOutput) Elem

func (ManagedZoneDnssecConfigPtrOutput) ElementType

func (ManagedZoneDnssecConfigPtrOutput) Kind

Identifies what kind of resource this is

func (ManagedZoneDnssecConfigPtrOutput) NonExistence

Specifies the mechanism used to provide authenticated denial-of-existence responses. nonExistence can only be updated when the state is `off`. Possible values are: `nsec`, `nsec3`.

func (ManagedZoneDnssecConfigPtrOutput) State

Specifies whether DNSSEC is enabled, and what mode it is in Possible values are: `off`, `on`, `transfer`.

func (ManagedZoneDnssecConfigPtrOutput) ToManagedZoneDnssecConfigPtrOutput

func (o ManagedZoneDnssecConfigPtrOutput) ToManagedZoneDnssecConfigPtrOutput() ManagedZoneDnssecConfigPtrOutput

func (ManagedZoneDnssecConfigPtrOutput) ToManagedZoneDnssecConfigPtrOutputWithContext

func (o ManagedZoneDnssecConfigPtrOutput) ToManagedZoneDnssecConfigPtrOutputWithContext(ctx context.Context) ManagedZoneDnssecConfigPtrOutput

func (ManagedZoneDnssecConfigPtrOutput) ToOutput added in v6.65.1

type ManagedZoneForwardingConfig

type ManagedZoneForwardingConfig struct {
	// List of target name servers to forward to. Cloud DNS will
	// select the best available name server if more than
	// one target is given.
	// Structure is documented below.
	TargetNameServers []ManagedZoneForwardingConfigTargetNameServer `pulumi:"targetNameServers"`
}

type ManagedZoneForwardingConfigArgs

type ManagedZoneForwardingConfigArgs struct {
	// List of target name servers to forward to. Cloud DNS will
	// select the best available name server if more than
	// one target is given.
	// Structure is documented below.
	TargetNameServers ManagedZoneForwardingConfigTargetNameServerArrayInput `pulumi:"targetNameServers"`
}

func (ManagedZoneForwardingConfigArgs) ElementType

func (ManagedZoneForwardingConfigArgs) ToManagedZoneForwardingConfigOutput

func (i ManagedZoneForwardingConfigArgs) ToManagedZoneForwardingConfigOutput() ManagedZoneForwardingConfigOutput

func (ManagedZoneForwardingConfigArgs) ToManagedZoneForwardingConfigOutputWithContext

func (i ManagedZoneForwardingConfigArgs) ToManagedZoneForwardingConfigOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigOutput

func (ManagedZoneForwardingConfigArgs) ToManagedZoneForwardingConfigPtrOutput

func (i ManagedZoneForwardingConfigArgs) ToManagedZoneForwardingConfigPtrOutput() ManagedZoneForwardingConfigPtrOutput

func (ManagedZoneForwardingConfigArgs) ToManagedZoneForwardingConfigPtrOutputWithContext

func (i ManagedZoneForwardingConfigArgs) ToManagedZoneForwardingConfigPtrOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigPtrOutput

func (ManagedZoneForwardingConfigArgs) ToOutput added in v6.65.1

type ManagedZoneForwardingConfigInput

type ManagedZoneForwardingConfigInput interface {
	pulumi.Input

	ToManagedZoneForwardingConfigOutput() ManagedZoneForwardingConfigOutput
	ToManagedZoneForwardingConfigOutputWithContext(context.Context) ManagedZoneForwardingConfigOutput
}

ManagedZoneForwardingConfigInput is an input type that accepts ManagedZoneForwardingConfigArgs and ManagedZoneForwardingConfigOutput values. You can construct a concrete instance of `ManagedZoneForwardingConfigInput` via:

ManagedZoneForwardingConfigArgs{...}

type ManagedZoneForwardingConfigOutput

type ManagedZoneForwardingConfigOutput struct{ *pulumi.OutputState }

func (ManagedZoneForwardingConfigOutput) ElementType

func (ManagedZoneForwardingConfigOutput) TargetNameServers

List of target name servers to forward to. Cloud DNS will select the best available name server if more than one target is given. Structure is documented below.

func (ManagedZoneForwardingConfigOutput) ToManagedZoneForwardingConfigOutput

func (o ManagedZoneForwardingConfigOutput) ToManagedZoneForwardingConfigOutput() ManagedZoneForwardingConfigOutput

func (ManagedZoneForwardingConfigOutput) ToManagedZoneForwardingConfigOutputWithContext

func (o ManagedZoneForwardingConfigOutput) ToManagedZoneForwardingConfigOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigOutput

func (ManagedZoneForwardingConfigOutput) ToManagedZoneForwardingConfigPtrOutput

func (o ManagedZoneForwardingConfigOutput) ToManagedZoneForwardingConfigPtrOutput() ManagedZoneForwardingConfigPtrOutput

func (ManagedZoneForwardingConfigOutput) ToManagedZoneForwardingConfigPtrOutputWithContext

func (o ManagedZoneForwardingConfigOutput) ToManagedZoneForwardingConfigPtrOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigPtrOutput

func (ManagedZoneForwardingConfigOutput) ToOutput added in v6.65.1

type ManagedZoneForwardingConfigPtrInput

type ManagedZoneForwardingConfigPtrInput interface {
	pulumi.Input

	ToManagedZoneForwardingConfigPtrOutput() ManagedZoneForwardingConfigPtrOutput
	ToManagedZoneForwardingConfigPtrOutputWithContext(context.Context) ManagedZoneForwardingConfigPtrOutput
}

ManagedZoneForwardingConfigPtrInput is an input type that accepts ManagedZoneForwardingConfigArgs, ManagedZoneForwardingConfigPtr and ManagedZoneForwardingConfigPtrOutput values. You can construct a concrete instance of `ManagedZoneForwardingConfigPtrInput` via:

        ManagedZoneForwardingConfigArgs{...}

or:

        nil

type ManagedZoneForwardingConfigPtrOutput

type ManagedZoneForwardingConfigPtrOutput struct{ *pulumi.OutputState }

func (ManagedZoneForwardingConfigPtrOutput) Elem

func (ManagedZoneForwardingConfigPtrOutput) ElementType

func (ManagedZoneForwardingConfigPtrOutput) TargetNameServers

List of target name servers to forward to. Cloud DNS will select the best available name server if more than one target is given. Structure is documented below.

func (ManagedZoneForwardingConfigPtrOutput) ToManagedZoneForwardingConfigPtrOutput

func (o ManagedZoneForwardingConfigPtrOutput) ToManagedZoneForwardingConfigPtrOutput() ManagedZoneForwardingConfigPtrOutput

func (ManagedZoneForwardingConfigPtrOutput) ToManagedZoneForwardingConfigPtrOutputWithContext

func (o ManagedZoneForwardingConfigPtrOutput) ToManagedZoneForwardingConfigPtrOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigPtrOutput

func (ManagedZoneForwardingConfigPtrOutput) ToOutput added in v6.65.1

type ManagedZoneForwardingConfigTargetNameServer

type ManagedZoneForwardingConfigTargetNameServer struct {
	// Forwarding path for this TargetNameServer. If unset or `default` Cloud DNS will make forwarding
	// decision based on address ranges, i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go
	// to the Internet. When set to `private`, Cloud DNS will always send queries through VPC for this target
	// Possible values are: `default`, `private`.
	ForwardingPath *string `pulumi:"forwardingPath"`
	// IPv4 address of a target name server.
	Ipv4Address string `pulumi:"ipv4Address"`
}

type ManagedZoneForwardingConfigTargetNameServerArgs

type ManagedZoneForwardingConfigTargetNameServerArgs struct {
	// Forwarding path for this TargetNameServer. If unset or `default` Cloud DNS will make forwarding
	// decision based on address ranges, i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go
	// to the Internet. When set to `private`, Cloud DNS will always send queries through VPC for this target
	// Possible values are: `default`, `private`.
	ForwardingPath pulumi.StringPtrInput `pulumi:"forwardingPath"`
	// IPv4 address of a target name server.
	Ipv4Address pulumi.StringInput `pulumi:"ipv4Address"`
}

func (ManagedZoneForwardingConfigTargetNameServerArgs) ElementType

func (ManagedZoneForwardingConfigTargetNameServerArgs) ToManagedZoneForwardingConfigTargetNameServerOutput

func (i ManagedZoneForwardingConfigTargetNameServerArgs) ToManagedZoneForwardingConfigTargetNameServerOutput() ManagedZoneForwardingConfigTargetNameServerOutput

func (ManagedZoneForwardingConfigTargetNameServerArgs) ToManagedZoneForwardingConfigTargetNameServerOutputWithContext

func (i ManagedZoneForwardingConfigTargetNameServerArgs) ToManagedZoneForwardingConfigTargetNameServerOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigTargetNameServerOutput

func (ManagedZoneForwardingConfigTargetNameServerArgs) ToOutput added in v6.65.1

type ManagedZoneForwardingConfigTargetNameServerArray

type ManagedZoneForwardingConfigTargetNameServerArray []ManagedZoneForwardingConfigTargetNameServerInput

func (ManagedZoneForwardingConfigTargetNameServerArray) ElementType

func (ManagedZoneForwardingConfigTargetNameServerArray) ToManagedZoneForwardingConfigTargetNameServerArrayOutput

func (i ManagedZoneForwardingConfigTargetNameServerArray) ToManagedZoneForwardingConfigTargetNameServerArrayOutput() ManagedZoneForwardingConfigTargetNameServerArrayOutput

func (ManagedZoneForwardingConfigTargetNameServerArray) ToManagedZoneForwardingConfigTargetNameServerArrayOutputWithContext

func (i ManagedZoneForwardingConfigTargetNameServerArray) ToManagedZoneForwardingConfigTargetNameServerArrayOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigTargetNameServerArrayOutput

func (ManagedZoneForwardingConfigTargetNameServerArray) ToOutput added in v6.65.1

type ManagedZoneForwardingConfigTargetNameServerArrayInput

type ManagedZoneForwardingConfigTargetNameServerArrayInput interface {
	pulumi.Input

	ToManagedZoneForwardingConfigTargetNameServerArrayOutput() ManagedZoneForwardingConfigTargetNameServerArrayOutput
	ToManagedZoneForwardingConfigTargetNameServerArrayOutputWithContext(context.Context) ManagedZoneForwardingConfigTargetNameServerArrayOutput
}

ManagedZoneForwardingConfigTargetNameServerArrayInput is an input type that accepts ManagedZoneForwardingConfigTargetNameServerArray and ManagedZoneForwardingConfigTargetNameServerArrayOutput values. You can construct a concrete instance of `ManagedZoneForwardingConfigTargetNameServerArrayInput` via:

ManagedZoneForwardingConfigTargetNameServerArray{ ManagedZoneForwardingConfigTargetNameServerArgs{...} }

type ManagedZoneForwardingConfigTargetNameServerArrayOutput

type ManagedZoneForwardingConfigTargetNameServerArrayOutput struct{ *pulumi.OutputState }

func (ManagedZoneForwardingConfigTargetNameServerArrayOutput) ElementType

func (ManagedZoneForwardingConfigTargetNameServerArrayOutput) Index

func (ManagedZoneForwardingConfigTargetNameServerArrayOutput) ToManagedZoneForwardingConfigTargetNameServerArrayOutput

func (ManagedZoneForwardingConfigTargetNameServerArrayOutput) ToManagedZoneForwardingConfigTargetNameServerArrayOutputWithContext

func (o ManagedZoneForwardingConfigTargetNameServerArrayOutput) ToManagedZoneForwardingConfigTargetNameServerArrayOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigTargetNameServerArrayOutput

func (ManagedZoneForwardingConfigTargetNameServerArrayOutput) ToOutput added in v6.65.1

type ManagedZoneForwardingConfigTargetNameServerInput

type ManagedZoneForwardingConfigTargetNameServerInput interface {
	pulumi.Input

	ToManagedZoneForwardingConfigTargetNameServerOutput() ManagedZoneForwardingConfigTargetNameServerOutput
	ToManagedZoneForwardingConfigTargetNameServerOutputWithContext(context.Context) ManagedZoneForwardingConfigTargetNameServerOutput
}

ManagedZoneForwardingConfigTargetNameServerInput is an input type that accepts ManagedZoneForwardingConfigTargetNameServerArgs and ManagedZoneForwardingConfigTargetNameServerOutput values. You can construct a concrete instance of `ManagedZoneForwardingConfigTargetNameServerInput` via:

ManagedZoneForwardingConfigTargetNameServerArgs{...}

type ManagedZoneForwardingConfigTargetNameServerOutput

type ManagedZoneForwardingConfigTargetNameServerOutput struct{ *pulumi.OutputState }

func (ManagedZoneForwardingConfigTargetNameServerOutput) ElementType

func (ManagedZoneForwardingConfigTargetNameServerOutput) ForwardingPath

Forwarding path for this TargetNameServer. If unset or `default` Cloud DNS will make forwarding decision based on address ranges, i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the Internet. When set to `private`, Cloud DNS will always send queries through VPC for this target Possible values are: `default`, `private`.

func (ManagedZoneForwardingConfigTargetNameServerOutput) Ipv4Address

IPv4 address of a target name server.

func (ManagedZoneForwardingConfigTargetNameServerOutput) ToManagedZoneForwardingConfigTargetNameServerOutput

func (o ManagedZoneForwardingConfigTargetNameServerOutput) ToManagedZoneForwardingConfigTargetNameServerOutput() ManagedZoneForwardingConfigTargetNameServerOutput

func (ManagedZoneForwardingConfigTargetNameServerOutput) ToManagedZoneForwardingConfigTargetNameServerOutputWithContext

func (o ManagedZoneForwardingConfigTargetNameServerOutput) ToManagedZoneForwardingConfigTargetNameServerOutputWithContext(ctx context.Context) ManagedZoneForwardingConfigTargetNameServerOutput

func (ManagedZoneForwardingConfigTargetNameServerOutput) ToOutput added in v6.65.1

type ManagedZoneInput

type ManagedZoneInput interface {
	pulumi.Input

	ToManagedZoneOutput() ManagedZoneOutput
	ToManagedZoneOutputWithContext(ctx context.Context) ManagedZoneOutput
}

type ManagedZoneMap

type ManagedZoneMap map[string]ManagedZoneInput

func (ManagedZoneMap) ElementType

func (ManagedZoneMap) ElementType() reflect.Type

func (ManagedZoneMap) ToManagedZoneMapOutput

func (i ManagedZoneMap) ToManagedZoneMapOutput() ManagedZoneMapOutput

func (ManagedZoneMap) ToManagedZoneMapOutputWithContext

func (i ManagedZoneMap) ToManagedZoneMapOutputWithContext(ctx context.Context) ManagedZoneMapOutput

func (ManagedZoneMap) ToOutput added in v6.65.1

type ManagedZoneMapInput

type ManagedZoneMapInput interface {
	pulumi.Input

	ToManagedZoneMapOutput() ManagedZoneMapOutput
	ToManagedZoneMapOutputWithContext(context.Context) ManagedZoneMapOutput
}

ManagedZoneMapInput is an input type that accepts ManagedZoneMap and ManagedZoneMapOutput values. You can construct a concrete instance of `ManagedZoneMapInput` via:

ManagedZoneMap{ "key": ManagedZoneArgs{...} }

type ManagedZoneMapOutput

type ManagedZoneMapOutput struct{ *pulumi.OutputState }

func (ManagedZoneMapOutput) ElementType

func (ManagedZoneMapOutput) ElementType() reflect.Type

func (ManagedZoneMapOutput) MapIndex

func (ManagedZoneMapOutput) ToManagedZoneMapOutput

func (o ManagedZoneMapOutput) ToManagedZoneMapOutput() ManagedZoneMapOutput

func (ManagedZoneMapOutput) ToManagedZoneMapOutputWithContext

func (o ManagedZoneMapOutput) ToManagedZoneMapOutputWithContext(ctx context.Context) ManagedZoneMapOutput

func (ManagedZoneMapOutput) ToOutput added in v6.65.1

type ManagedZoneOutput

type ManagedZoneOutput struct{ *pulumi.OutputState }

func (ManagedZoneOutput) CloudLoggingConfig added in v6.41.0

Cloud logging configuration Structure is documented below.

func (ManagedZoneOutput) CreationTime added in v6.28.0

func (o ManagedZoneOutput) CreationTime() pulumi.StringOutput

The time that this resource was created on the server. This is in RFC3339 text format.

func (ManagedZoneOutput) Description added in v6.23.0

func (o ManagedZoneOutput) Description() pulumi.StringOutput

A textual description field. Defaults to 'Managed by Pulumi'.

func (ManagedZoneOutput) DnsName added in v6.23.0

The DNS name of this managed zone, for instance "example.com.".

func (ManagedZoneOutput) DnssecConfig added in v6.23.0

DNSSEC configuration Structure is documented below.

func (ManagedZoneOutput) ElementType

func (ManagedZoneOutput) ElementType() reflect.Type

func (ManagedZoneOutput) ForceDestroy added in v6.23.0

func (o ManagedZoneOutput) ForceDestroy() pulumi.BoolPtrOutput

Set this true to delete all records in the zone.

func (ManagedZoneOutput) ForwardingConfig added in v6.23.0

The presence for this field indicates that outbound forwarding is enabled for this zone. The value of this field contains the set of destinations to forward to. Structure is documented below.

func (ManagedZoneOutput) Labels added in v6.23.0

A set of key/value label pairs to assign to this ManagedZone.

func (ManagedZoneOutput) ManagedZoneId added in v6.28.0

func (o ManagedZoneOutput) ManagedZoneId() pulumi.IntOutput

Unique identifier for the resource; defined by the server.

func (ManagedZoneOutput) Name added in v6.23.0

User assigned name for this resource. Must be unique within the project.

***

func (ManagedZoneOutput) NameServers added in v6.23.0

func (o ManagedZoneOutput) NameServers() pulumi.StringArrayOutput

Delegate your managedZone to these virtual name servers; defined by the server

func (ManagedZoneOutput) PeeringConfig added in v6.23.0

The presence of this field indicates that DNS Peering is enabled for this zone. The value of this field contains the network to peer with. Structure is documented below.

func (ManagedZoneOutput) PrivateVisibilityConfig added in v6.23.0

For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. At least one of `gkeClusters` or `networks` must be specified. Structure is documented below.

func (ManagedZoneOutput) Project added in v6.23.0

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

func (ManagedZoneOutput) ReverseLookup added in v6.23.0

func (o ManagedZoneOutput) ReverseLookup() pulumi.BoolPtrOutput

Specifies if this is a managed reverse lookup zone. If true, Cloud DNS will resolve reverse lookup queries using automatically configured records for VPC resources. This only applies to networks listed under `privateVisibilityConfig`.

func (ManagedZoneOutput) ServiceDirectoryConfig added in v6.23.0

The presence of this field indicates that this zone is backed by Service Directory. The value of this field contains information related to the namespace associated with the zone. Structure is documented below.

func (ManagedZoneOutput) ToManagedZoneOutput

func (o ManagedZoneOutput) ToManagedZoneOutput() ManagedZoneOutput

func (ManagedZoneOutput) ToManagedZoneOutputWithContext

func (o ManagedZoneOutput) ToManagedZoneOutputWithContext(ctx context.Context) ManagedZoneOutput

func (ManagedZoneOutput) ToOutput added in v6.65.1

func (ManagedZoneOutput) Visibility added in v6.23.0

func (o ManagedZoneOutput) Visibility() pulumi.StringPtrOutput

The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. Default value is `public`. Possible values are: `private`, `public`.

type ManagedZonePeeringConfig

type ManagedZonePeeringConfig struct {
	// The network with which to peer.
	// Structure is documented below.
	TargetNetwork ManagedZonePeeringConfigTargetNetwork `pulumi:"targetNetwork"`
}

type ManagedZonePeeringConfigArgs

type ManagedZonePeeringConfigArgs struct {
	// The network with which to peer.
	// Structure is documented below.
	TargetNetwork ManagedZonePeeringConfigTargetNetworkInput `pulumi:"targetNetwork"`
}

func (ManagedZonePeeringConfigArgs) ElementType

func (ManagedZonePeeringConfigArgs) ToManagedZonePeeringConfigOutput

func (i ManagedZonePeeringConfigArgs) ToManagedZonePeeringConfigOutput() ManagedZonePeeringConfigOutput

func (ManagedZonePeeringConfigArgs) ToManagedZonePeeringConfigOutputWithContext

func (i ManagedZonePeeringConfigArgs) ToManagedZonePeeringConfigOutputWithContext(ctx context.Context) ManagedZonePeeringConfigOutput

func (ManagedZonePeeringConfigArgs) ToManagedZonePeeringConfigPtrOutput

func (i ManagedZonePeeringConfigArgs) ToManagedZonePeeringConfigPtrOutput() ManagedZonePeeringConfigPtrOutput

func (ManagedZonePeeringConfigArgs) ToManagedZonePeeringConfigPtrOutputWithContext

func (i ManagedZonePeeringConfigArgs) ToManagedZonePeeringConfigPtrOutputWithContext(ctx context.Context) ManagedZonePeeringConfigPtrOutput

func (ManagedZonePeeringConfigArgs) ToOutput added in v6.65.1

type ManagedZonePeeringConfigInput

type ManagedZonePeeringConfigInput interface {
	pulumi.Input

	ToManagedZonePeeringConfigOutput() ManagedZonePeeringConfigOutput
	ToManagedZonePeeringConfigOutputWithContext(context.Context) ManagedZonePeeringConfigOutput
}

ManagedZonePeeringConfigInput is an input type that accepts ManagedZonePeeringConfigArgs and ManagedZonePeeringConfigOutput values. You can construct a concrete instance of `ManagedZonePeeringConfigInput` via:

ManagedZonePeeringConfigArgs{...}

type ManagedZonePeeringConfigOutput

type ManagedZonePeeringConfigOutput struct{ *pulumi.OutputState }

func (ManagedZonePeeringConfigOutput) ElementType

func (ManagedZonePeeringConfigOutput) TargetNetwork

The network with which to peer. Structure is documented below.

func (ManagedZonePeeringConfigOutput) ToManagedZonePeeringConfigOutput

func (o ManagedZonePeeringConfigOutput) ToManagedZonePeeringConfigOutput() ManagedZonePeeringConfigOutput

func (ManagedZonePeeringConfigOutput) ToManagedZonePeeringConfigOutputWithContext

func (o ManagedZonePeeringConfigOutput) ToManagedZonePeeringConfigOutputWithContext(ctx context.Context) ManagedZonePeeringConfigOutput

func (ManagedZonePeeringConfigOutput) ToManagedZonePeeringConfigPtrOutput

func (o ManagedZonePeeringConfigOutput) ToManagedZonePeeringConfigPtrOutput() ManagedZonePeeringConfigPtrOutput

func (ManagedZonePeeringConfigOutput) ToManagedZonePeeringConfigPtrOutputWithContext

func (o ManagedZonePeeringConfigOutput) ToManagedZonePeeringConfigPtrOutputWithContext(ctx context.Context) ManagedZonePeeringConfigPtrOutput

func (ManagedZonePeeringConfigOutput) ToOutput added in v6.65.1

type ManagedZonePeeringConfigPtrInput

type ManagedZonePeeringConfigPtrInput interface {
	pulumi.Input

	ToManagedZonePeeringConfigPtrOutput() ManagedZonePeeringConfigPtrOutput
	ToManagedZonePeeringConfigPtrOutputWithContext(context.Context) ManagedZonePeeringConfigPtrOutput
}

ManagedZonePeeringConfigPtrInput is an input type that accepts ManagedZonePeeringConfigArgs, ManagedZonePeeringConfigPtr and ManagedZonePeeringConfigPtrOutput values. You can construct a concrete instance of `ManagedZonePeeringConfigPtrInput` via:

        ManagedZonePeeringConfigArgs{...}

or:

        nil

type ManagedZonePeeringConfigPtrOutput

type ManagedZonePeeringConfigPtrOutput struct{ *pulumi.OutputState }

func (ManagedZonePeeringConfigPtrOutput) Elem

func (ManagedZonePeeringConfigPtrOutput) ElementType

func (ManagedZonePeeringConfigPtrOutput) TargetNetwork

The network with which to peer. Structure is documented below.

func (ManagedZonePeeringConfigPtrOutput) ToManagedZonePeeringConfigPtrOutput

func (o ManagedZonePeeringConfigPtrOutput) ToManagedZonePeeringConfigPtrOutput() ManagedZonePeeringConfigPtrOutput

func (ManagedZonePeeringConfigPtrOutput) ToManagedZonePeeringConfigPtrOutputWithContext

func (o ManagedZonePeeringConfigPtrOutput) ToManagedZonePeeringConfigPtrOutputWithContext(ctx context.Context) ManagedZonePeeringConfigPtrOutput

func (ManagedZonePeeringConfigPtrOutput) ToOutput added in v6.65.1

type ManagedZonePeeringConfigTargetNetwork

type ManagedZonePeeringConfigTargetNetwork struct {
	// The id or fully qualified URL of the VPC network to forward queries to.
	// This should be formatted like `projects/{project}/global/networks/{network}` or
	// `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
	NetworkUrl string `pulumi:"networkUrl"`
}

type ManagedZonePeeringConfigTargetNetworkArgs

type ManagedZonePeeringConfigTargetNetworkArgs struct {
	// The id or fully qualified URL of the VPC network to forward queries to.
	// This should be formatted like `projects/{project}/global/networks/{network}` or
	// `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
	NetworkUrl pulumi.StringInput `pulumi:"networkUrl"`
}

func (ManagedZonePeeringConfigTargetNetworkArgs) ElementType

func (ManagedZonePeeringConfigTargetNetworkArgs) ToManagedZonePeeringConfigTargetNetworkOutput

func (i ManagedZonePeeringConfigTargetNetworkArgs) ToManagedZonePeeringConfigTargetNetworkOutput() ManagedZonePeeringConfigTargetNetworkOutput

func (ManagedZonePeeringConfigTargetNetworkArgs) ToManagedZonePeeringConfigTargetNetworkOutputWithContext

func (i ManagedZonePeeringConfigTargetNetworkArgs) ToManagedZonePeeringConfigTargetNetworkOutputWithContext(ctx context.Context) ManagedZonePeeringConfigTargetNetworkOutput

func (ManagedZonePeeringConfigTargetNetworkArgs) ToManagedZonePeeringConfigTargetNetworkPtrOutput

func (i ManagedZonePeeringConfigTargetNetworkArgs) ToManagedZonePeeringConfigTargetNetworkPtrOutput() ManagedZonePeeringConfigTargetNetworkPtrOutput

func (ManagedZonePeeringConfigTargetNetworkArgs) ToManagedZonePeeringConfigTargetNetworkPtrOutputWithContext

func (i ManagedZonePeeringConfigTargetNetworkArgs) ToManagedZonePeeringConfigTargetNetworkPtrOutputWithContext(ctx context.Context) ManagedZonePeeringConfigTargetNetworkPtrOutput

func (ManagedZonePeeringConfigTargetNetworkArgs) ToOutput added in v6.65.1

type ManagedZonePeeringConfigTargetNetworkInput

type ManagedZonePeeringConfigTargetNetworkInput interface {
	pulumi.Input

	ToManagedZonePeeringConfigTargetNetworkOutput() ManagedZonePeeringConfigTargetNetworkOutput
	ToManagedZonePeeringConfigTargetNetworkOutputWithContext(context.Context) ManagedZonePeeringConfigTargetNetworkOutput
}

ManagedZonePeeringConfigTargetNetworkInput is an input type that accepts ManagedZonePeeringConfigTargetNetworkArgs and ManagedZonePeeringConfigTargetNetworkOutput values. You can construct a concrete instance of `ManagedZonePeeringConfigTargetNetworkInput` via:

ManagedZonePeeringConfigTargetNetworkArgs{...}

type ManagedZonePeeringConfigTargetNetworkOutput

type ManagedZonePeeringConfigTargetNetworkOutput struct{ *pulumi.OutputState }

func (ManagedZonePeeringConfigTargetNetworkOutput) ElementType

func (ManagedZonePeeringConfigTargetNetworkOutput) NetworkUrl

The id or fully qualified URL of the VPC network to forward queries to. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`

func (ManagedZonePeeringConfigTargetNetworkOutput) ToManagedZonePeeringConfigTargetNetworkOutput

func (o ManagedZonePeeringConfigTargetNetworkOutput) ToManagedZonePeeringConfigTargetNetworkOutput() ManagedZonePeeringConfigTargetNetworkOutput

func (ManagedZonePeeringConfigTargetNetworkOutput) ToManagedZonePeeringConfigTargetNetworkOutputWithContext

func (o ManagedZonePeeringConfigTargetNetworkOutput) ToManagedZonePeeringConfigTargetNetworkOutputWithContext(ctx context.Context) ManagedZonePeeringConfigTargetNetworkOutput

func (ManagedZonePeeringConfigTargetNetworkOutput) ToManagedZonePeeringConfigTargetNetworkPtrOutput

func (o ManagedZonePeeringConfigTargetNetworkOutput) ToManagedZonePeeringConfigTargetNetworkPtrOutput() ManagedZonePeeringConfigTargetNetworkPtrOutput

func (ManagedZonePeeringConfigTargetNetworkOutput) ToManagedZonePeeringConfigTargetNetworkPtrOutputWithContext

func (o ManagedZonePeeringConfigTargetNetworkOutput) ToManagedZonePeeringConfigTargetNetworkPtrOutputWithContext(ctx context.Context) ManagedZonePeeringConfigTargetNetworkPtrOutput

func (ManagedZonePeeringConfigTargetNetworkOutput) ToOutput added in v6.65.1

type ManagedZonePeeringConfigTargetNetworkPtrInput

type ManagedZonePeeringConfigTargetNetworkPtrInput interface {
	pulumi.Input

	ToManagedZonePeeringConfigTargetNetworkPtrOutput() ManagedZonePeeringConfigTargetNetworkPtrOutput
	ToManagedZonePeeringConfigTargetNetworkPtrOutputWithContext(context.Context) ManagedZonePeeringConfigTargetNetworkPtrOutput
}

ManagedZonePeeringConfigTargetNetworkPtrInput is an input type that accepts ManagedZonePeeringConfigTargetNetworkArgs, ManagedZonePeeringConfigTargetNetworkPtr and ManagedZonePeeringConfigTargetNetworkPtrOutput values. You can construct a concrete instance of `ManagedZonePeeringConfigTargetNetworkPtrInput` via:

        ManagedZonePeeringConfigTargetNetworkArgs{...}

or:

        nil

type ManagedZonePeeringConfigTargetNetworkPtrOutput

type ManagedZonePeeringConfigTargetNetworkPtrOutput struct{ *pulumi.OutputState }

func (ManagedZonePeeringConfigTargetNetworkPtrOutput) Elem

func (ManagedZonePeeringConfigTargetNetworkPtrOutput) ElementType

func (ManagedZonePeeringConfigTargetNetworkPtrOutput) NetworkUrl

The id or fully qualified URL of the VPC network to forward queries to. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`

func (ManagedZonePeeringConfigTargetNetworkPtrOutput) ToManagedZonePeeringConfigTargetNetworkPtrOutput

func (o ManagedZonePeeringConfigTargetNetworkPtrOutput) ToManagedZonePeeringConfigTargetNetworkPtrOutput() ManagedZonePeeringConfigTargetNetworkPtrOutput

func (ManagedZonePeeringConfigTargetNetworkPtrOutput) ToManagedZonePeeringConfigTargetNetworkPtrOutputWithContext

func (o ManagedZonePeeringConfigTargetNetworkPtrOutput) ToManagedZonePeeringConfigTargetNetworkPtrOutputWithContext(ctx context.Context) ManagedZonePeeringConfigTargetNetworkPtrOutput

func (ManagedZonePeeringConfigTargetNetworkPtrOutput) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfig

type ManagedZonePrivateVisibilityConfig struct {
	// The list of Google Kubernetes Engine clusters that can see this zone.
	// Structure is documented below.
	GkeClusters []ManagedZonePrivateVisibilityConfigGkeCluster `pulumi:"gkeClusters"`
	Networks    []ManagedZonePrivateVisibilityConfigNetwork    `pulumi:"networks"`
}

type ManagedZonePrivateVisibilityConfigArgs

type ManagedZonePrivateVisibilityConfigArgs struct {
	// The list of Google Kubernetes Engine clusters that can see this zone.
	// Structure is documented below.
	GkeClusters ManagedZonePrivateVisibilityConfigGkeClusterArrayInput `pulumi:"gkeClusters"`
	Networks    ManagedZonePrivateVisibilityConfigNetworkArrayInput    `pulumi:"networks"`
}

func (ManagedZonePrivateVisibilityConfigArgs) ElementType

func (ManagedZonePrivateVisibilityConfigArgs) ToManagedZonePrivateVisibilityConfigOutput

func (i ManagedZonePrivateVisibilityConfigArgs) ToManagedZonePrivateVisibilityConfigOutput() ManagedZonePrivateVisibilityConfigOutput

func (ManagedZonePrivateVisibilityConfigArgs) ToManagedZonePrivateVisibilityConfigOutputWithContext

func (i ManagedZonePrivateVisibilityConfigArgs) ToManagedZonePrivateVisibilityConfigOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigOutput

func (ManagedZonePrivateVisibilityConfigArgs) ToManagedZonePrivateVisibilityConfigPtrOutput

func (i ManagedZonePrivateVisibilityConfigArgs) ToManagedZonePrivateVisibilityConfigPtrOutput() ManagedZonePrivateVisibilityConfigPtrOutput

func (ManagedZonePrivateVisibilityConfigArgs) ToManagedZonePrivateVisibilityConfigPtrOutputWithContext

func (i ManagedZonePrivateVisibilityConfigArgs) ToManagedZonePrivateVisibilityConfigPtrOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigPtrOutput

func (ManagedZonePrivateVisibilityConfigArgs) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigGkeCluster added in v6.44.0

type ManagedZonePrivateVisibilityConfigGkeCluster struct {
	// The resource name of the cluster to bind this ManagedZone to.
	// This should be specified in the format like
	// `projects/*/locations/*/clusters/*`
	GkeClusterName string `pulumi:"gkeClusterName"`
}

type ManagedZonePrivateVisibilityConfigGkeClusterArgs added in v6.44.0

type ManagedZonePrivateVisibilityConfigGkeClusterArgs struct {
	// The resource name of the cluster to bind this ManagedZone to.
	// This should be specified in the format like
	// `projects/*/locations/*/clusters/*`
	GkeClusterName pulumi.StringInput `pulumi:"gkeClusterName"`
}

func (ManagedZonePrivateVisibilityConfigGkeClusterArgs) ElementType added in v6.44.0

func (ManagedZonePrivateVisibilityConfigGkeClusterArgs) ToManagedZonePrivateVisibilityConfigGkeClusterOutput added in v6.44.0

func (i ManagedZonePrivateVisibilityConfigGkeClusterArgs) ToManagedZonePrivateVisibilityConfigGkeClusterOutput() ManagedZonePrivateVisibilityConfigGkeClusterOutput

func (ManagedZonePrivateVisibilityConfigGkeClusterArgs) ToManagedZonePrivateVisibilityConfigGkeClusterOutputWithContext added in v6.44.0

func (i ManagedZonePrivateVisibilityConfigGkeClusterArgs) ToManagedZonePrivateVisibilityConfigGkeClusterOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigGkeClusterOutput

func (ManagedZonePrivateVisibilityConfigGkeClusterArgs) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigGkeClusterArray added in v6.44.0

type ManagedZonePrivateVisibilityConfigGkeClusterArray []ManagedZonePrivateVisibilityConfigGkeClusterInput

func (ManagedZonePrivateVisibilityConfigGkeClusterArray) ElementType added in v6.44.0

func (ManagedZonePrivateVisibilityConfigGkeClusterArray) ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutput added in v6.44.0

func (i ManagedZonePrivateVisibilityConfigGkeClusterArray) ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutput() ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput

func (ManagedZonePrivateVisibilityConfigGkeClusterArray) ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutputWithContext added in v6.44.0

func (i ManagedZonePrivateVisibilityConfigGkeClusterArray) ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput

func (ManagedZonePrivateVisibilityConfigGkeClusterArray) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigGkeClusterArrayInput added in v6.44.0

type ManagedZonePrivateVisibilityConfigGkeClusterArrayInput interface {
	pulumi.Input

	ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutput() ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput
	ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutputWithContext(context.Context) ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput
}

ManagedZonePrivateVisibilityConfigGkeClusterArrayInput is an input type that accepts ManagedZonePrivateVisibilityConfigGkeClusterArray and ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput values. You can construct a concrete instance of `ManagedZonePrivateVisibilityConfigGkeClusterArrayInput` via:

ManagedZonePrivateVisibilityConfigGkeClusterArray{ ManagedZonePrivateVisibilityConfigGkeClusterArgs{...} }

type ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput added in v6.44.0

type ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput struct{ *pulumi.OutputState }

func (ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput) ElementType added in v6.44.0

func (ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput) Index added in v6.44.0

func (ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput) ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutput added in v6.44.0

func (ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput) ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutputWithContext added in v6.44.0

func (o ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput) ToManagedZonePrivateVisibilityConfigGkeClusterArrayOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput

func (ManagedZonePrivateVisibilityConfigGkeClusterArrayOutput) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigGkeClusterInput added in v6.44.0

type ManagedZonePrivateVisibilityConfigGkeClusterInput interface {
	pulumi.Input

	ToManagedZonePrivateVisibilityConfigGkeClusterOutput() ManagedZonePrivateVisibilityConfigGkeClusterOutput
	ToManagedZonePrivateVisibilityConfigGkeClusterOutputWithContext(context.Context) ManagedZonePrivateVisibilityConfigGkeClusterOutput
}

ManagedZonePrivateVisibilityConfigGkeClusterInput is an input type that accepts ManagedZonePrivateVisibilityConfigGkeClusterArgs and ManagedZonePrivateVisibilityConfigGkeClusterOutput values. You can construct a concrete instance of `ManagedZonePrivateVisibilityConfigGkeClusterInput` via:

ManagedZonePrivateVisibilityConfigGkeClusterArgs{...}

type ManagedZonePrivateVisibilityConfigGkeClusterOutput added in v6.44.0

type ManagedZonePrivateVisibilityConfigGkeClusterOutput struct{ *pulumi.OutputState }

func (ManagedZonePrivateVisibilityConfigGkeClusterOutput) ElementType added in v6.44.0

func (ManagedZonePrivateVisibilityConfigGkeClusterOutput) GkeClusterName added in v6.44.0

The resource name of the cluster to bind this ManagedZone to. This should be specified in the format like `projects/*/locations/*/clusters/*`

func (ManagedZonePrivateVisibilityConfigGkeClusterOutput) ToManagedZonePrivateVisibilityConfigGkeClusterOutput added in v6.44.0

func (o ManagedZonePrivateVisibilityConfigGkeClusterOutput) ToManagedZonePrivateVisibilityConfigGkeClusterOutput() ManagedZonePrivateVisibilityConfigGkeClusterOutput

func (ManagedZonePrivateVisibilityConfigGkeClusterOutput) ToManagedZonePrivateVisibilityConfigGkeClusterOutputWithContext added in v6.44.0

func (o ManagedZonePrivateVisibilityConfigGkeClusterOutput) ToManagedZonePrivateVisibilityConfigGkeClusterOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigGkeClusterOutput

func (ManagedZonePrivateVisibilityConfigGkeClusterOutput) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigInput

type ManagedZonePrivateVisibilityConfigInput interface {
	pulumi.Input

	ToManagedZonePrivateVisibilityConfigOutput() ManagedZonePrivateVisibilityConfigOutput
	ToManagedZonePrivateVisibilityConfigOutputWithContext(context.Context) ManagedZonePrivateVisibilityConfigOutput
}

ManagedZonePrivateVisibilityConfigInput is an input type that accepts ManagedZonePrivateVisibilityConfigArgs and ManagedZonePrivateVisibilityConfigOutput values. You can construct a concrete instance of `ManagedZonePrivateVisibilityConfigInput` via:

ManagedZonePrivateVisibilityConfigArgs{...}

type ManagedZonePrivateVisibilityConfigNetwork

type ManagedZonePrivateVisibilityConfigNetwork struct {
	// The id or fully qualified URL of the VPC network to bind to.
	// This should be formatted like `projects/{project}/global/networks/{network}` or
	// `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
	NetworkUrl string `pulumi:"networkUrl"`
}

type ManagedZonePrivateVisibilityConfigNetworkArgs

type ManagedZonePrivateVisibilityConfigNetworkArgs struct {
	// The id or fully qualified URL of the VPC network to bind to.
	// This should be formatted like `projects/{project}/global/networks/{network}` or
	// `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
	NetworkUrl pulumi.StringInput `pulumi:"networkUrl"`
}

func (ManagedZonePrivateVisibilityConfigNetworkArgs) ElementType

func (ManagedZonePrivateVisibilityConfigNetworkArgs) ToManagedZonePrivateVisibilityConfigNetworkOutput

func (i ManagedZonePrivateVisibilityConfigNetworkArgs) ToManagedZonePrivateVisibilityConfigNetworkOutput() ManagedZonePrivateVisibilityConfigNetworkOutput

func (ManagedZonePrivateVisibilityConfigNetworkArgs) ToManagedZonePrivateVisibilityConfigNetworkOutputWithContext

func (i ManagedZonePrivateVisibilityConfigNetworkArgs) ToManagedZonePrivateVisibilityConfigNetworkOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigNetworkOutput

func (ManagedZonePrivateVisibilityConfigNetworkArgs) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigNetworkArray

type ManagedZonePrivateVisibilityConfigNetworkArray []ManagedZonePrivateVisibilityConfigNetworkInput

func (ManagedZonePrivateVisibilityConfigNetworkArray) ElementType

func (ManagedZonePrivateVisibilityConfigNetworkArray) ToManagedZonePrivateVisibilityConfigNetworkArrayOutput

func (i ManagedZonePrivateVisibilityConfigNetworkArray) ToManagedZonePrivateVisibilityConfigNetworkArrayOutput() ManagedZonePrivateVisibilityConfigNetworkArrayOutput

func (ManagedZonePrivateVisibilityConfigNetworkArray) ToManagedZonePrivateVisibilityConfigNetworkArrayOutputWithContext

func (i ManagedZonePrivateVisibilityConfigNetworkArray) ToManagedZonePrivateVisibilityConfigNetworkArrayOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigNetworkArrayOutput

func (ManagedZonePrivateVisibilityConfigNetworkArray) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigNetworkArrayInput

type ManagedZonePrivateVisibilityConfigNetworkArrayInput interface {
	pulumi.Input

	ToManagedZonePrivateVisibilityConfigNetworkArrayOutput() ManagedZonePrivateVisibilityConfigNetworkArrayOutput
	ToManagedZonePrivateVisibilityConfigNetworkArrayOutputWithContext(context.Context) ManagedZonePrivateVisibilityConfigNetworkArrayOutput
}

ManagedZonePrivateVisibilityConfigNetworkArrayInput is an input type that accepts ManagedZonePrivateVisibilityConfigNetworkArray and ManagedZonePrivateVisibilityConfigNetworkArrayOutput values. You can construct a concrete instance of `ManagedZonePrivateVisibilityConfigNetworkArrayInput` via:

ManagedZonePrivateVisibilityConfigNetworkArray{ ManagedZonePrivateVisibilityConfigNetworkArgs{...} }

type ManagedZonePrivateVisibilityConfigNetworkArrayOutput

type ManagedZonePrivateVisibilityConfigNetworkArrayOutput struct{ *pulumi.OutputState }

func (ManagedZonePrivateVisibilityConfigNetworkArrayOutput) ElementType

func (ManagedZonePrivateVisibilityConfigNetworkArrayOutput) Index

func (ManagedZonePrivateVisibilityConfigNetworkArrayOutput) ToManagedZonePrivateVisibilityConfigNetworkArrayOutput

func (ManagedZonePrivateVisibilityConfigNetworkArrayOutput) ToManagedZonePrivateVisibilityConfigNetworkArrayOutputWithContext

func (o ManagedZonePrivateVisibilityConfigNetworkArrayOutput) ToManagedZonePrivateVisibilityConfigNetworkArrayOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigNetworkArrayOutput

func (ManagedZonePrivateVisibilityConfigNetworkArrayOutput) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigNetworkInput

type ManagedZonePrivateVisibilityConfigNetworkInput interface {
	pulumi.Input

	ToManagedZonePrivateVisibilityConfigNetworkOutput() ManagedZonePrivateVisibilityConfigNetworkOutput
	ToManagedZonePrivateVisibilityConfigNetworkOutputWithContext(context.Context) ManagedZonePrivateVisibilityConfigNetworkOutput
}

ManagedZonePrivateVisibilityConfigNetworkInput is an input type that accepts ManagedZonePrivateVisibilityConfigNetworkArgs and ManagedZonePrivateVisibilityConfigNetworkOutput values. You can construct a concrete instance of `ManagedZonePrivateVisibilityConfigNetworkInput` via:

ManagedZonePrivateVisibilityConfigNetworkArgs{...}

type ManagedZonePrivateVisibilityConfigNetworkOutput

type ManagedZonePrivateVisibilityConfigNetworkOutput struct{ *pulumi.OutputState }

func (ManagedZonePrivateVisibilityConfigNetworkOutput) ElementType

func (ManagedZonePrivateVisibilityConfigNetworkOutput) NetworkUrl

The id or fully qualified URL of the VPC network to bind to. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`

func (ManagedZonePrivateVisibilityConfigNetworkOutput) ToManagedZonePrivateVisibilityConfigNetworkOutput

func (o ManagedZonePrivateVisibilityConfigNetworkOutput) ToManagedZonePrivateVisibilityConfigNetworkOutput() ManagedZonePrivateVisibilityConfigNetworkOutput

func (ManagedZonePrivateVisibilityConfigNetworkOutput) ToManagedZonePrivateVisibilityConfigNetworkOutputWithContext

func (o ManagedZonePrivateVisibilityConfigNetworkOutput) ToManagedZonePrivateVisibilityConfigNetworkOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigNetworkOutput

func (ManagedZonePrivateVisibilityConfigNetworkOutput) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigOutput

type ManagedZonePrivateVisibilityConfigOutput struct{ *pulumi.OutputState }

func (ManagedZonePrivateVisibilityConfigOutput) ElementType

func (ManagedZonePrivateVisibilityConfigOutput) GkeClusters added in v6.44.0

The list of Google Kubernetes Engine clusters that can see this zone. Structure is documented below.

func (ManagedZonePrivateVisibilityConfigOutput) Networks

func (ManagedZonePrivateVisibilityConfigOutput) ToManagedZonePrivateVisibilityConfigOutput

func (o ManagedZonePrivateVisibilityConfigOutput) ToManagedZonePrivateVisibilityConfigOutput() ManagedZonePrivateVisibilityConfigOutput

func (ManagedZonePrivateVisibilityConfigOutput) ToManagedZonePrivateVisibilityConfigOutputWithContext

func (o ManagedZonePrivateVisibilityConfigOutput) ToManagedZonePrivateVisibilityConfigOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigOutput

func (ManagedZonePrivateVisibilityConfigOutput) ToManagedZonePrivateVisibilityConfigPtrOutput

func (o ManagedZonePrivateVisibilityConfigOutput) ToManagedZonePrivateVisibilityConfigPtrOutput() ManagedZonePrivateVisibilityConfigPtrOutput

func (ManagedZonePrivateVisibilityConfigOutput) ToManagedZonePrivateVisibilityConfigPtrOutputWithContext

func (o ManagedZonePrivateVisibilityConfigOutput) ToManagedZonePrivateVisibilityConfigPtrOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigPtrOutput

func (ManagedZonePrivateVisibilityConfigOutput) ToOutput added in v6.65.1

type ManagedZonePrivateVisibilityConfigPtrInput

type ManagedZonePrivateVisibilityConfigPtrInput interface {
	pulumi.Input

	ToManagedZonePrivateVisibilityConfigPtrOutput() ManagedZonePrivateVisibilityConfigPtrOutput
	ToManagedZonePrivateVisibilityConfigPtrOutputWithContext(context.Context) ManagedZonePrivateVisibilityConfigPtrOutput
}

ManagedZonePrivateVisibilityConfigPtrInput is an input type that accepts ManagedZonePrivateVisibilityConfigArgs, ManagedZonePrivateVisibilityConfigPtr and ManagedZonePrivateVisibilityConfigPtrOutput values. You can construct a concrete instance of `ManagedZonePrivateVisibilityConfigPtrInput` via:

        ManagedZonePrivateVisibilityConfigArgs{...}

or:

        nil

type ManagedZonePrivateVisibilityConfigPtrOutput

type ManagedZonePrivateVisibilityConfigPtrOutput struct{ *pulumi.OutputState }

func (ManagedZonePrivateVisibilityConfigPtrOutput) Elem

func (ManagedZonePrivateVisibilityConfigPtrOutput) ElementType

func (ManagedZonePrivateVisibilityConfigPtrOutput) GkeClusters added in v6.44.0

The list of Google Kubernetes Engine clusters that can see this zone. Structure is documented below.

func (ManagedZonePrivateVisibilityConfigPtrOutput) Networks

func (ManagedZonePrivateVisibilityConfigPtrOutput) ToManagedZonePrivateVisibilityConfigPtrOutput

func (o ManagedZonePrivateVisibilityConfigPtrOutput) ToManagedZonePrivateVisibilityConfigPtrOutput() ManagedZonePrivateVisibilityConfigPtrOutput

func (ManagedZonePrivateVisibilityConfigPtrOutput) ToManagedZonePrivateVisibilityConfigPtrOutputWithContext

func (o ManagedZonePrivateVisibilityConfigPtrOutput) ToManagedZonePrivateVisibilityConfigPtrOutputWithContext(ctx context.Context) ManagedZonePrivateVisibilityConfigPtrOutput

func (ManagedZonePrivateVisibilityConfigPtrOutput) ToOutput added in v6.65.1

type ManagedZoneServiceDirectoryConfig

type ManagedZoneServiceDirectoryConfig struct {
	// The namespace associated with the zone.
	// Structure is documented below.
	Namespace ManagedZoneServiceDirectoryConfigNamespace `pulumi:"namespace"`
}

type ManagedZoneServiceDirectoryConfigArgs

type ManagedZoneServiceDirectoryConfigArgs struct {
	// The namespace associated with the zone.
	// Structure is documented below.
	Namespace ManagedZoneServiceDirectoryConfigNamespaceInput `pulumi:"namespace"`
}

func (ManagedZoneServiceDirectoryConfigArgs) ElementType

func (ManagedZoneServiceDirectoryConfigArgs) ToManagedZoneServiceDirectoryConfigOutput

func (i ManagedZoneServiceDirectoryConfigArgs) ToManagedZoneServiceDirectoryConfigOutput() ManagedZoneServiceDirectoryConfigOutput

func (ManagedZoneServiceDirectoryConfigArgs) ToManagedZoneServiceDirectoryConfigOutputWithContext

func (i ManagedZoneServiceDirectoryConfigArgs) ToManagedZoneServiceDirectoryConfigOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigOutput

func (ManagedZoneServiceDirectoryConfigArgs) ToManagedZoneServiceDirectoryConfigPtrOutput

func (i ManagedZoneServiceDirectoryConfigArgs) ToManagedZoneServiceDirectoryConfigPtrOutput() ManagedZoneServiceDirectoryConfigPtrOutput

func (ManagedZoneServiceDirectoryConfigArgs) ToManagedZoneServiceDirectoryConfigPtrOutputWithContext

func (i ManagedZoneServiceDirectoryConfigArgs) ToManagedZoneServiceDirectoryConfigPtrOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigPtrOutput

func (ManagedZoneServiceDirectoryConfigArgs) ToOutput added in v6.65.1

type ManagedZoneServiceDirectoryConfigInput

type ManagedZoneServiceDirectoryConfigInput interface {
	pulumi.Input

	ToManagedZoneServiceDirectoryConfigOutput() ManagedZoneServiceDirectoryConfigOutput
	ToManagedZoneServiceDirectoryConfigOutputWithContext(context.Context) ManagedZoneServiceDirectoryConfigOutput
}

ManagedZoneServiceDirectoryConfigInput is an input type that accepts ManagedZoneServiceDirectoryConfigArgs and ManagedZoneServiceDirectoryConfigOutput values. You can construct a concrete instance of `ManagedZoneServiceDirectoryConfigInput` via:

ManagedZoneServiceDirectoryConfigArgs{...}

type ManagedZoneServiceDirectoryConfigNamespace

type ManagedZoneServiceDirectoryConfigNamespace struct {
	// The fully qualified or partial URL of the service directory namespace that should be
	// associated with the zone. This should be formatted like
	// `https://servicedirectory.googleapis.com/v1/projects/{project}/locations/{location}/namespaces/{namespace_id}`
	// or simply `projects/{project}/locations/{location}/namespaces/{namespace_id}`
	// Ignored for `public` visibility zones.
	NamespaceUrl string `pulumi:"namespaceUrl"`
}

type ManagedZoneServiceDirectoryConfigNamespaceArgs

type ManagedZoneServiceDirectoryConfigNamespaceArgs struct {
	// The fully qualified or partial URL of the service directory namespace that should be
	// associated with the zone. This should be formatted like
	// `https://servicedirectory.googleapis.com/v1/projects/{project}/locations/{location}/namespaces/{namespace_id}`
	// or simply `projects/{project}/locations/{location}/namespaces/{namespace_id}`
	// Ignored for `public` visibility zones.
	NamespaceUrl pulumi.StringInput `pulumi:"namespaceUrl"`
}

func (ManagedZoneServiceDirectoryConfigNamespaceArgs) ElementType

func (ManagedZoneServiceDirectoryConfigNamespaceArgs) ToManagedZoneServiceDirectoryConfigNamespaceOutput

func (i ManagedZoneServiceDirectoryConfigNamespaceArgs) ToManagedZoneServiceDirectoryConfigNamespaceOutput() ManagedZoneServiceDirectoryConfigNamespaceOutput

func (ManagedZoneServiceDirectoryConfigNamespaceArgs) ToManagedZoneServiceDirectoryConfigNamespaceOutputWithContext

func (i ManagedZoneServiceDirectoryConfigNamespaceArgs) ToManagedZoneServiceDirectoryConfigNamespaceOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigNamespaceOutput

func (ManagedZoneServiceDirectoryConfigNamespaceArgs) ToManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (i ManagedZoneServiceDirectoryConfigNamespaceArgs) ToManagedZoneServiceDirectoryConfigNamespacePtrOutput() ManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (ManagedZoneServiceDirectoryConfigNamespaceArgs) ToManagedZoneServiceDirectoryConfigNamespacePtrOutputWithContext

func (i ManagedZoneServiceDirectoryConfigNamespaceArgs) ToManagedZoneServiceDirectoryConfigNamespacePtrOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (ManagedZoneServiceDirectoryConfigNamespaceArgs) ToOutput added in v6.65.1

type ManagedZoneServiceDirectoryConfigNamespaceInput

type ManagedZoneServiceDirectoryConfigNamespaceInput interface {
	pulumi.Input

	ToManagedZoneServiceDirectoryConfigNamespaceOutput() ManagedZoneServiceDirectoryConfigNamespaceOutput
	ToManagedZoneServiceDirectoryConfigNamespaceOutputWithContext(context.Context) ManagedZoneServiceDirectoryConfigNamespaceOutput
}

ManagedZoneServiceDirectoryConfigNamespaceInput is an input type that accepts ManagedZoneServiceDirectoryConfigNamespaceArgs and ManagedZoneServiceDirectoryConfigNamespaceOutput values. You can construct a concrete instance of `ManagedZoneServiceDirectoryConfigNamespaceInput` via:

ManagedZoneServiceDirectoryConfigNamespaceArgs{...}

type ManagedZoneServiceDirectoryConfigNamespaceOutput

type ManagedZoneServiceDirectoryConfigNamespaceOutput struct{ *pulumi.OutputState }

func (ManagedZoneServiceDirectoryConfigNamespaceOutput) ElementType

func (ManagedZoneServiceDirectoryConfigNamespaceOutput) NamespaceUrl

The fully qualified or partial URL of the service directory namespace that should be associated with the zone. This should be formatted like `https://servicedirectory.googleapis.com/v1/projects/{project}/locations/{location}/namespaces/{namespace_id}` or simply `projects/{project}/locations/{location}/namespaces/{namespace_id}` Ignored for `public` visibility zones.

func (ManagedZoneServiceDirectoryConfigNamespaceOutput) ToManagedZoneServiceDirectoryConfigNamespaceOutput

func (o ManagedZoneServiceDirectoryConfigNamespaceOutput) ToManagedZoneServiceDirectoryConfigNamespaceOutput() ManagedZoneServiceDirectoryConfigNamespaceOutput

func (ManagedZoneServiceDirectoryConfigNamespaceOutput) ToManagedZoneServiceDirectoryConfigNamespaceOutputWithContext

func (o ManagedZoneServiceDirectoryConfigNamespaceOutput) ToManagedZoneServiceDirectoryConfigNamespaceOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigNamespaceOutput

func (ManagedZoneServiceDirectoryConfigNamespaceOutput) ToManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (o ManagedZoneServiceDirectoryConfigNamespaceOutput) ToManagedZoneServiceDirectoryConfigNamespacePtrOutput() ManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (ManagedZoneServiceDirectoryConfigNamespaceOutput) ToManagedZoneServiceDirectoryConfigNamespacePtrOutputWithContext

func (o ManagedZoneServiceDirectoryConfigNamespaceOutput) ToManagedZoneServiceDirectoryConfigNamespacePtrOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (ManagedZoneServiceDirectoryConfigNamespaceOutput) ToOutput added in v6.65.1

type ManagedZoneServiceDirectoryConfigNamespacePtrInput

type ManagedZoneServiceDirectoryConfigNamespacePtrInput interface {
	pulumi.Input

	ToManagedZoneServiceDirectoryConfigNamespacePtrOutput() ManagedZoneServiceDirectoryConfigNamespacePtrOutput
	ToManagedZoneServiceDirectoryConfigNamespacePtrOutputWithContext(context.Context) ManagedZoneServiceDirectoryConfigNamespacePtrOutput
}

ManagedZoneServiceDirectoryConfigNamespacePtrInput is an input type that accepts ManagedZoneServiceDirectoryConfigNamespaceArgs, ManagedZoneServiceDirectoryConfigNamespacePtr and ManagedZoneServiceDirectoryConfigNamespacePtrOutput values. You can construct a concrete instance of `ManagedZoneServiceDirectoryConfigNamespacePtrInput` via:

        ManagedZoneServiceDirectoryConfigNamespaceArgs{...}

or:

        nil

type ManagedZoneServiceDirectoryConfigNamespacePtrOutput

type ManagedZoneServiceDirectoryConfigNamespacePtrOutput struct{ *pulumi.OutputState }

func (ManagedZoneServiceDirectoryConfigNamespacePtrOutput) Elem

func (ManagedZoneServiceDirectoryConfigNamespacePtrOutput) ElementType

func (ManagedZoneServiceDirectoryConfigNamespacePtrOutput) NamespaceUrl

The fully qualified or partial URL of the service directory namespace that should be associated with the zone. This should be formatted like `https://servicedirectory.googleapis.com/v1/projects/{project}/locations/{location}/namespaces/{namespace_id}` or simply `projects/{project}/locations/{location}/namespaces/{namespace_id}` Ignored for `public` visibility zones.

func (ManagedZoneServiceDirectoryConfigNamespacePtrOutput) ToManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (o ManagedZoneServiceDirectoryConfigNamespacePtrOutput) ToManagedZoneServiceDirectoryConfigNamespacePtrOutput() ManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (ManagedZoneServiceDirectoryConfigNamespacePtrOutput) ToManagedZoneServiceDirectoryConfigNamespacePtrOutputWithContext

func (o ManagedZoneServiceDirectoryConfigNamespacePtrOutput) ToManagedZoneServiceDirectoryConfigNamespacePtrOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigNamespacePtrOutput

func (ManagedZoneServiceDirectoryConfigNamespacePtrOutput) ToOutput added in v6.65.1

type ManagedZoneServiceDirectoryConfigOutput

type ManagedZoneServiceDirectoryConfigOutput struct{ *pulumi.OutputState }

func (ManagedZoneServiceDirectoryConfigOutput) ElementType

func (ManagedZoneServiceDirectoryConfigOutput) Namespace

The namespace associated with the zone. Structure is documented below.

func (ManagedZoneServiceDirectoryConfigOutput) ToManagedZoneServiceDirectoryConfigOutput

func (o ManagedZoneServiceDirectoryConfigOutput) ToManagedZoneServiceDirectoryConfigOutput() ManagedZoneServiceDirectoryConfigOutput

func (ManagedZoneServiceDirectoryConfigOutput) ToManagedZoneServiceDirectoryConfigOutputWithContext

func (o ManagedZoneServiceDirectoryConfigOutput) ToManagedZoneServiceDirectoryConfigOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigOutput

func (ManagedZoneServiceDirectoryConfigOutput) ToManagedZoneServiceDirectoryConfigPtrOutput

func (o ManagedZoneServiceDirectoryConfigOutput) ToManagedZoneServiceDirectoryConfigPtrOutput() ManagedZoneServiceDirectoryConfigPtrOutput

func (ManagedZoneServiceDirectoryConfigOutput) ToManagedZoneServiceDirectoryConfigPtrOutputWithContext

func (o ManagedZoneServiceDirectoryConfigOutput) ToManagedZoneServiceDirectoryConfigPtrOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigPtrOutput

func (ManagedZoneServiceDirectoryConfigOutput) ToOutput added in v6.65.1

type ManagedZoneServiceDirectoryConfigPtrInput

type ManagedZoneServiceDirectoryConfigPtrInput interface {
	pulumi.Input

	ToManagedZoneServiceDirectoryConfigPtrOutput() ManagedZoneServiceDirectoryConfigPtrOutput
	ToManagedZoneServiceDirectoryConfigPtrOutputWithContext(context.Context) ManagedZoneServiceDirectoryConfigPtrOutput
}

ManagedZoneServiceDirectoryConfigPtrInput is an input type that accepts ManagedZoneServiceDirectoryConfigArgs, ManagedZoneServiceDirectoryConfigPtr and ManagedZoneServiceDirectoryConfigPtrOutput values. You can construct a concrete instance of `ManagedZoneServiceDirectoryConfigPtrInput` via:

        ManagedZoneServiceDirectoryConfigArgs{...}

or:

        nil

type ManagedZoneServiceDirectoryConfigPtrOutput

type ManagedZoneServiceDirectoryConfigPtrOutput struct{ *pulumi.OutputState }

func (ManagedZoneServiceDirectoryConfigPtrOutput) Elem

func (ManagedZoneServiceDirectoryConfigPtrOutput) ElementType

func (ManagedZoneServiceDirectoryConfigPtrOutput) Namespace

The namespace associated with the zone. Structure is documented below.

func (ManagedZoneServiceDirectoryConfigPtrOutput) ToManagedZoneServiceDirectoryConfigPtrOutput

func (o ManagedZoneServiceDirectoryConfigPtrOutput) ToManagedZoneServiceDirectoryConfigPtrOutput() ManagedZoneServiceDirectoryConfigPtrOutput

func (ManagedZoneServiceDirectoryConfigPtrOutput) ToManagedZoneServiceDirectoryConfigPtrOutputWithContext

func (o ManagedZoneServiceDirectoryConfigPtrOutput) ToManagedZoneServiceDirectoryConfigPtrOutputWithContext(ctx context.Context) ManagedZoneServiceDirectoryConfigPtrOutput

func (ManagedZoneServiceDirectoryConfigPtrOutput) ToOutput added in v6.65.1

type ManagedZoneState

type ManagedZoneState struct {
	// Cloud logging configuration
	// Structure is documented below.
	CloudLoggingConfig ManagedZoneCloudLoggingConfigPtrInput
	// The time that this resource was created on the server.
	// This is in RFC3339 text format.
	CreationTime pulumi.StringPtrInput
	// A textual description field. Defaults to 'Managed by Pulumi'.
	Description pulumi.StringPtrInput
	// The DNS name of this managed zone, for instance "example.com.".
	DnsName pulumi.StringPtrInput
	// DNSSEC configuration
	// Structure is documented below.
	DnssecConfig ManagedZoneDnssecConfigPtrInput
	// Set this true to delete all records in the zone.
	ForceDestroy pulumi.BoolPtrInput
	// The presence for this field indicates that outbound forwarding is enabled
	// for this zone. The value of this field contains the set of destinations
	// to forward to.
	// Structure is documented below.
	ForwardingConfig ManagedZoneForwardingConfigPtrInput
	// A set of key/value label pairs to assign to this ManagedZone.
	Labels pulumi.StringMapInput
	// Unique identifier for the resource; defined by the server.
	ManagedZoneId pulumi.IntPtrInput
	// User assigned name for this resource.
	// Must be unique within the project.
	//
	// ***
	Name pulumi.StringPtrInput
	// Delegate your managedZone to these virtual name servers;
	// defined by the server
	NameServers pulumi.StringArrayInput
	// The presence of this field indicates that DNS Peering is enabled for this
	// zone. The value of this field contains the network to peer with.
	// Structure is documented below.
	PeeringConfig ManagedZonePeeringConfigPtrInput
	// For privately visible zones, the set of Virtual Private Cloud
	// resources that the zone is visible from. At least one of `gkeClusters` or `networks` must be specified.
	// Structure is documented below.
	PrivateVisibilityConfig ManagedZonePrivateVisibilityConfigPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Specifies if this is a managed reverse lookup zone. If true, Cloud DNS will resolve reverse
	// lookup queries using automatically configured records for VPC resources. This only applies
	// to networks listed under `privateVisibilityConfig`.
	ReverseLookup pulumi.BoolPtrInput
	// The presence of this field indicates that this zone is backed by Service Directory. The value of this field contains information related to the namespace associated with the zone.
	// Structure is documented below.
	ServiceDirectoryConfig ManagedZoneServiceDirectoryConfigPtrInput
	// The zone's visibility: public zones are exposed to the Internet,
	// while private zones are visible only to Virtual Private Cloud resources.
	// Default value is `public`.
	// Possible values are: `private`, `public`.
	Visibility pulumi.StringPtrInput
}

func (ManagedZoneState) ElementType

func (ManagedZoneState) ElementType() reflect.Type

type Policy

type Policy struct {
	pulumi.CustomResourceState

	// Sets an alternative name server for the associated networks.
	// When specified, all DNS queries are forwarded to a name server that you choose.
	// Names such as .internal are not available when an alternative name server is specified.
	// Structure is documented below.
	AlternativeNameServerConfig PolicyAlternativeNameServerConfigPtrOutput `pulumi:"alternativeNameServerConfig"`
	// A textual description field. Defaults to 'Managed by Pulumi'.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Allows networks bound to this policy to receive DNS queries sent
	// by VMs or applications over VPN connections. When enabled, a
	// virtual IP address will be allocated from each of the sub-networks
	// that are bound to this policy.
	EnableInboundForwarding pulumi.BoolPtrOutput `pulumi:"enableInboundForwarding"`
	// Controls whether logging is enabled for the networks bound to this policy.
	// Defaults to no logging if not set.
	EnableLogging pulumi.BoolPtrOutput `pulumi:"enableLogging"`
	// User assigned name for this policy.
	//
	// ***
	Name pulumi.StringOutput `pulumi:"name"`
	// List of network names specifying networks to which this policy is applied.
	// Structure is documented below.
	Networks PolicyNetworkArrayOutput `pulumi:"networks"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
}

A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.

To get more information about Policy, see:

* [API documentation](https://cloud.google.com/dns/docs/reference/v1beta2/policies) * How-to Guides

## Example Usage ### Dns Policy Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewNetwork(ctx, "network-1", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewNetwork(ctx, "network-2", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewPolicy(ctx, "example-policy", &dns.PolicyArgs{
			EnableInboundForwarding: pulumi.Bool(true),
			EnableLogging:           pulumi.Bool(true),
			AlternativeNameServerConfig: &dns.PolicyAlternativeNameServerConfigArgs{
				TargetNameServers: dns.PolicyAlternativeNameServerConfigTargetNameServerArray{
					&dns.PolicyAlternativeNameServerConfigTargetNameServerArgs{
						Ipv4Address:    pulumi.String("172.16.1.10"),
						ForwardingPath: pulumi.String("private"),
					},
					&dns.PolicyAlternativeNameServerConfigTargetNameServerArgs{
						Ipv4Address: pulumi.String("172.16.1.20"),
					},
				},
			},
			Networks: dns.PolicyNetworkArray{
				&dns.PolicyNetworkArgs{
					NetworkUrl: network_1.ID(),
				},
				&dns.PolicyNetworkArgs{
					NetworkUrl: network_2.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Policy can be imported using any of these accepted formats

```sh

$ pulumi import gcp:dns/policy:Policy default projects/{{project}}/policies/{{name}}

```

```sh

$ pulumi import gcp:dns/policy:Policy default {{project}}/{{name}}

```

```sh

$ pulumi import gcp:dns/policy:Policy default {{name}}

```

func GetPolicy

func GetPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyState, opts ...pulumi.ResourceOption) (*Policy, error)

GetPolicy gets an existing Policy 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 NewPolicy

func NewPolicy(ctx *pulumi.Context,
	name string, args *PolicyArgs, opts ...pulumi.ResourceOption) (*Policy, error)

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

func (*Policy) ElementType

func (*Policy) ElementType() reflect.Type

func (*Policy) ToOutput added in v6.65.1

func (i *Policy) ToOutput(ctx context.Context) pulumix.Output[*Policy]

func (*Policy) ToPolicyOutput

func (i *Policy) ToPolicyOutput() PolicyOutput

func (*Policy) ToPolicyOutputWithContext

func (i *Policy) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput

type PolicyAlternativeNameServerConfig

type PolicyAlternativeNameServerConfig struct {
	// Sets an alternative name server for the associated networks. When specified,
	// all DNS queries are forwarded to a name server that you choose. Names such as .internal
	// are not available when an alternative name server is specified.
	// Structure is documented below.
	TargetNameServers []PolicyAlternativeNameServerConfigTargetNameServer `pulumi:"targetNameServers"`
}

type PolicyAlternativeNameServerConfigArgs

type PolicyAlternativeNameServerConfigArgs struct {
	// Sets an alternative name server for the associated networks. When specified,
	// all DNS queries are forwarded to a name server that you choose. Names such as .internal
	// are not available when an alternative name server is specified.
	// Structure is documented below.
	TargetNameServers PolicyAlternativeNameServerConfigTargetNameServerArrayInput `pulumi:"targetNameServers"`
}

func (PolicyAlternativeNameServerConfigArgs) ElementType

func (PolicyAlternativeNameServerConfigArgs) ToOutput added in v6.65.1

func (PolicyAlternativeNameServerConfigArgs) ToPolicyAlternativeNameServerConfigOutput

func (i PolicyAlternativeNameServerConfigArgs) ToPolicyAlternativeNameServerConfigOutput() PolicyAlternativeNameServerConfigOutput

func (PolicyAlternativeNameServerConfigArgs) ToPolicyAlternativeNameServerConfigOutputWithContext

func (i PolicyAlternativeNameServerConfigArgs) ToPolicyAlternativeNameServerConfigOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigOutput

func (PolicyAlternativeNameServerConfigArgs) ToPolicyAlternativeNameServerConfigPtrOutput

func (i PolicyAlternativeNameServerConfigArgs) ToPolicyAlternativeNameServerConfigPtrOutput() PolicyAlternativeNameServerConfigPtrOutput

func (PolicyAlternativeNameServerConfigArgs) ToPolicyAlternativeNameServerConfigPtrOutputWithContext

func (i PolicyAlternativeNameServerConfigArgs) ToPolicyAlternativeNameServerConfigPtrOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigPtrOutput

type PolicyAlternativeNameServerConfigInput

type PolicyAlternativeNameServerConfigInput interface {
	pulumi.Input

	ToPolicyAlternativeNameServerConfigOutput() PolicyAlternativeNameServerConfigOutput
	ToPolicyAlternativeNameServerConfigOutputWithContext(context.Context) PolicyAlternativeNameServerConfigOutput
}

PolicyAlternativeNameServerConfigInput is an input type that accepts PolicyAlternativeNameServerConfigArgs and PolicyAlternativeNameServerConfigOutput values. You can construct a concrete instance of `PolicyAlternativeNameServerConfigInput` via:

PolicyAlternativeNameServerConfigArgs{...}

type PolicyAlternativeNameServerConfigOutput

type PolicyAlternativeNameServerConfigOutput struct{ *pulumi.OutputState }

func (PolicyAlternativeNameServerConfigOutput) ElementType

func (PolicyAlternativeNameServerConfigOutput) TargetNameServers

Sets an alternative name server for the associated networks. When specified, all DNS queries are forwarded to a name server that you choose. Names such as .internal are not available when an alternative name server is specified. Structure is documented below.

func (PolicyAlternativeNameServerConfigOutput) ToOutput added in v6.65.1

func (PolicyAlternativeNameServerConfigOutput) ToPolicyAlternativeNameServerConfigOutput

func (o PolicyAlternativeNameServerConfigOutput) ToPolicyAlternativeNameServerConfigOutput() PolicyAlternativeNameServerConfigOutput

func (PolicyAlternativeNameServerConfigOutput) ToPolicyAlternativeNameServerConfigOutputWithContext

func (o PolicyAlternativeNameServerConfigOutput) ToPolicyAlternativeNameServerConfigOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigOutput

func (PolicyAlternativeNameServerConfigOutput) ToPolicyAlternativeNameServerConfigPtrOutput

func (o PolicyAlternativeNameServerConfigOutput) ToPolicyAlternativeNameServerConfigPtrOutput() PolicyAlternativeNameServerConfigPtrOutput

func (PolicyAlternativeNameServerConfigOutput) ToPolicyAlternativeNameServerConfigPtrOutputWithContext

func (o PolicyAlternativeNameServerConfigOutput) ToPolicyAlternativeNameServerConfigPtrOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigPtrOutput

type PolicyAlternativeNameServerConfigPtrInput

type PolicyAlternativeNameServerConfigPtrInput interface {
	pulumi.Input

	ToPolicyAlternativeNameServerConfigPtrOutput() PolicyAlternativeNameServerConfigPtrOutput
	ToPolicyAlternativeNameServerConfigPtrOutputWithContext(context.Context) PolicyAlternativeNameServerConfigPtrOutput
}

PolicyAlternativeNameServerConfigPtrInput is an input type that accepts PolicyAlternativeNameServerConfigArgs, PolicyAlternativeNameServerConfigPtr and PolicyAlternativeNameServerConfigPtrOutput values. You can construct a concrete instance of `PolicyAlternativeNameServerConfigPtrInput` via:

        PolicyAlternativeNameServerConfigArgs{...}

or:

        nil

type PolicyAlternativeNameServerConfigPtrOutput

type PolicyAlternativeNameServerConfigPtrOutput struct{ *pulumi.OutputState }

func (PolicyAlternativeNameServerConfigPtrOutput) Elem

func (PolicyAlternativeNameServerConfigPtrOutput) ElementType

func (PolicyAlternativeNameServerConfigPtrOutput) TargetNameServers

Sets an alternative name server for the associated networks. When specified, all DNS queries are forwarded to a name server that you choose. Names such as .internal are not available when an alternative name server is specified. Structure is documented below.

func (PolicyAlternativeNameServerConfigPtrOutput) ToOutput added in v6.65.1

func (PolicyAlternativeNameServerConfigPtrOutput) ToPolicyAlternativeNameServerConfigPtrOutput

func (o PolicyAlternativeNameServerConfigPtrOutput) ToPolicyAlternativeNameServerConfigPtrOutput() PolicyAlternativeNameServerConfigPtrOutput

func (PolicyAlternativeNameServerConfigPtrOutput) ToPolicyAlternativeNameServerConfigPtrOutputWithContext

func (o PolicyAlternativeNameServerConfigPtrOutput) ToPolicyAlternativeNameServerConfigPtrOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigPtrOutput

type PolicyAlternativeNameServerConfigTargetNameServer

type PolicyAlternativeNameServerConfigTargetNameServer struct {
	// Forwarding path for this TargetNameServer. If unset or `default` Cloud DNS will make forwarding
	// decision based on address ranges, i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go
	// to the Internet. When set to `private`, Cloud DNS will always send queries through VPC for this target
	// Possible values are: `default`, `private`.
	ForwardingPath *string `pulumi:"forwardingPath"`
	// IPv4 address to forward to.
	Ipv4Address string `pulumi:"ipv4Address"`
}

type PolicyAlternativeNameServerConfigTargetNameServerArgs

type PolicyAlternativeNameServerConfigTargetNameServerArgs struct {
	// Forwarding path for this TargetNameServer. If unset or `default` Cloud DNS will make forwarding
	// decision based on address ranges, i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go
	// to the Internet. When set to `private`, Cloud DNS will always send queries through VPC for this target
	// Possible values are: `default`, `private`.
	ForwardingPath pulumi.StringPtrInput `pulumi:"forwardingPath"`
	// IPv4 address to forward to.
	Ipv4Address pulumi.StringInput `pulumi:"ipv4Address"`
}

func (PolicyAlternativeNameServerConfigTargetNameServerArgs) ElementType

func (PolicyAlternativeNameServerConfigTargetNameServerArgs) ToOutput added in v6.65.1

func (PolicyAlternativeNameServerConfigTargetNameServerArgs) ToPolicyAlternativeNameServerConfigTargetNameServerOutput

func (i PolicyAlternativeNameServerConfigTargetNameServerArgs) ToPolicyAlternativeNameServerConfigTargetNameServerOutput() PolicyAlternativeNameServerConfigTargetNameServerOutput

func (PolicyAlternativeNameServerConfigTargetNameServerArgs) ToPolicyAlternativeNameServerConfigTargetNameServerOutputWithContext

func (i PolicyAlternativeNameServerConfigTargetNameServerArgs) ToPolicyAlternativeNameServerConfigTargetNameServerOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigTargetNameServerOutput

type PolicyAlternativeNameServerConfigTargetNameServerArray

type PolicyAlternativeNameServerConfigTargetNameServerArray []PolicyAlternativeNameServerConfigTargetNameServerInput

func (PolicyAlternativeNameServerConfigTargetNameServerArray) ElementType

func (PolicyAlternativeNameServerConfigTargetNameServerArray) ToOutput added in v6.65.1

func (PolicyAlternativeNameServerConfigTargetNameServerArray) ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutput

func (i PolicyAlternativeNameServerConfigTargetNameServerArray) ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutput() PolicyAlternativeNameServerConfigTargetNameServerArrayOutput

func (PolicyAlternativeNameServerConfigTargetNameServerArray) ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutputWithContext

func (i PolicyAlternativeNameServerConfigTargetNameServerArray) ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigTargetNameServerArrayOutput

type PolicyAlternativeNameServerConfigTargetNameServerArrayInput

type PolicyAlternativeNameServerConfigTargetNameServerArrayInput interface {
	pulumi.Input

	ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutput() PolicyAlternativeNameServerConfigTargetNameServerArrayOutput
	ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutputWithContext(context.Context) PolicyAlternativeNameServerConfigTargetNameServerArrayOutput
}

PolicyAlternativeNameServerConfigTargetNameServerArrayInput is an input type that accepts PolicyAlternativeNameServerConfigTargetNameServerArray and PolicyAlternativeNameServerConfigTargetNameServerArrayOutput values. You can construct a concrete instance of `PolicyAlternativeNameServerConfigTargetNameServerArrayInput` via:

PolicyAlternativeNameServerConfigTargetNameServerArray{ PolicyAlternativeNameServerConfigTargetNameServerArgs{...} }

type PolicyAlternativeNameServerConfigTargetNameServerArrayOutput

type PolicyAlternativeNameServerConfigTargetNameServerArrayOutput struct{ *pulumi.OutputState }

func (PolicyAlternativeNameServerConfigTargetNameServerArrayOutput) ElementType

func (PolicyAlternativeNameServerConfigTargetNameServerArrayOutput) Index

func (PolicyAlternativeNameServerConfigTargetNameServerArrayOutput) ToOutput added in v6.65.1

func (PolicyAlternativeNameServerConfigTargetNameServerArrayOutput) ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutput

func (PolicyAlternativeNameServerConfigTargetNameServerArrayOutput) ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutputWithContext

func (o PolicyAlternativeNameServerConfigTargetNameServerArrayOutput) ToPolicyAlternativeNameServerConfigTargetNameServerArrayOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigTargetNameServerArrayOutput

type PolicyAlternativeNameServerConfigTargetNameServerInput

type PolicyAlternativeNameServerConfigTargetNameServerInput interface {
	pulumi.Input

	ToPolicyAlternativeNameServerConfigTargetNameServerOutput() PolicyAlternativeNameServerConfigTargetNameServerOutput
	ToPolicyAlternativeNameServerConfigTargetNameServerOutputWithContext(context.Context) PolicyAlternativeNameServerConfigTargetNameServerOutput
}

PolicyAlternativeNameServerConfigTargetNameServerInput is an input type that accepts PolicyAlternativeNameServerConfigTargetNameServerArgs and PolicyAlternativeNameServerConfigTargetNameServerOutput values. You can construct a concrete instance of `PolicyAlternativeNameServerConfigTargetNameServerInput` via:

PolicyAlternativeNameServerConfigTargetNameServerArgs{...}

type PolicyAlternativeNameServerConfigTargetNameServerOutput

type PolicyAlternativeNameServerConfigTargetNameServerOutput struct{ *pulumi.OutputState }

func (PolicyAlternativeNameServerConfigTargetNameServerOutput) ElementType

func (PolicyAlternativeNameServerConfigTargetNameServerOutput) ForwardingPath

Forwarding path for this TargetNameServer. If unset or `default` Cloud DNS will make forwarding decision based on address ranges, i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the Internet. When set to `private`, Cloud DNS will always send queries through VPC for this target Possible values are: `default`, `private`.

func (PolicyAlternativeNameServerConfigTargetNameServerOutput) Ipv4Address

IPv4 address to forward to.

func (PolicyAlternativeNameServerConfigTargetNameServerOutput) ToOutput added in v6.65.1

func (PolicyAlternativeNameServerConfigTargetNameServerOutput) ToPolicyAlternativeNameServerConfigTargetNameServerOutput

func (PolicyAlternativeNameServerConfigTargetNameServerOutput) ToPolicyAlternativeNameServerConfigTargetNameServerOutputWithContext

func (o PolicyAlternativeNameServerConfigTargetNameServerOutput) ToPolicyAlternativeNameServerConfigTargetNameServerOutputWithContext(ctx context.Context) PolicyAlternativeNameServerConfigTargetNameServerOutput

type PolicyArgs

type PolicyArgs struct {
	// Sets an alternative name server for the associated networks.
	// When specified, all DNS queries are forwarded to a name server that you choose.
	// Names such as .internal are not available when an alternative name server is specified.
	// Structure is documented below.
	AlternativeNameServerConfig PolicyAlternativeNameServerConfigPtrInput
	// A textual description field. Defaults to 'Managed by Pulumi'.
	Description pulumi.StringPtrInput
	// Allows networks bound to this policy to receive DNS queries sent
	// by VMs or applications over VPN connections. When enabled, a
	// virtual IP address will be allocated from each of the sub-networks
	// that are bound to this policy.
	EnableInboundForwarding pulumi.BoolPtrInput
	// Controls whether logging is enabled for the networks bound to this policy.
	// Defaults to no logging if not set.
	EnableLogging pulumi.BoolPtrInput
	// User assigned name for this policy.
	//
	// ***
	Name pulumi.StringPtrInput
	// List of network names specifying networks to which this policy is applied.
	// Structure is documented below.
	Networks PolicyNetworkArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
}

The set of arguments for constructing a Policy resource.

func (PolicyArgs) ElementType

func (PolicyArgs) ElementType() reflect.Type

type PolicyArray

type PolicyArray []PolicyInput

func (PolicyArray) ElementType

func (PolicyArray) ElementType() reflect.Type

func (PolicyArray) ToOutput added in v6.65.1

func (i PolicyArray) ToOutput(ctx context.Context) pulumix.Output[[]*Policy]

func (PolicyArray) ToPolicyArrayOutput

func (i PolicyArray) ToPolicyArrayOutput() PolicyArrayOutput

func (PolicyArray) ToPolicyArrayOutputWithContext

func (i PolicyArray) ToPolicyArrayOutputWithContext(ctx context.Context) PolicyArrayOutput

type PolicyArrayInput

type PolicyArrayInput interface {
	pulumi.Input

	ToPolicyArrayOutput() PolicyArrayOutput
	ToPolicyArrayOutputWithContext(context.Context) PolicyArrayOutput
}

PolicyArrayInput is an input type that accepts PolicyArray and PolicyArrayOutput values. You can construct a concrete instance of `PolicyArrayInput` via:

PolicyArray{ PolicyArgs{...} }

type PolicyArrayOutput

type PolicyArrayOutput struct{ *pulumi.OutputState }

func (PolicyArrayOutput) ElementType

func (PolicyArrayOutput) ElementType() reflect.Type

func (PolicyArrayOutput) Index

func (PolicyArrayOutput) ToOutput added in v6.65.1

func (o PolicyArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*Policy]

func (PolicyArrayOutput) ToPolicyArrayOutput

func (o PolicyArrayOutput) ToPolicyArrayOutput() PolicyArrayOutput

func (PolicyArrayOutput) ToPolicyArrayOutputWithContext

func (o PolicyArrayOutput) ToPolicyArrayOutputWithContext(ctx context.Context) PolicyArrayOutput

type PolicyInput

type PolicyInput interface {
	pulumi.Input

	ToPolicyOutput() PolicyOutput
	ToPolicyOutputWithContext(ctx context.Context) PolicyOutput
}

type PolicyMap

type PolicyMap map[string]PolicyInput

func (PolicyMap) ElementType

func (PolicyMap) ElementType() reflect.Type

func (PolicyMap) ToOutput added in v6.65.1

func (i PolicyMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Policy]

func (PolicyMap) ToPolicyMapOutput

func (i PolicyMap) ToPolicyMapOutput() PolicyMapOutput

func (PolicyMap) ToPolicyMapOutputWithContext

func (i PolicyMap) ToPolicyMapOutputWithContext(ctx context.Context) PolicyMapOutput

type PolicyMapInput

type PolicyMapInput interface {
	pulumi.Input

	ToPolicyMapOutput() PolicyMapOutput
	ToPolicyMapOutputWithContext(context.Context) PolicyMapOutput
}

PolicyMapInput is an input type that accepts PolicyMap and PolicyMapOutput values. You can construct a concrete instance of `PolicyMapInput` via:

PolicyMap{ "key": PolicyArgs{...} }

type PolicyMapOutput

type PolicyMapOutput struct{ *pulumi.OutputState }

func (PolicyMapOutput) ElementType

func (PolicyMapOutput) ElementType() reflect.Type

func (PolicyMapOutput) MapIndex

func (PolicyMapOutput) ToOutput added in v6.65.1

func (o PolicyMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]*Policy]

func (PolicyMapOutput) ToPolicyMapOutput

func (o PolicyMapOutput) ToPolicyMapOutput() PolicyMapOutput

func (PolicyMapOutput) ToPolicyMapOutputWithContext

func (o PolicyMapOutput) ToPolicyMapOutputWithContext(ctx context.Context) PolicyMapOutput

type PolicyNetwork

type PolicyNetwork struct {
	// The id or fully qualified URL of the VPC network to forward queries to.
	// This should be formatted like `projects/{project}/global/networks/{network}` or
	// `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
	NetworkUrl string `pulumi:"networkUrl"`
}

type PolicyNetworkArgs

type PolicyNetworkArgs struct {
	// The id or fully qualified URL of the VPC network to forward queries to.
	// This should be formatted like `projects/{project}/global/networks/{network}` or
	// `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
	NetworkUrl pulumi.StringInput `pulumi:"networkUrl"`
}

func (PolicyNetworkArgs) ElementType

func (PolicyNetworkArgs) ElementType() reflect.Type

func (PolicyNetworkArgs) ToOutput added in v6.65.1

func (PolicyNetworkArgs) ToPolicyNetworkOutput

func (i PolicyNetworkArgs) ToPolicyNetworkOutput() PolicyNetworkOutput

func (PolicyNetworkArgs) ToPolicyNetworkOutputWithContext

func (i PolicyNetworkArgs) ToPolicyNetworkOutputWithContext(ctx context.Context) PolicyNetworkOutput

type PolicyNetworkArray

type PolicyNetworkArray []PolicyNetworkInput

func (PolicyNetworkArray) ElementType

func (PolicyNetworkArray) ElementType() reflect.Type

func (PolicyNetworkArray) ToOutput added in v6.65.1

func (PolicyNetworkArray) ToPolicyNetworkArrayOutput

func (i PolicyNetworkArray) ToPolicyNetworkArrayOutput() PolicyNetworkArrayOutput

func (PolicyNetworkArray) ToPolicyNetworkArrayOutputWithContext

func (i PolicyNetworkArray) ToPolicyNetworkArrayOutputWithContext(ctx context.Context) PolicyNetworkArrayOutput

type PolicyNetworkArrayInput

type PolicyNetworkArrayInput interface {
	pulumi.Input

	ToPolicyNetworkArrayOutput() PolicyNetworkArrayOutput
	ToPolicyNetworkArrayOutputWithContext(context.Context) PolicyNetworkArrayOutput
}

PolicyNetworkArrayInput is an input type that accepts PolicyNetworkArray and PolicyNetworkArrayOutput values. You can construct a concrete instance of `PolicyNetworkArrayInput` via:

PolicyNetworkArray{ PolicyNetworkArgs{...} }

type PolicyNetworkArrayOutput

type PolicyNetworkArrayOutput struct{ *pulumi.OutputState }

func (PolicyNetworkArrayOutput) ElementType

func (PolicyNetworkArrayOutput) ElementType() reflect.Type

func (PolicyNetworkArrayOutput) Index

func (PolicyNetworkArrayOutput) ToOutput added in v6.65.1

func (PolicyNetworkArrayOutput) ToPolicyNetworkArrayOutput

func (o PolicyNetworkArrayOutput) ToPolicyNetworkArrayOutput() PolicyNetworkArrayOutput

func (PolicyNetworkArrayOutput) ToPolicyNetworkArrayOutputWithContext

func (o PolicyNetworkArrayOutput) ToPolicyNetworkArrayOutputWithContext(ctx context.Context) PolicyNetworkArrayOutput

type PolicyNetworkInput

type PolicyNetworkInput interface {
	pulumi.Input

	ToPolicyNetworkOutput() PolicyNetworkOutput
	ToPolicyNetworkOutputWithContext(context.Context) PolicyNetworkOutput
}

PolicyNetworkInput is an input type that accepts PolicyNetworkArgs and PolicyNetworkOutput values. You can construct a concrete instance of `PolicyNetworkInput` via:

PolicyNetworkArgs{...}

type PolicyNetworkOutput

type PolicyNetworkOutput struct{ *pulumi.OutputState }

func (PolicyNetworkOutput) ElementType

func (PolicyNetworkOutput) ElementType() reflect.Type

func (PolicyNetworkOutput) NetworkUrl

func (o PolicyNetworkOutput) NetworkUrl() pulumi.StringOutput

The id or fully qualified URL of the VPC network to forward queries to. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`

func (PolicyNetworkOutput) ToOutput added in v6.65.1

func (PolicyNetworkOutput) ToPolicyNetworkOutput

func (o PolicyNetworkOutput) ToPolicyNetworkOutput() PolicyNetworkOutput

func (PolicyNetworkOutput) ToPolicyNetworkOutputWithContext

func (o PolicyNetworkOutput) ToPolicyNetworkOutputWithContext(ctx context.Context) PolicyNetworkOutput

type PolicyOutput

type PolicyOutput struct{ *pulumi.OutputState }

func (PolicyOutput) AlternativeNameServerConfig added in v6.23.0

func (o PolicyOutput) AlternativeNameServerConfig() PolicyAlternativeNameServerConfigPtrOutput

Sets an alternative name server for the associated networks. When specified, all DNS queries are forwarded to a name server that you choose. Names such as .internal are not available when an alternative name server is specified. Structure is documented below.

func (PolicyOutput) Description added in v6.23.0

func (o PolicyOutput) Description() pulumi.StringPtrOutput

A textual description field. Defaults to 'Managed by Pulumi'.

func (PolicyOutput) ElementType

func (PolicyOutput) ElementType() reflect.Type

func (PolicyOutput) EnableInboundForwarding added in v6.23.0

func (o PolicyOutput) EnableInboundForwarding() pulumi.BoolPtrOutput

Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address will be allocated from each of the sub-networks that are bound to this policy.

func (PolicyOutput) EnableLogging added in v6.23.0

func (o PolicyOutput) EnableLogging() pulumi.BoolPtrOutput

Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.

func (PolicyOutput) Name added in v6.23.0

func (o PolicyOutput) Name() pulumi.StringOutput

User assigned name for this policy.

***

func (PolicyOutput) Networks added in v6.23.0

List of network names specifying networks to which this policy is applied. Structure is documented below.

func (PolicyOutput) Project added in v6.23.0

func (o PolicyOutput) Project() pulumi.StringOutput

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

func (PolicyOutput) ToOutput added in v6.65.1

func (o PolicyOutput) ToOutput(ctx context.Context) pulumix.Output[*Policy]

func (PolicyOutput) ToPolicyOutput

func (o PolicyOutput) ToPolicyOutput() PolicyOutput

func (PolicyOutput) ToPolicyOutputWithContext

func (o PolicyOutput) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput

type PolicyState

type PolicyState struct {
	// Sets an alternative name server for the associated networks.
	// When specified, all DNS queries are forwarded to a name server that you choose.
	// Names such as .internal are not available when an alternative name server is specified.
	// Structure is documented below.
	AlternativeNameServerConfig PolicyAlternativeNameServerConfigPtrInput
	// A textual description field. Defaults to 'Managed by Pulumi'.
	Description pulumi.StringPtrInput
	// Allows networks bound to this policy to receive DNS queries sent
	// by VMs or applications over VPN connections. When enabled, a
	// virtual IP address will be allocated from each of the sub-networks
	// that are bound to this policy.
	EnableInboundForwarding pulumi.BoolPtrInput
	// Controls whether logging is enabled for the networks bound to this policy.
	// Defaults to no logging if not set.
	EnableLogging pulumi.BoolPtrInput
	// User assigned name for this policy.
	//
	// ***
	Name pulumi.StringPtrInput
	// List of network names specifying networks to which this policy is applied.
	// Structure is documented below.
	Networks PolicyNetworkArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
}

func (PolicyState) ElementType

func (PolicyState) ElementType() reflect.Type

type RecordSet

type RecordSet struct {
	pulumi.CustomResourceState

	// The name of the zone in which this record set will
	// reside.
	ManagedZone pulumi.StringOutput `pulumi:"managedZone"`
	// The DNS name this record set will apply to.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The configuration for steering traffic based on query.
	// Now you can specify either Weighted Round Robin(WRR) type or Geolocation(GEO) type.
	// Structure is documented below.
	RoutingPolicy RecordSetRoutingPolicyPtrOutput `pulumi:"routingPolicy"`
	// 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. To specify a single
	// record value longer than 255 characters such as a TXT record for DKIM, add \"\" inside the Terraform configuration
	// string (e.g. "first255characters\"\"morecharacters").
	Rrdatas pulumi.StringArrayOutput `pulumi:"rrdatas"`
	// The time-to-live of this record set (seconds).
	Ttl pulumi.IntPtrOutput `pulumi:"ttl"`
	// The DNS record set type.
	//
	// ***
	Type pulumi.StringOutput `pulumi:"type"`
}

## Example Usage ### Binding a DNS name to the ephemeral IP of a new instance:

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		frontendInstance, err := compute.NewInstance(ctx, "frontendInstance", &compute.InstanceArgs{
			MachineType: pulumi.String("g1-small"),
			Zone:        pulumi.String("us-central1-b"),
			BootDisk: &compute.InstanceBootDiskArgs{
				InitializeParams: &compute.InstanceBootDiskInitializeParamsArgs{
					Image: pulumi.String("debian-cloud/debian-11"),
				},
			},
			NetworkInterfaces: compute.InstanceNetworkInterfaceArray{
				&compute.InstanceNetworkInterfaceArgs{
					Network: pulumi.String("default"),
					AccessConfigs: compute.InstanceNetworkInterfaceAccessConfigArray{
						nil,
					},
				},
			},
		})
		if err != nil {
			return err
		}
		prod, err := dns.NewManagedZone(ctx, "prod", &dns.ManagedZoneArgs{
			DnsName: pulumi.String("prod.mydomain.com."),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "frontendRecordSet", &dns.RecordSetArgs{
			Name: prod.DnsName.ApplyT(func(dnsName string) (string, error) {
				return fmt.Sprintf("frontend.%v", dnsName), nil
			}).(pulumi.StringOutput),
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			ManagedZone: prod.Name,
			Rrdatas: pulumi.StringArray{
				frontendInstance.NetworkInterfaces.ApplyT(func(networkInterfaces []compute.InstanceNetworkInterface) (*string, error) {
					return &networkInterfaces[0].AccessConfigs[0].NatIp, nil
				}).(pulumi.StringPtrOutput),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Adding an A record

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		prod, err := dns.NewManagedZone(ctx, "prod", &dns.ManagedZoneArgs{
			DnsName: pulumi.String("prod.mydomain.com."),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
			Name: prod.DnsName.ApplyT(func(dnsName string) (string, error) {
				return fmt.Sprintf("backend.%v", dnsName), nil
			}).(pulumi.StringOutput),
			ManagedZone: prod.Name,
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			Rrdatas: pulumi.StringArray{
				pulumi.String("8.8.8.8"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Adding an MX record

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		prod, err := dns.NewManagedZone(ctx, "prod", &dns.ManagedZoneArgs{
			DnsName: pulumi.String("prod.mydomain.com."),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "mx", &dns.RecordSetArgs{
			Name:        prod.DnsName,
			ManagedZone: prod.Name,
			Type:        pulumi.String("MX"),
			Ttl:         pulumi.Int(3600),
			Rrdatas: pulumi.StringArray{
				pulumi.String("1 aspmx.l.google.com."),
				pulumi.String("5 alt1.aspmx.l.google.com."),
				pulumi.String("5 alt2.aspmx.l.google.com."),
				pulumi.String("10 alt3.aspmx.l.google.com."),
				pulumi.String("10 alt4.aspmx.l.google.com."),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Adding an SPF record

Quotes (`""`) must be added around your `rrdatas` for a SPF record. Otherwise `rrdatas` string gets split on spaces.

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		prod, err := dns.NewManagedZone(ctx, "prod", &dns.ManagedZoneArgs{
			DnsName: pulumi.String("prod.mydomain.com."),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "spf", &dns.RecordSetArgs{
			Name: prod.DnsName.ApplyT(func(dnsName string) (string, error) {
				return fmt.Sprintf("frontend.%v", dnsName), nil
			}).(pulumi.StringOutput),
			ManagedZone: prod.Name,
			Type:        pulumi.String("TXT"),
			Ttl:         pulumi.Int(300),
			Rrdatas: pulumi.StringArray{
				pulumi.String("\"v=spf1 ip4:111.111.111.111 include:backoff.email-example.com -all\""),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Adding a CNAME record

The list of `rrdatas` should only contain a single string corresponding to the Canonical Name intended.

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		prod, err := dns.NewManagedZone(ctx, "prod", &dns.ManagedZoneArgs{
			DnsName: pulumi.String("prod.mydomain.com."),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "cname", &dns.RecordSetArgs{
			Name: prod.DnsName.ApplyT(func(dnsName string) (string, error) {
				return fmt.Sprintf("frontend.%v", dnsName), nil
			}).(pulumi.StringOutput),
			ManagedZone: prod.Name,
			Type:        pulumi.String("CNAME"),
			Ttl:         pulumi.Int(300),
			Rrdatas: pulumi.StringArray{
				pulumi.String("frontend.mydomain.com."),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Setting Routing Policy instead of using rrdatas ### Geolocation

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dns.NewRecordSet(ctx, "geo", &dns.RecordSetArgs{
			Name:        pulumi.String(fmt.Sprintf("backend.%v", google_dns_managed_zone.Prod.Dns_name)),
			ManagedZone: pulumi.Any(google_dns_managed_zone.Prod.Name),
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			RoutingPolicy: &dns.RecordSetRoutingPolicyArgs{
				Geos: dns.RecordSetRoutingPolicyGeoArray{
					&dns.RecordSetRoutingPolicyGeoArgs{
						Location: pulumi.String("asia-east1"),
						Rrdatas: pulumi.StringArray{
							pulumi.String("10.128.1.1"),
						},
					},
					&dns.RecordSetRoutingPolicyGeoArgs{
						Location: pulumi.String("us-central1"),
						Rrdatas: pulumi.StringArray{
							pulumi.String("10.130.1.1"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Primary-Backup

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		prodManagedZone, err := dns.NewManagedZone(ctx, "prodManagedZone", &dns.ManagedZoneArgs{
			DnsName: pulumi.String("prod.mydomain.com."),
		})
		if err != nil {
			return err
		}
		prodRegionBackendService, err := compute.NewRegionBackendService(ctx, "prodRegionBackendService", &compute.RegionBackendServiceArgs{
			Region: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		prodNetwork, err := compute.NewNetwork(ctx, "prodNetwork", nil)
		if err != nil {
			return err
		}
		prodForwardingRule, err := compute.NewForwardingRule(ctx, "prodForwardingRule", &compute.ForwardingRuleArgs{
			Region:              pulumi.String("us-central1"),
			LoadBalancingScheme: pulumi.String("INTERNAL"),
			BackendService:      prodRegionBackendService.ID(),
			AllPorts:            pulumi.Bool(true),
			Network:             prodNetwork.Name,
			AllowGlobalAccess:   pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "recordSet", &dns.RecordSetArgs{
			Name: prodManagedZone.DnsName.ApplyT(func(dnsName string) (string, error) {
				return fmt.Sprintf("backend.%v", dnsName), nil
			}).(pulumi.StringOutput),
			ManagedZone: prodManagedZone.Name,
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			RoutingPolicy: &dns.RecordSetRoutingPolicyArgs{
				PrimaryBackup: &dns.RecordSetRoutingPolicyPrimaryBackupArgs{
					TrickleRatio: pulumi.Float64(0.1),
					Primary: &dns.RecordSetRoutingPolicyPrimaryBackupPrimaryArgs{
						InternalLoadBalancers: dns.RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray{
							&dns.RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs{
								LoadBalancerType: pulumi.String("regionalL4ilb"),
								IpAddress:        prodForwardingRule.IpAddress,
								Port:             pulumi.String("80"),
								IpProtocol:       pulumi.String("tcp"),
								NetworkUrl:       prodNetwork.ID(),
								Project:          prodForwardingRule.Project,
								Region:           prodForwardingRule.Region,
							},
						},
					},
					BackupGeos: dns.RecordSetRoutingPolicyPrimaryBackupBackupGeoArray{
						&dns.RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs{
							Location: pulumi.String("asia-east1"),
							Rrdatas: pulumi.StringArray{
								pulumi.String("10.128.1.1"),
							},
						},
						&dns.RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs{
							Location: pulumi.String("us-west1"),
							Rrdatas: pulumi.StringArray{
								pulumi.String("10.130.1.1"),
							},
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DNS record sets can be imported using either of these accepted formats

```sh

$ pulumi import gcp:dns/recordSet:RecordSet frontend projects/{{project}}/managedZones/{{zone}}/rrsets/{{name}}/{{type}}

```

```sh

$ pulumi import gcp:dns/recordSet:RecordSet frontend {{project}}/{{zone}}/{{name}}/{{type}}

```

```sh

$ pulumi import gcp:dns/recordSet:RecordSet frontend {{zone}}/{{name}}/{{type}}

```

NoteThe record name must include the trailing dot at the end.

func GetRecordSet

func GetRecordSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RecordSetState, opts ...pulumi.ResourceOption) (*RecordSet, error)

GetRecordSet gets an existing RecordSet 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 NewRecordSet

func NewRecordSet(ctx *pulumi.Context,
	name string, args *RecordSetArgs, opts ...pulumi.ResourceOption) (*RecordSet, error)

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

func (*RecordSet) ElementType

func (*RecordSet) ElementType() reflect.Type

func (*RecordSet) ToOutput added in v6.65.1

func (i *RecordSet) ToOutput(ctx context.Context) pulumix.Output[*RecordSet]

func (*RecordSet) ToRecordSetOutput

func (i *RecordSet) ToRecordSetOutput() RecordSetOutput

func (*RecordSet) ToRecordSetOutputWithContext

func (i *RecordSet) ToRecordSetOutputWithContext(ctx context.Context) RecordSetOutput

type RecordSetArgs

type RecordSetArgs struct {
	// The name of the zone in which this record set will
	// reside.
	ManagedZone pulumi.StringInput
	// The DNS name this record set will apply to.
	Name pulumi.StringInput
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The configuration for steering traffic based on query.
	// Now you can specify either Weighted Round Robin(WRR) type or Geolocation(GEO) type.
	// Structure is documented below.
	RoutingPolicy RecordSetRoutingPolicyPtrInput
	// 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. To specify a single
	// record value longer than 255 characters such as a TXT record for DKIM, add \"\" inside the Terraform configuration
	// string (e.g. "first255characters\"\"morecharacters").
	Rrdatas pulumi.StringArrayInput
	// The time-to-live of this record set (seconds).
	Ttl pulumi.IntPtrInput
	// The DNS record set type.
	//
	// ***
	Type pulumi.StringInput
}

The set of arguments for constructing a RecordSet resource.

func (RecordSetArgs) ElementType

func (RecordSetArgs) ElementType() reflect.Type

type RecordSetArray

type RecordSetArray []RecordSetInput

func (RecordSetArray) ElementType

func (RecordSetArray) ElementType() reflect.Type

func (RecordSetArray) ToOutput added in v6.65.1

func (i RecordSetArray) ToOutput(ctx context.Context) pulumix.Output[[]*RecordSet]

func (RecordSetArray) ToRecordSetArrayOutput

func (i RecordSetArray) ToRecordSetArrayOutput() RecordSetArrayOutput

func (RecordSetArray) ToRecordSetArrayOutputWithContext

func (i RecordSetArray) ToRecordSetArrayOutputWithContext(ctx context.Context) RecordSetArrayOutput

type RecordSetArrayInput

type RecordSetArrayInput interface {
	pulumi.Input

	ToRecordSetArrayOutput() RecordSetArrayOutput
	ToRecordSetArrayOutputWithContext(context.Context) RecordSetArrayOutput
}

RecordSetArrayInput is an input type that accepts RecordSetArray and RecordSetArrayOutput values. You can construct a concrete instance of `RecordSetArrayInput` via:

RecordSetArray{ RecordSetArgs{...} }

type RecordSetArrayOutput

type RecordSetArrayOutput struct{ *pulumi.OutputState }

func (RecordSetArrayOutput) ElementType

func (RecordSetArrayOutput) ElementType() reflect.Type

func (RecordSetArrayOutput) Index

func (RecordSetArrayOutput) ToOutput added in v6.65.1

func (RecordSetArrayOutput) ToRecordSetArrayOutput

func (o RecordSetArrayOutput) ToRecordSetArrayOutput() RecordSetArrayOutput

func (RecordSetArrayOutput) ToRecordSetArrayOutputWithContext

func (o RecordSetArrayOutput) ToRecordSetArrayOutputWithContext(ctx context.Context) RecordSetArrayOutput

type RecordSetInput

type RecordSetInput interface {
	pulumi.Input

	ToRecordSetOutput() RecordSetOutput
	ToRecordSetOutputWithContext(ctx context.Context) RecordSetOutput
}

type RecordSetMap

type RecordSetMap map[string]RecordSetInput

func (RecordSetMap) ElementType

func (RecordSetMap) ElementType() reflect.Type

func (RecordSetMap) ToOutput added in v6.65.1

func (i RecordSetMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*RecordSet]

func (RecordSetMap) ToRecordSetMapOutput

func (i RecordSetMap) ToRecordSetMapOutput() RecordSetMapOutput

func (RecordSetMap) ToRecordSetMapOutputWithContext

func (i RecordSetMap) ToRecordSetMapOutputWithContext(ctx context.Context) RecordSetMapOutput

type RecordSetMapInput

type RecordSetMapInput interface {
	pulumi.Input

	ToRecordSetMapOutput() RecordSetMapOutput
	ToRecordSetMapOutputWithContext(context.Context) RecordSetMapOutput
}

RecordSetMapInput is an input type that accepts RecordSetMap and RecordSetMapOutput values. You can construct a concrete instance of `RecordSetMapInput` via:

RecordSetMap{ "key": RecordSetArgs{...} }

type RecordSetMapOutput

type RecordSetMapOutput struct{ *pulumi.OutputState }

func (RecordSetMapOutput) ElementType

func (RecordSetMapOutput) ElementType() reflect.Type

func (RecordSetMapOutput) MapIndex

func (RecordSetMapOutput) ToOutput added in v6.65.1

func (RecordSetMapOutput) ToRecordSetMapOutput

func (o RecordSetMapOutput) ToRecordSetMapOutput() RecordSetMapOutput

func (RecordSetMapOutput) ToRecordSetMapOutputWithContext

func (o RecordSetMapOutput) ToRecordSetMapOutputWithContext(ctx context.Context) RecordSetMapOutput

type RecordSetOutput

type RecordSetOutput struct{ *pulumi.OutputState }

func (RecordSetOutput) ElementType

func (RecordSetOutput) ElementType() reflect.Type

func (RecordSetOutput) ManagedZone added in v6.23.0

func (o RecordSetOutput) ManagedZone() pulumi.StringOutput

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

func (RecordSetOutput) Name added in v6.23.0

The DNS name this record set will apply to.

func (RecordSetOutput) Project added in v6.23.0

func (o RecordSetOutput) Project() pulumi.StringOutput

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

func (RecordSetOutput) RoutingPolicy added in v6.24.0

The configuration for steering traffic based on query. Now you can specify either Weighted Round Robin(WRR) type or Geolocation(GEO) type. Structure is documented below.

func (RecordSetOutput) Rrdatas added in v6.23.0

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. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add \"\" inside the Terraform configuration string (e.g. "first255characters\"\"morecharacters").

func (RecordSetOutput) ToOutput added in v6.65.1

func (RecordSetOutput) ToRecordSetOutput

func (o RecordSetOutput) ToRecordSetOutput() RecordSetOutput

func (RecordSetOutput) ToRecordSetOutputWithContext

func (o RecordSetOutput) ToRecordSetOutputWithContext(ctx context.Context) RecordSetOutput

func (RecordSetOutput) Ttl added in v6.23.0

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

func (RecordSetOutput) Type added in v6.23.0

The DNS record set type.

***

type RecordSetRoutingPolicy added in v6.24.0

type RecordSetRoutingPolicy struct {
	// Specifies whether to enable fencing for geo queries.
	EnableGeoFencing *bool `pulumi:"enableGeoFencing"`
	// The configuration for Geolocation based routing policy.
	// Structure is document below.
	Geos []RecordSetRoutingPolicyGeo `pulumi:"geos"`
	// The configuration for a primary-backup policy with global to regional failover. Queries are responded to with the global primary targets, but if none of the primary targets are healthy, then we fallback to a regional failover policy.
	// Structure is document below.
	PrimaryBackup *RecordSetRoutingPolicyPrimaryBackup `pulumi:"primaryBackup"`
	// The configuration for Weighted Round Robin based routing policy.
	// Structure is document below.
	Wrrs []RecordSetRoutingPolicyWrr `pulumi:"wrrs"`
}

type RecordSetRoutingPolicyArgs added in v6.24.0

type RecordSetRoutingPolicyArgs struct {
	// Specifies whether to enable fencing for geo queries.
	EnableGeoFencing pulumi.BoolPtrInput `pulumi:"enableGeoFencing"`
	// The configuration for Geolocation based routing policy.
	// Structure is document below.
	Geos RecordSetRoutingPolicyGeoArrayInput `pulumi:"geos"`
	// The configuration for a primary-backup policy with global to regional failover. Queries are responded to with the global primary targets, but if none of the primary targets are healthy, then we fallback to a regional failover policy.
	// Structure is document below.
	PrimaryBackup RecordSetRoutingPolicyPrimaryBackupPtrInput `pulumi:"primaryBackup"`
	// The configuration for Weighted Round Robin based routing policy.
	// Structure is document below.
	Wrrs RecordSetRoutingPolicyWrrArrayInput `pulumi:"wrrs"`
}

func (RecordSetRoutingPolicyArgs) ElementType added in v6.24.0

func (RecordSetRoutingPolicyArgs) ElementType() reflect.Type

func (RecordSetRoutingPolicyArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyArgs) ToRecordSetRoutingPolicyOutput added in v6.24.0

func (i RecordSetRoutingPolicyArgs) ToRecordSetRoutingPolicyOutput() RecordSetRoutingPolicyOutput

func (RecordSetRoutingPolicyArgs) ToRecordSetRoutingPolicyOutputWithContext added in v6.24.0

func (i RecordSetRoutingPolicyArgs) ToRecordSetRoutingPolicyOutputWithContext(ctx context.Context) RecordSetRoutingPolicyOutput

func (RecordSetRoutingPolicyArgs) ToRecordSetRoutingPolicyPtrOutput added in v6.24.0

func (i RecordSetRoutingPolicyArgs) ToRecordSetRoutingPolicyPtrOutput() RecordSetRoutingPolicyPtrOutput

func (RecordSetRoutingPolicyArgs) ToRecordSetRoutingPolicyPtrOutputWithContext added in v6.24.0

func (i RecordSetRoutingPolicyArgs) ToRecordSetRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPtrOutput

type RecordSetRoutingPolicyGeo added in v6.24.0

type RecordSetRoutingPolicyGeo struct {
	// For A and AAAA types only. The list of targets to be health checked. These can be specified along with `rrdatas` within this item.
	// Structure is document below.
	HealthCheckedTargets *RecordSetRoutingPolicyGeoHealthCheckedTargets `pulumi:"healthCheckedTargets"`
	// The location name defined in Google Cloud.
	Location string `pulumi:"location"`
	// Same as `rrdatas` above.
	Rrdatas []string `pulumi:"rrdatas"`
}

type RecordSetRoutingPolicyGeoArgs added in v6.24.0

type RecordSetRoutingPolicyGeoArgs struct {
	// For A and AAAA types only. The list of targets to be health checked. These can be specified along with `rrdatas` within this item.
	// Structure is document below.
	HealthCheckedTargets RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrInput `pulumi:"healthCheckedTargets"`
	// The location name defined in Google Cloud.
	Location pulumi.StringInput `pulumi:"location"`
	// Same as `rrdatas` above.
	Rrdatas pulumi.StringArrayInput `pulumi:"rrdatas"`
}

func (RecordSetRoutingPolicyGeoArgs) ElementType added in v6.24.0

func (RecordSetRoutingPolicyGeoArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoArgs) ToRecordSetRoutingPolicyGeoOutput added in v6.24.0

func (i RecordSetRoutingPolicyGeoArgs) ToRecordSetRoutingPolicyGeoOutput() RecordSetRoutingPolicyGeoOutput

func (RecordSetRoutingPolicyGeoArgs) ToRecordSetRoutingPolicyGeoOutputWithContext added in v6.24.0

func (i RecordSetRoutingPolicyGeoArgs) ToRecordSetRoutingPolicyGeoOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoOutput

type RecordSetRoutingPolicyGeoArray added in v6.24.0

type RecordSetRoutingPolicyGeoArray []RecordSetRoutingPolicyGeoInput

func (RecordSetRoutingPolicyGeoArray) ElementType added in v6.24.0

func (RecordSetRoutingPolicyGeoArray) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoArray) ToRecordSetRoutingPolicyGeoArrayOutput added in v6.24.0

func (i RecordSetRoutingPolicyGeoArray) ToRecordSetRoutingPolicyGeoArrayOutput() RecordSetRoutingPolicyGeoArrayOutput

func (RecordSetRoutingPolicyGeoArray) ToRecordSetRoutingPolicyGeoArrayOutputWithContext added in v6.24.0

func (i RecordSetRoutingPolicyGeoArray) ToRecordSetRoutingPolicyGeoArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoArrayOutput

type RecordSetRoutingPolicyGeoArrayInput added in v6.24.0

type RecordSetRoutingPolicyGeoArrayInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyGeoArrayOutput() RecordSetRoutingPolicyGeoArrayOutput
	ToRecordSetRoutingPolicyGeoArrayOutputWithContext(context.Context) RecordSetRoutingPolicyGeoArrayOutput
}

RecordSetRoutingPolicyGeoArrayInput is an input type that accepts RecordSetRoutingPolicyGeoArray and RecordSetRoutingPolicyGeoArrayOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyGeoArrayInput` via:

RecordSetRoutingPolicyGeoArray{ RecordSetRoutingPolicyGeoArgs{...} }

type RecordSetRoutingPolicyGeoArrayOutput added in v6.24.0

type RecordSetRoutingPolicyGeoArrayOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyGeoArrayOutput) ElementType added in v6.24.0

func (RecordSetRoutingPolicyGeoArrayOutput) Index added in v6.24.0

func (RecordSetRoutingPolicyGeoArrayOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoArrayOutput) ToRecordSetRoutingPolicyGeoArrayOutput added in v6.24.0

func (o RecordSetRoutingPolicyGeoArrayOutput) ToRecordSetRoutingPolicyGeoArrayOutput() RecordSetRoutingPolicyGeoArrayOutput

func (RecordSetRoutingPolicyGeoArrayOutput) ToRecordSetRoutingPolicyGeoArrayOutputWithContext added in v6.24.0

func (o RecordSetRoutingPolicyGeoArrayOutput) ToRecordSetRoutingPolicyGeoArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoArrayOutput

type RecordSetRoutingPolicyGeoHealthCheckedTargets added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargets struct {
	// The list of internal load balancers to health check.
	// Structure is document below.
	InternalLoadBalancers []RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancer `pulumi:"internalLoadBalancers"`
}

type RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs struct {
	// The list of internal load balancers to health check.
	// Structure is document below.
	InternalLoadBalancers RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayInput `pulumi:"internalLoadBalancers"`
}

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutput added in v6.42.0

func (i RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutput() RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput added in v6.42.0

func (i RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput() RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInput added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutput() RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput
	ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutputWithContext(context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput
}

RecordSetRoutingPolicyGeoHealthCheckedTargetsInput is an input type that accepts RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs and RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyGeoHealthCheckedTargetsInput` via:

RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs{...}

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancer added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancer struct {
	// The frontend IP address of the load balancer.
	IpAddress string `pulumi:"ipAddress"`
	// The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]
	IpProtocol string `pulumi:"ipProtocol"`
	// The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]
	LoadBalancerType string `pulumi:"loadBalancerType"`
	// The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.
	NetworkUrl string `pulumi:"networkUrl"`
	// The configured port of the load balancer.
	Port string `pulumi:"port"`
	// The ID of the project in which the load balancer belongs.
	Project string `pulumi:"project"`
	// The region of the load balancer. Only needed for regional load balancers.
	Region *string `pulumi:"region"`
}

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs struct {
	// The frontend IP address of the load balancer.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]
	IpProtocol pulumi.StringInput `pulumi:"ipProtocol"`
	// The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]
	LoadBalancerType pulumi.StringInput `pulumi:"loadBalancerType"`
	// The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.
	NetworkUrl pulumi.StringInput `pulumi:"networkUrl"`
	// The configured port of the load balancer.
	Port pulumi.StringInput `pulumi:"port"`
	// The ID of the project in which the load balancer belongs.
	Project pulumi.StringInput `pulumi:"project"`
	// The region of the load balancer. Only needed for regional load balancers.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray []RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerInput

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray) ElementType added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayInput added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput() RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput
	ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext(context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput
}

RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayInput is an input type that accepts RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray and RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayInput` via:

RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArray{ RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs{...} }

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) Index added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerInput added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput() RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput
	ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutputWithContext(context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput
}

RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerInput is an input type that accepts RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs and RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerInput` via:

RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerArgs{...}

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) IpAddress added in v6.42.0

The frontend IP address of the load balancer.

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) IpProtocol added in v6.42.0

The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) LoadBalancerType added in v6.42.0

The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) NetworkUrl added in v6.42.0

The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) Port added in v6.42.0

The configured port of the load balancer.

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) Project added in v6.42.0

The ID of the project in which the load balancer belongs.

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) Region added in v6.42.0

The region of the load balancer. Only needed for regional load balancers.

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsInternalLoadBalancerOutput

type RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) InternalLoadBalancers added in v6.42.0

The list of internal load balancers to health check. Structure is document below.

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutput added in v6.42.0

func (o RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutput() RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput added in v6.42.0

func (o RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput() RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput

type RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrInput added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput() RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput
	ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutputWithContext(context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput
}

RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrInput is an input type that accepts RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs, RecordSetRoutingPolicyGeoHealthCheckedTargetsPtr and RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrInput` via:

        RecordSetRoutingPolicyGeoHealthCheckedTargetsArgs{...}

or:

        nil

type RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput added in v6.42.0

type RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput) Elem added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput) InternalLoadBalancers added in v6.42.0

The list of internal load balancers to health check. Structure is document below.

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput added in v6.42.0

func (RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput) ToRecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoHealthCheckedTargetsPtrOutput

type RecordSetRoutingPolicyGeoInput added in v6.24.0

type RecordSetRoutingPolicyGeoInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyGeoOutput() RecordSetRoutingPolicyGeoOutput
	ToRecordSetRoutingPolicyGeoOutputWithContext(context.Context) RecordSetRoutingPolicyGeoOutput
}

RecordSetRoutingPolicyGeoInput is an input type that accepts RecordSetRoutingPolicyGeoArgs and RecordSetRoutingPolicyGeoOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyGeoInput` via:

RecordSetRoutingPolicyGeoArgs{...}

type RecordSetRoutingPolicyGeoOutput added in v6.24.0

type RecordSetRoutingPolicyGeoOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyGeoOutput) ElementType added in v6.24.0

func (RecordSetRoutingPolicyGeoOutput) HealthCheckedTargets added in v6.42.0

For A and AAAA types only. The list of targets to be health checked. These can be specified along with `rrdatas` within this item. Structure is document below.

func (RecordSetRoutingPolicyGeoOutput) Location added in v6.24.0

The location name defined in Google Cloud.

func (RecordSetRoutingPolicyGeoOutput) Rrdatas added in v6.24.0

Same as `rrdatas` above.

func (RecordSetRoutingPolicyGeoOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyGeoOutput) ToRecordSetRoutingPolicyGeoOutput added in v6.24.0

func (o RecordSetRoutingPolicyGeoOutput) ToRecordSetRoutingPolicyGeoOutput() RecordSetRoutingPolicyGeoOutput

func (RecordSetRoutingPolicyGeoOutput) ToRecordSetRoutingPolicyGeoOutputWithContext added in v6.24.0

func (o RecordSetRoutingPolicyGeoOutput) ToRecordSetRoutingPolicyGeoOutputWithContext(ctx context.Context) RecordSetRoutingPolicyGeoOutput

type RecordSetRoutingPolicyInput added in v6.24.0

type RecordSetRoutingPolicyInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyOutput() RecordSetRoutingPolicyOutput
	ToRecordSetRoutingPolicyOutputWithContext(context.Context) RecordSetRoutingPolicyOutput
}

RecordSetRoutingPolicyInput is an input type that accepts RecordSetRoutingPolicyArgs and RecordSetRoutingPolicyOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyInput` via:

RecordSetRoutingPolicyArgs{...}

type RecordSetRoutingPolicyOutput added in v6.24.0

type RecordSetRoutingPolicyOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyOutput) ElementType added in v6.24.0

func (RecordSetRoutingPolicyOutput) EnableGeoFencing added in v6.42.0

func (o RecordSetRoutingPolicyOutput) EnableGeoFencing() pulumi.BoolPtrOutput

Specifies whether to enable fencing for geo queries.

func (RecordSetRoutingPolicyOutput) Geos added in v6.24.0

The configuration for Geolocation based routing policy. Structure is document below.

func (RecordSetRoutingPolicyOutput) PrimaryBackup added in v6.42.0

The configuration for a primary-backup policy with global to regional failover. Queries are responded to with the global primary targets, but if none of the primary targets are healthy, then we fallback to a regional failover policy. Structure is document below.

func (RecordSetRoutingPolicyOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyOutput) ToRecordSetRoutingPolicyOutput added in v6.24.0

func (o RecordSetRoutingPolicyOutput) ToRecordSetRoutingPolicyOutput() RecordSetRoutingPolicyOutput

func (RecordSetRoutingPolicyOutput) ToRecordSetRoutingPolicyOutputWithContext added in v6.24.0

func (o RecordSetRoutingPolicyOutput) ToRecordSetRoutingPolicyOutputWithContext(ctx context.Context) RecordSetRoutingPolicyOutput

func (RecordSetRoutingPolicyOutput) ToRecordSetRoutingPolicyPtrOutput added in v6.24.0

func (o RecordSetRoutingPolicyOutput) ToRecordSetRoutingPolicyPtrOutput() RecordSetRoutingPolicyPtrOutput

func (RecordSetRoutingPolicyOutput) ToRecordSetRoutingPolicyPtrOutputWithContext added in v6.24.0

func (o RecordSetRoutingPolicyOutput) ToRecordSetRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPtrOutput

func (RecordSetRoutingPolicyOutput) Wrrs added in v6.24.0

The configuration for Weighted Round Robin based routing policy. Structure is document below.

type RecordSetRoutingPolicyPrimaryBackup added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackup struct {
	// The backup geo targets, which provide a regional failover policy for the otherwise global primary targets.
	// Structure is document above.
	BackupGeos []RecordSetRoutingPolicyPrimaryBackupBackupGeo `pulumi:"backupGeos"`
	// Specifies whether to enable fencing for backup geo queries.
	EnableGeoFencingForBackups *bool `pulumi:"enableGeoFencingForBackups"`
	// The list of global primary targets to be health checked.
	// Structure is document below.
	Primary RecordSetRoutingPolicyPrimaryBackupPrimary `pulumi:"primary"`
	// Specifies the percentage of traffic to send to the backup targets even when the primary targets are healthy.
	TrickleRatio *float64 `pulumi:"trickleRatio"`
}

type RecordSetRoutingPolicyPrimaryBackupArgs added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupArgs struct {
	// The backup geo targets, which provide a regional failover policy for the otherwise global primary targets.
	// Structure is document above.
	BackupGeos RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayInput `pulumi:"backupGeos"`
	// Specifies whether to enable fencing for backup geo queries.
	EnableGeoFencingForBackups pulumi.BoolPtrInput `pulumi:"enableGeoFencingForBackups"`
	// The list of global primary targets to be health checked.
	// Structure is document below.
	Primary RecordSetRoutingPolicyPrimaryBackupPrimaryInput `pulumi:"primary"`
	// Specifies the percentage of traffic to send to the backup targets even when the primary targets are healthy.
	TrickleRatio pulumi.Float64PtrInput `pulumi:"trickleRatio"`
}

func (RecordSetRoutingPolicyPrimaryBackupArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupArgs) ToRecordSetRoutingPolicyPrimaryBackupOutput added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupArgs) ToRecordSetRoutingPolicyPrimaryBackupOutput() RecordSetRoutingPolicyPrimaryBackupOutput

func (RecordSetRoutingPolicyPrimaryBackupArgs) ToRecordSetRoutingPolicyPrimaryBackupOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupArgs) ToRecordSetRoutingPolicyPrimaryBackupOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupOutput

func (RecordSetRoutingPolicyPrimaryBackupArgs) ToRecordSetRoutingPolicyPrimaryBackupPtrOutput added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupArgs) ToRecordSetRoutingPolicyPrimaryBackupPtrOutput() RecordSetRoutingPolicyPrimaryBackupPtrOutput

func (RecordSetRoutingPolicyPrimaryBackupArgs) ToRecordSetRoutingPolicyPrimaryBackupPtrOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupArgs) ToRecordSetRoutingPolicyPrimaryBackupPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPtrOutput

type RecordSetRoutingPolicyPrimaryBackupBackupGeo added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeo struct {
	// For A and AAAA types only. The list of targets to be health checked. These can be specified along with `rrdatas` within this item.
	// Structure is document below.
	HealthCheckedTargets *RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargets `pulumi:"healthCheckedTargets"`
	// The location name defined in Google Cloud.
	Location string   `pulumi:"location"`
	Rrdatas  []string `pulumi:"rrdatas"`
}

type RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs struct {
	// For A and AAAA types only. The list of targets to be health checked. These can be specified along with `rrdatas` within this item.
	// Structure is document below.
	HealthCheckedTargets RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrInput `pulumi:"healthCheckedTargets"`
	// The location name defined in Google Cloud.
	Location pulumi.StringInput      `pulumi:"location"`
	Rrdatas  pulumi.StringArrayInput `pulumi:"rrdatas"`
}

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutput added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput

type RecordSetRoutingPolicyPrimaryBackupBackupGeoArray added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoArray []RecordSetRoutingPolicyPrimaryBackupBackupGeoInput

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArray) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArray) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArray) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupBackupGeoArray) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArray) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupBackupGeoArray) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput

type RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput
	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput
}

RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupBackupGeoArray and RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayInput` via:

RecordSetRoutingPolicyPrimaryBackupBackupGeoArray{ RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs{...} }

type RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput) Index added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoArrayOutput

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargets added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargets struct {
	// The list of internal load balancers to health check.
	// Structure is document below.
	InternalLoadBalancers []RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancer `pulumi:"internalLoadBalancers"`
}

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs struct {
	// The list of internal load balancers to health check.
	// Structure is document below.
	InternalLoadBalancers RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayInput `pulumi:"internalLoadBalancers"`
}

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput
	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput
}

RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs and RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInput` via:

RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs{...}

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancer added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancer struct {
	// The frontend IP address of the load balancer.
	IpAddress string `pulumi:"ipAddress"`
	// The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]
	IpProtocol string `pulumi:"ipProtocol"`
	// The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]
	LoadBalancerType string `pulumi:"loadBalancerType"`
	// The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.
	NetworkUrl string `pulumi:"networkUrl"`
	// The configured port of the load balancer.
	Port string `pulumi:"port"`
	// The ID of the project in which the load balancer belongs.
	Project string `pulumi:"project"`
	// The region of the load balancer. Only needed for regional load balancers.
	Region *string `pulumi:"region"`
}

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs struct {
	// The frontend IP address of the load balancer.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]
	IpProtocol pulumi.StringInput `pulumi:"ipProtocol"`
	// The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]
	LoadBalancerType pulumi.StringInput `pulumi:"loadBalancerType"`
	// The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.
	NetworkUrl pulumi.StringInput `pulumi:"networkUrl"`
	// The configured port of the load balancer.
	Port pulumi.StringInput `pulumi:"port"`
	// The ID of the project in which the load balancer belongs.
	Project pulumi.StringInput `pulumi:"project"`
	// The region of the load balancer. Only needed for regional load balancers.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutputWithContext added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArray added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArray []RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerInput

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArray) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArray) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArray) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArray) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput
	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput
}

RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArray and RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayInput` via:

RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArray{ RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs{...} }

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) Index added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput
	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput
}

RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs and RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerInput` via:

RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerArgs{...}

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) IpAddress added in v6.42.0

The frontend IP address of the load balancer.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) IpProtocol added in v6.42.0

The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) LoadBalancerType added in v6.42.0

The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) NetworkUrl added in v6.42.0

The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) Port added in v6.42.0

The configured port of the load balancer.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) Project added in v6.42.0

The ID of the project in which the load balancer belongs.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) Region added in v6.42.0

The region of the load balancer. Only needed for regional load balancers.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsInternalLoadBalancerOutputWithContext added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) InternalLoadBalancers added in v6.42.0

The list of internal load balancers to health check. Structure is document below.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput
	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput
}

RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs, RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtr and RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrInput` via:

        RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsArgs{...}

or:

        nil

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput) Elem added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput) InternalLoadBalancers added in v6.42.0

The list of internal load balancers to health check. Structure is document below.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput
	ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput
}

RecordSetRoutingPolicyPrimaryBackupBackupGeoInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs and RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupBackupGeoInput` via:

RecordSetRoutingPolicyPrimaryBackupBackupGeoArgs{...}

type RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) HealthCheckedTargets added in v6.42.0

For A and AAAA types only. The list of targets to be health checked. These can be specified along with `rrdatas` within this item. Structure is document below.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) Location added in v6.42.0

The location name defined in Google Cloud.

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) Rrdatas added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutput added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutput() RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput

func (RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput) ToRecordSetRoutingPolicyPrimaryBackupBackupGeoOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupBackupGeoOutput

type RecordSetRoutingPolicyPrimaryBackupInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupOutput() RecordSetRoutingPolicyPrimaryBackupOutput
	ToRecordSetRoutingPolicyPrimaryBackupOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupOutput
}

RecordSetRoutingPolicyPrimaryBackupInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupArgs and RecordSetRoutingPolicyPrimaryBackupOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupInput` via:

RecordSetRoutingPolicyPrimaryBackupArgs{...}

type RecordSetRoutingPolicyPrimaryBackupOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupOutput) BackupGeos added in v6.42.0

The backup geo targets, which provide a regional failover policy for the otherwise global primary targets. Structure is document above.

func (RecordSetRoutingPolicyPrimaryBackupOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupOutput) EnableGeoFencingForBackups added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupOutput) EnableGeoFencingForBackups() pulumi.BoolPtrOutput

Specifies whether to enable fencing for backup geo queries.

func (RecordSetRoutingPolicyPrimaryBackupOutput) Primary added in v6.42.0

The list of global primary targets to be health checked. Structure is document below.

func (RecordSetRoutingPolicyPrimaryBackupOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupOutput) ToRecordSetRoutingPolicyPrimaryBackupOutput added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupOutput) ToRecordSetRoutingPolicyPrimaryBackupOutput() RecordSetRoutingPolicyPrimaryBackupOutput

func (RecordSetRoutingPolicyPrimaryBackupOutput) ToRecordSetRoutingPolicyPrimaryBackupOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupOutput) ToRecordSetRoutingPolicyPrimaryBackupOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupOutput

func (RecordSetRoutingPolicyPrimaryBackupOutput) ToRecordSetRoutingPolicyPrimaryBackupPtrOutput added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupOutput) ToRecordSetRoutingPolicyPrimaryBackupPtrOutput() RecordSetRoutingPolicyPrimaryBackupPtrOutput

func (RecordSetRoutingPolicyPrimaryBackupOutput) ToRecordSetRoutingPolicyPrimaryBackupPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupOutput) ToRecordSetRoutingPolicyPrimaryBackupPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPtrOutput

func (RecordSetRoutingPolicyPrimaryBackupOutput) TrickleRatio added in v6.42.0

Specifies the percentage of traffic to send to the backup targets even when the primary targets are healthy.

type RecordSetRoutingPolicyPrimaryBackupPrimary added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimary struct {
	// The list of internal load balancers to health check.
	// Structure is document below.
	InternalLoadBalancers []RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancer `pulumi:"internalLoadBalancers"`
}

type RecordSetRoutingPolicyPrimaryBackupPrimaryArgs added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryArgs struct {
	// The list of internal load balancers to health check.
	// Structure is document below.
	InternalLoadBalancers RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayInput `pulumi:"internalLoadBalancers"`
}

func (RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutput added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryOutput

func (RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryOutput

func (RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput

func (RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupPrimaryArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput

type RecordSetRoutingPolicyPrimaryBackupPrimaryInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryOutput
	ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryOutput
}

RecordSetRoutingPolicyPrimaryBackupPrimaryInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupPrimaryArgs and RecordSetRoutingPolicyPrimaryBackupPrimaryOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupPrimaryInput` via:

RecordSetRoutingPolicyPrimaryBackupPrimaryArgs{...}

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancer added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancer struct {
	// The frontend IP address of the load balancer.
	IpAddress string `pulumi:"ipAddress"`
	// The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]
	IpProtocol string `pulumi:"ipProtocol"`
	// The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]
	LoadBalancerType string `pulumi:"loadBalancerType"`
	// The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.
	NetworkUrl string `pulumi:"networkUrl"`
	// The configured port of the load balancer.
	Port string `pulumi:"port"`
	// The ID of the project in which the load balancer belongs.
	Project string `pulumi:"project"`
	// The region of the load balancer. Only needed for regional load balancers.
	Region *string `pulumi:"region"`
}

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs struct {
	// The frontend IP address of the load balancer.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]
	IpProtocol pulumi.StringInput `pulumi:"ipProtocol"`
	// The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]
	LoadBalancerType pulumi.StringInput `pulumi:"loadBalancerType"`
	// The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.
	NetworkUrl pulumi.StringInput `pulumi:"networkUrl"`
	// The configured port of the load balancer.
	Port pulumi.StringInput `pulumi:"port"`
	// The ID of the project in which the load balancer belongs.
	Project pulumi.StringInput `pulumi:"project"`
	// The region of the load balancer. Only needed for regional load balancers.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray []RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerInput

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput
	ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput
}

RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray and RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayInput` via:

RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArray{ RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs{...} }

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput) Index added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArrayOutputWithContext added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput
	ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput
}

RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs and RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerInput` via:

RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerArgs{...}

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) IpAddress added in v6.42.0

The frontend IP address of the load balancer.

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) IpProtocol added in v6.42.0

The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) LoadBalancerType added in v6.42.0

The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) NetworkUrl added in v6.42.0

The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) Port added in v6.42.0

The configured port of the load balancer.

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) Project added in v6.42.0

The ID of the project in which the load balancer belongs.

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) Region added in v6.42.0

The region of the load balancer. Only needed for regional load balancers.

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryInternalLoadBalancerOutput

type RecordSetRoutingPolicyPrimaryBackupPrimaryOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) InternalLoadBalancers added in v6.42.0

The list of internal load balancers to health check. Structure is document below.

func (RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutput added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryOutput

func (RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryOutput

func (RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput

func (RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPrimaryOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput

type RecordSetRoutingPolicyPrimaryBackupPrimaryPtrInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryPtrInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput
	ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput
}

RecordSetRoutingPolicyPrimaryBackupPrimaryPtrInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupPrimaryArgs, RecordSetRoutingPolicyPrimaryBackupPrimaryPtr and RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupPrimaryPtrInput` via:

        RecordSetRoutingPolicyPrimaryBackupPrimaryArgs{...}

or:

        nil

type RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput) Elem added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput) InternalLoadBalancers added in v6.42.0

The list of internal load balancers to health check. Structure is document below.

func (RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput() RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput

func (RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPrimaryPtrOutput

type RecordSetRoutingPolicyPrimaryBackupPtrInput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPtrInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPrimaryBackupPtrOutput() RecordSetRoutingPolicyPrimaryBackupPtrOutput
	ToRecordSetRoutingPolicyPrimaryBackupPtrOutputWithContext(context.Context) RecordSetRoutingPolicyPrimaryBackupPtrOutput
}

RecordSetRoutingPolicyPrimaryBackupPtrInput is an input type that accepts RecordSetRoutingPolicyPrimaryBackupArgs, RecordSetRoutingPolicyPrimaryBackupPtr and RecordSetRoutingPolicyPrimaryBackupPtrOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPrimaryBackupPtrInput` via:

        RecordSetRoutingPolicyPrimaryBackupArgs{...}

or:

        nil

type RecordSetRoutingPolicyPrimaryBackupPtrOutput added in v6.42.0

type RecordSetRoutingPolicyPrimaryBackupPtrOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) BackupGeos added in v6.42.0

The backup geo targets, which provide a regional failover policy for the otherwise global primary targets. Structure is document above.

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) Elem added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) EnableGeoFencingForBackups added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPtrOutput) EnableGeoFencingForBackups() pulumi.BoolPtrOutput

Specifies whether to enable fencing for backup geo queries.

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) Primary added in v6.42.0

The list of global primary targets to be health checked. Structure is document below.

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupPtrOutput added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupPtrOutput() RecordSetRoutingPolicyPrimaryBackupPtrOutput

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyPrimaryBackupPtrOutput) ToRecordSetRoutingPolicyPrimaryBackupPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPrimaryBackupPtrOutput

func (RecordSetRoutingPolicyPrimaryBackupPtrOutput) TrickleRatio added in v6.42.0

Specifies the percentage of traffic to send to the backup targets even when the primary targets are healthy.

type RecordSetRoutingPolicyPtrInput added in v6.24.0

type RecordSetRoutingPolicyPtrInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyPtrOutput() RecordSetRoutingPolicyPtrOutput
	ToRecordSetRoutingPolicyPtrOutputWithContext(context.Context) RecordSetRoutingPolicyPtrOutput
}

RecordSetRoutingPolicyPtrInput is an input type that accepts RecordSetRoutingPolicyArgs, RecordSetRoutingPolicyPtr and RecordSetRoutingPolicyPtrOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyPtrInput` via:

        RecordSetRoutingPolicyArgs{...}

or:

        nil

func RecordSetRoutingPolicyPtr added in v6.24.0

func RecordSetRoutingPolicyPtr(v *RecordSetRoutingPolicyArgs) RecordSetRoutingPolicyPtrInput

type RecordSetRoutingPolicyPtrOutput added in v6.24.0

type RecordSetRoutingPolicyPtrOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyPtrOutput) Elem added in v6.24.0

func (RecordSetRoutingPolicyPtrOutput) ElementType added in v6.24.0

func (RecordSetRoutingPolicyPtrOutput) EnableGeoFencing added in v6.42.0

Specifies whether to enable fencing for geo queries.

func (RecordSetRoutingPolicyPtrOutput) Geos added in v6.24.0

The configuration for Geolocation based routing policy. Structure is document below.

func (RecordSetRoutingPolicyPtrOutput) PrimaryBackup added in v6.42.0

The configuration for a primary-backup policy with global to regional failover. Queries are responded to with the global primary targets, but if none of the primary targets are healthy, then we fallback to a regional failover policy. Structure is document below.

func (RecordSetRoutingPolicyPtrOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyPtrOutput) ToRecordSetRoutingPolicyPtrOutput added in v6.24.0

func (o RecordSetRoutingPolicyPtrOutput) ToRecordSetRoutingPolicyPtrOutput() RecordSetRoutingPolicyPtrOutput

func (RecordSetRoutingPolicyPtrOutput) ToRecordSetRoutingPolicyPtrOutputWithContext added in v6.24.0

func (o RecordSetRoutingPolicyPtrOutput) ToRecordSetRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyPtrOutput

func (RecordSetRoutingPolicyPtrOutput) Wrrs added in v6.24.0

The configuration for Weighted Round Robin based routing policy. Structure is document below.

type RecordSetRoutingPolicyWrr added in v6.24.0

type RecordSetRoutingPolicyWrr struct {
	// The list of targets to be health checked. Note that if DNSSEC is enabled for this zone, only one of `rrdatas` or `healthCheckedTargets` can be set.
	// Structure is document below.
	HealthCheckedTargets *RecordSetRoutingPolicyWrrHealthCheckedTargets `pulumi:"healthCheckedTargets"`
	// Same as `rrdatas` above.
	Rrdatas []string `pulumi:"rrdatas"`
	// The ratio of traffic routed to the target.
	Weight float64 `pulumi:"weight"`
}

type RecordSetRoutingPolicyWrrArgs added in v6.24.0

type RecordSetRoutingPolicyWrrArgs struct {
	// The list of targets to be health checked. Note that if DNSSEC is enabled for this zone, only one of `rrdatas` or `healthCheckedTargets` can be set.
	// Structure is document below.
	HealthCheckedTargets RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrInput `pulumi:"healthCheckedTargets"`
	// Same as `rrdatas` above.
	Rrdatas pulumi.StringArrayInput `pulumi:"rrdatas"`
	// The ratio of traffic routed to the target.
	Weight pulumi.Float64Input `pulumi:"weight"`
}

func (RecordSetRoutingPolicyWrrArgs) ElementType added in v6.24.0

func (RecordSetRoutingPolicyWrrArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrArgs) ToRecordSetRoutingPolicyWrrOutput added in v6.24.0

func (i RecordSetRoutingPolicyWrrArgs) ToRecordSetRoutingPolicyWrrOutput() RecordSetRoutingPolicyWrrOutput

func (RecordSetRoutingPolicyWrrArgs) ToRecordSetRoutingPolicyWrrOutputWithContext added in v6.24.0

func (i RecordSetRoutingPolicyWrrArgs) ToRecordSetRoutingPolicyWrrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrOutput

type RecordSetRoutingPolicyWrrArray added in v6.24.0

type RecordSetRoutingPolicyWrrArray []RecordSetRoutingPolicyWrrInput

func (RecordSetRoutingPolicyWrrArray) ElementType added in v6.24.0

func (RecordSetRoutingPolicyWrrArray) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrArray) ToRecordSetRoutingPolicyWrrArrayOutput added in v6.24.0

func (i RecordSetRoutingPolicyWrrArray) ToRecordSetRoutingPolicyWrrArrayOutput() RecordSetRoutingPolicyWrrArrayOutput

func (RecordSetRoutingPolicyWrrArray) ToRecordSetRoutingPolicyWrrArrayOutputWithContext added in v6.24.0

func (i RecordSetRoutingPolicyWrrArray) ToRecordSetRoutingPolicyWrrArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrArrayOutput

type RecordSetRoutingPolicyWrrArrayInput added in v6.24.0

type RecordSetRoutingPolicyWrrArrayInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyWrrArrayOutput() RecordSetRoutingPolicyWrrArrayOutput
	ToRecordSetRoutingPolicyWrrArrayOutputWithContext(context.Context) RecordSetRoutingPolicyWrrArrayOutput
}

RecordSetRoutingPolicyWrrArrayInput is an input type that accepts RecordSetRoutingPolicyWrrArray and RecordSetRoutingPolicyWrrArrayOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyWrrArrayInput` via:

RecordSetRoutingPolicyWrrArray{ RecordSetRoutingPolicyWrrArgs{...} }

type RecordSetRoutingPolicyWrrArrayOutput added in v6.24.0

type RecordSetRoutingPolicyWrrArrayOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyWrrArrayOutput) ElementType added in v6.24.0

func (RecordSetRoutingPolicyWrrArrayOutput) Index added in v6.24.0

func (RecordSetRoutingPolicyWrrArrayOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrArrayOutput) ToRecordSetRoutingPolicyWrrArrayOutput added in v6.24.0

func (o RecordSetRoutingPolicyWrrArrayOutput) ToRecordSetRoutingPolicyWrrArrayOutput() RecordSetRoutingPolicyWrrArrayOutput

func (RecordSetRoutingPolicyWrrArrayOutput) ToRecordSetRoutingPolicyWrrArrayOutputWithContext added in v6.24.0

func (o RecordSetRoutingPolicyWrrArrayOutput) ToRecordSetRoutingPolicyWrrArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrArrayOutput

type RecordSetRoutingPolicyWrrHealthCheckedTargets added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargets struct {
	// The list of internal load balancers to health check.
	// Structure is document below.
	InternalLoadBalancers []RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancer `pulumi:"internalLoadBalancers"`
}

type RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs struct {
	// The list of internal load balancers to health check.
	// Structure is document below.
	InternalLoadBalancers RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayInput `pulumi:"internalLoadBalancers"`
}

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutput added in v6.42.0

func (i RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutput() RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput added in v6.42.0

func (i RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput() RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInput added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutput() RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput
	ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutputWithContext(context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput
}

RecordSetRoutingPolicyWrrHealthCheckedTargetsInput is an input type that accepts RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs and RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyWrrHealthCheckedTargetsInput` via:

RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs{...}

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancer added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancer struct {
	// The frontend IP address of the load balancer.
	IpAddress string `pulumi:"ipAddress"`
	// The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]
	IpProtocol string `pulumi:"ipProtocol"`
	// The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]
	LoadBalancerType string `pulumi:"loadBalancerType"`
	// The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.
	NetworkUrl string `pulumi:"networkUrl"`
	// The configured port of the load balancer.
	Port string `pulumi:"port"`
	// The ID of the project in which the load balancer belongs.
	Project string `pulumi:"project"`
	// The region of the load balancer. Only needed for regional load balancers.
	Region *string `pulumi:"region"`
}

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs struct {
	// The frontend IP address of the load balancer.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]
	IpProtocol pulumi.StringInput `pulumi:"ipProtocol"`
	// The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]
	LoadBalancerType pulumi.StringInput `pulumi:"loadBalancerType"`
	// The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.
	NetworkUrl pulumi.StringInput `pulumi:"networkUrl"`
	// The configured port of the load balancer.
	Port pulumi.StringInput `pulumi:"port"`
	// The ID of the project in which the load balancer belongs.
	Project pulumi.StringInput `pulumi:"project"`
	// The region of the load balancer. Only needed for regional load balancers.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs) ElementType added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray []RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerInput

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray) ElementType added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext added in v6.42.0

func (i RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayInput added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput() RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput
	ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext(context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput
}

RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayInput is an input type that accepts RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray and RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayInput` via:

RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArray{ RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs{...} }

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput) Index added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArrayOutputWithContext added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerInput added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput() RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput
	ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutputWithContext(context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput
}

RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerInput is an input type that accepts RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs and RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerInput` via:

RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerArgs{...}

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) IpAddress added in v6.42.0

The frontend IP address of the load balancer.

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) IpProtocol added in v6.42.0

The configured IP protocol of the load balancer. This value is case-sensitive. Possible values: ["tcp", "udp"]

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) LoadBalancerType added in v6.42.0

The type of load balancer. This value is case-sensitive. Possible values: ["regionalL4ilb", "regionalL7ilb", "globalL7ilb"]

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) NetworkUrl added in v6.42.0

The fully qualified url of the network in which the load balancer belongs. This should be formatted like `projects/{project}/global/networks/{network}` or `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`.

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) Port added in v6.42.0

The configured port of the load balancer.

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) Project added in v6.42.0

The ID of the project in which the load balancer belongs.

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) Region added in v6.42.0

The region of the load balancer. Only needed for regional load balancers.

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsInternalLoadBalancerOutput

type RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) InternalLoadBalancers added in v6.42.0

The list of internal load balancers to health check. Structure is document below.

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutput added in v6.42.0

func (o RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutput() RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput added in v6.42.0

func (o RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput() RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyWrrHealthCheckedTargetsOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput

type RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrInput added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput() RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput
	ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutputWithContext(context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput
}

RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrInput is an input type that accepts RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs, RecordSetRoutingPolicyWrrHealthCheckedTargetsPtr and RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrInput` via:

        RecordSetRoutingPolicyWrrHealthCheckedTargetsArgs{...}

or:

        nil

type RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput added in v6.42.0

type RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput) Elem added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput) ElementType added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput) InternalLoadBalancers added in v6.42.0

The list of internal load balancers to health check. Structure is document below.

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput added in v6.42.0

func (RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutputWithContext added in v6.42.0

func (o RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput) ToRecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrHealthCheckedTargetsPtrOutput

type RecordSetRoutingPolicyWrrInput added in v6.24.0

type RecordSetRoutingPolicyWrrInput interface {
	pulumi.Input

	ToRecordSetRoutingPolicyWrrOutput() RecordSetRoutingPolicyWrrOutput
	ToRecordSetRoutingPolicyWrrOutputWithContext(context.Context) RecordSetRoutingPolicyWrrOutput
}

RecordSetRoutingPolicyWrrInput is an input type that accepts RecordSetRoutingPolicyWrrArgs and RecordSetRoutingPolicyWrrOutput values. You can construct a concrete instance of `RecordSetRoutingPolicyWrrInput` via:

RecordSetRoutingPolicyWrrArgs{...}

type RecordSetRoutingPolicyWrrOutput added in v6.24.0

type RecordSetRoutingPolicyWrrOutput struct{ *pulumi.OutputState }

func (RecordSetRoutingPolicyWrrOutput) ElementType added in v6.24.0

func (RecordSetRoutingPolicyWrrOutput) HealthCheckedTargets added in v6.42.0

The list of targets to be health checked. Note that if DNSSEC is enabled for this zone, only one of `rrdatas` or `healthCheckedTargets` can be set. Structure is document below.

func (RecordSetRoutingPolicyWrrOutput) Rrdatas added in v6.24.0

Same as `rrdatas` above.

func (RecordSetRoutingPolicyWrrOutput) ToOutput added in v6.65.1

func (RecordSetRoutingPolicyWrrOutput) ToRecordSetRoutingPolicyWrrOutput added in v6.24.0

func (o RecordSetRoutingPolicyWrrOutput) ToRecordSetRoutingPolicyWrrOutput() RecordSetRoutingPolicyWrrOutput

func (RecordSetRoutingPolicyWrrOutput) ToRecordSetRoutingPolicyWrrOutputWithContext added in v6.24.0

func (o RecordSetRoutingPolicyWrrOutput) ToRecordSetRoutingPolicyWrrOutputWithContext(ctx context.Context) RecordSetRoutingPolicyWrrOutput

func (RecordSetRoutingPolicyWrrOutput) Weight added in v6.24.0

The ratio of traffic routed to the target.

type RecordSetState

type RecordSetState struct {
	// The name of the zone in which this record set will
	// reside.
	ManagedZone pulumi.StringPtrInput
	// The DNS name this record set will apply to.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The configuration for steering traffic based on query.
	// Now you can specify either Weighted Round Robin(WRR) type or Geolocation(GEO) type.
	// Structure is documented below.
	RoutingPolicy RecordSetRoutingPolicyPtrInput
	// 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. To specify a single
	// record value longer than 255 characters such as a TXT record for DKIM, add \"\" inside the Terraform configuration
	// string (e.g. "first255characters\"\"morecharacters").
	Rrdatas pulumi.StringArrayInput
	// The time-to-live of this record set (seconds).
	Ttl pulumi.IntPtrInput
	// The DNS record set type.
	//
	// ***
	Type pulumi.StringPtrInput
}

func (RecordSetState) ElementType

func (RecordSetState) ElementType() reflect.Type

type ResponsePolicy added in v6.15.1

type ResponsePolicy struct {
	pulumi.CustomResourceState

	// The description of the response policy, such as `My new response policy`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The list of Google Kubernetes Engine clusters that can see this zone.
	// Structure is documented below.
	GkeClusters ResponsePolicyGkeClusterArrayOutput `pulumi:"gkeClusters"`
	// The list of network names specifying networks to which this policy is applied.
	// Structure is documented below.
	Networks ResponsePolicyNetworkArrayOutput `pulumi:"networks"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The user assigned name for this Response Policy, such as `myresponsepolicy`.
	//
	// ***
	ResponsePolicyName pulumi.StringOutput `pulumi:"responsePolicyName"`
}

A Response Policy is a collection of selectors that apply to queries made against one or more Virtual Private Cloud networks.

## Example Usage ### Dns Response Policy Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewNetwork(ctx, "network-1", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewNetwork(ctx, "network-2", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewSubnetwork(ctx, "subnetwork-1", &compute.SubnetworkArgs{
			Network:               network_1.Name,
			IpCidrRange:           pulumi.String("10.0.36.0/24"),
			Region:                pulumi.String("us-central1"),
			PrivateIpGoogleAccess: pulumi.Bool(true),
			SecondaryIpRanges: compute.SubnetworkSecondaryIpRangeArray{
				&compute.SubnetworkSecondaryIpRangeArgs{
					RangeName:   pulumi.String("pod"),
					IpCidrRange: pulumi.String("10.0.0.0/19"),
				},
				&compute.SubnetworkSecondaryIpRangeArgs{
					RangeName:   pulumi.String("svc"),
					IpCidrRange: pulumi.String("10.0.32.0/22"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = container.NewCluster(ctx, "cluster-1", &container.ClusterArgs{
			Location:         pulumi.String("us-central1-c"),
			InitialNodeCount: pulumi.Int(1),
			NetworkingMode:   pulumi.String("VPC_NATIVE"),
			DefaultSnatStatus: &container.ClusterDefaultSnatStatusArgs{
				Disabled: pulumi.Bool(true),
			},
			Network:    network_1.Name,
			Subnetwork: subnetwork_1.Name,
			PrivateClusterConfig: &container.ClusterPrivateClusterConfigArgs{
				EnablePrivateEndpoint: pulumi.Bool(true),
				EnablePrivateNodes:    pulumi.Bool(true),
				MasterIpv4CidrBlock:   pulumi.String("10.42.0.0/28"),
				MasterGlobalAccessConfig: &container.ClusterPrivateClusterConfigMasterGlobalAccessConfigArgs{
					Enabled: pulumi.Bool(true),
				},
			},
			MasterAuthorizedNetworksConfig: nil,
			IpAllocationPolicy: &container.ClusterIpAllocationPolicyArgs{
				ClusterSecondaryRangeName: subnetwork_1.SecondaryIpRanges.ApplyT(func(secondaryIpRanges []compute.SubnetworkSecondaryIpRange) (*string, error) {
					return &secondaryIpRanges[0].RangeName, nil
				}).(pulumi.StringPtrOutput),
				ServicesSecondaryRangeName: subnetwork_1.SecondaryIpRanges.ApplyT(func(secondaryIpRanges []compute.SubnetworkSecondaryIpRange) (*string, error) {
					return &secondaryIpRanges[1].RangeName, nil
				}).(pulumi.StringPtrOutput),
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewResponsePolicy(ctx, "example-response-policy", &dns.ResponsePolicyArgs{
			ResponsePolicyName: pulumi.String("example-response-policy"),
			Networks: dns.ResponsePolicyNetworkArray{
				&dns.ResponsePolicyNetworkArgs{
					NetworkUrl: network_1.ID(),
				},
				&dns.ResponsePolicyNetworkArgs{
					NetworkUrl: network_2.ID(),
				},
			},
			GkeClusters: dns.ResponsePolicyGkeClusterArray{
				&dns.ResponsePolicyGkeClusterArgs{
					GkeClusterName: cluster_1.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ResponsePolicy can be imported using any of these accepted formats

```sh

$ pulumi import gcp:dns/responsePolicy:ResponsePolicy default projects/{{project}}/responsePolicies/{{response_policy_name}}

```

```sh

$ pulumi import gcp:dns/responsePolicy:ResponsePolicy default {{project}}/{{response_policy_name}}

```

```sh

$ pulumi import gcp:dns/responsePolicy:ResponsePolicy default {{response_policy_name}}

```

func GetResponsePolicy added in v6.15.1

func GetResponsePolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResponsePolicyState, opts ...pulumi.ResourceOption) (*ResponsePolicy, error)

GetResponsePolicy gets an existing ResponsePolicy 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 NewResponsePolicy added in v6.15.1

func NewResponsePolicy(ctx *pulumi.Context,
	name string, args *ResponsePolicyArgs, opts ...pulumi.ResourceOption) (*ResponsePolicy, error)

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

func (*ResponsePolicy) ElementType added in v6.15.1

func (*ResponsePolicy) ElementType() reflect.Type

func (*ResponsePolicy) ToOutput added in v6.65.1

func (*ResponsePolicy) ToResponsePolicyOutput added in v6.15.1

func (i *ResponsePolicy) ToResponsePolicyOutput() ResponsePolicyOutput

func (*ResponsePolicy) ToResponsePolicyOutputWithContext added in v6.15.1

func (i *ResponsePolicy) ToResponsePolicyOutputWithContext(ctx context.Context) ResponsePolicyOutput

type ResponsePolicyArgs added in v6.15.1

type ResponsePolicyArgs struct {
	// The description of the response policy, such as `My new response policy`.
	Description pulumi.StringPtrInput
	// The list of Google Kubernetes Engine clusters that can see this zone.
	// Structure is documented below.
	GkeClusters ResponsePolicyGkeClusterArrayInput
	// The list of network names specifying networks to which this policy is applied.
	// Structure is documented below.
	Networks ResponsePolicyNetworkArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The user assigned name for this Response Policy, such as `myresponsepolicy`.
	//
	// ***
	ResponsePolicyName pulumi.StringInput
}

The set of arguments for constructing a ResponsePolicy resource.

func (ResponsePolicyArgs) ElementType added in v6.15.1

func (ResponsePolicyArgs) ElementType() reflect.Type

type ResponsePolicyArray added in v6.15.1

type ResponsePolicyArray []ResponsePolicyInput

func (ResponsePolicyArray) ElementType added in v6.15.1

func (ResponsePolicyArray) ElementType() reflect.Type

func (ResponsePolicyArray) ToOutput added in v6.65.1

func (ResponsePolicyArray) ToResponsePolicyArrayOutput added in v6.15.1

func (i ResponsePolicyArray) ToResponsePolicyArrayOutput() ResponsePolicyArrayOutput

func (ResponsePolicyArray) ToResponsePolicyArrayOutputWithContext added in v6.15.1

func (i ResponsePolicyArray) ToResponsePolicyArrayOutputWithContext(ctx context.Context) ResponsePolicyArrayOutput

type ResponsePolicyArrayInput added in v6.15.1

type ResponsePolicyArrayInput interface {
	pulumi.Input

	ToResponsePolicyArrayOutput() ResponsePolicyArrayOutput
	ToResponsePolicyArrayOutputWithContext(context.Context) ResponsePolicyArrayOutput
}

ResponsePolicyArrayInput is an input type that accepts ResponsePolicyArray and ResponsePolicyArrayOutput values. You can construct a concrete instance of `ResponsePolicyArrayInput` via:

ResponsePolicyArray{ ResponsePolicyArgs{...} }

type ResponsePolicyArrayOutput added in v6.15.1

type ResponsePolicyArrayOutput struct{ *pulumi.OutputState }

func (ResponsePolicyArrayOutput) ElementType added in v6.15.1

func (ResponsePolicyArrayOutput) ElementType() reflect.Type

func (ResponsePolicyArrayOutput) Index added in v6.15.1

func (ResponsePolicyArrayOutput) ToOutput added in v6.65.1

func (ResponsePolicyArrayOutput) ToResponsePolicyArrayOutput added in v6.15.1

func (o ResponsePolicyArrayOutput) ToResponsePolicyArrayOutput() ResponsePolicyArrayOutput

func (ResponsePolicyArrayOutput) ToResponsePolicyArrayOutputWithContext added in v6.15.1

func (o ResponsePolicyArrayOutput) ToResponsePolicyArrayOutputWithContext(ctx context.Context) ResponsePolicyArrayOutput

type ResponsePolicyGkeCluster added in v6.44.0

type ResponsePolicyGkeCluster struct {
	// The resource name of the cluster to bind this ManagedZone to.
	// This should be specified in the format like
	// `projects/*/locations/*/clusters/*`
	GkeClusterName string `pulumi:"gkeClusterName"`
}

type ResponsePolicyGkeClusterArgs added in v6.44.0

type ResponsePolicyGkeClusterArgs struct {
	// The resource name of the cluster to bind this ManagedZone to.
	// This should be specified in the format like
	// `projects/*/locations/*/clusters/*`
	GkeClusterName pulumi.StringInput `pulumi:"gkeClusterName"`
}

func (ResponsePolicyGkeClusterArgs) ElementType added in v6.44.0

func (ResponsePolicyGkeClusterArgs) ToOutput added in v6.65.1

func (ResponsePolicyGkeClusterArgs) ToResponsePolicyGkeClusterOutput added in v6.44.0

func (i ResponsePolicyGkeClusterArgs) ToResponsePolicyGkeClusterOutput() ResponsePolicyGkeClusterOutput

func (ResponsePolicyGkeClusterArgs) ToResponsePolicyGkeClusterOutputWithContext added in v6.44.0

func (i ResponsePolicyGkeClusterArgs) ToResponsePolicyGkeClusterOutputWithContext(ctx context.Context) ResponsePolicyGkeClusterOutput

type ResponsePolicyGkeClusterArray added in v6.44.0

type ResponsePolicyGkeClusterArray []ResponsePolicyGkeClusterInput

func (ResponsePolicyGkeClusterArray) ElementType added in v6.44.0

func (ResponsePolicyGkeClusterArray) ToOutput added in v6.65.1

func (ResponsePolicyGkeClusterArray) ToResponsePolicyGkeClusterArrayOutput added in v6.44.0

func (i ResponsePolicyGkeClusterArray) ToResponsePolicyGkeClusterArrayOutput() ResponsePolicyGkeClusterArrayOutput

func (ResponsePolicyGkeClusterArray) ToResponsePolicyGkeClusterArrayOutputWithContext added in v6.44.0

func (i ResponsePolicyGkeClusterArray) ToResponsePolicyGkeClusterArrayOutputWithContext(ctx context.Context) ResponsePolicyGkeClusterArrayOutput

type ResponsePolicyGkeClusterArrayInput added in v6.44.0

type ResponsePolicyGkeClusterArrayInput interface {
	pulumi.Input

	ToResponsePolicyGkeClusterArrayOutput() ResponsePolicyGkeClusterArrayOutput
	ToResponsePolicyGkeClusterArrayOutputWithContext(context.Context) ResponsePolicyGkeClusterArrayOutput
}

ResponsePolicyGkeClusterArrayInput is an input type that accepts ResponsePolicyGkeClusterArray and ResponsePolicyGkeClusterArrayOutput values. You can construct a concrete instance of `ResponsePolicyGkeClusterArrayInput` via:

ResponsePolicyGkeClusterArray{ ResponsePolicyGkeClusterArgs{...} }

type ResponsePolicyGkeClusterArrayOutput added in v6.44.0

type ResponsePolicyGkeClusterArrayOutput struct{ *pulumi.OutputState }

func (ResponsePolicyGkeClusterArrayOutput) ElementType added in v6.44.0

func (ResponsePolicyGkeClusterArrayOutput) Index added in v6.44.0

func (ResponsePolicyGkeClusterArrayOutput) ToOutput added in v6.65.1

func (ResponsePolicyGkeClusterArrayOutput) ToResponsePolicyGkeClusterArrayOutput added in v6.44.0

func (o ResponsePolicyGkeClusterArrayOutput) ToResponsePolicyGkeClusterArrayOutput() ResponsePolicyGkeClusterArrayOutput

func (ResponsePolicyGkeClusterArrayOutput) ToResponsePolicyGkeClusterArrayOutputWithContext added in v6.44.0

func (o ResponsePolicyGkeClusterArrayOutput) ToResponsePolicyGkeClusterArrayOutputWithContext(ctx context.Context) ResponsePolicyGkeClusterArrayOutput

type ResponsePolicyGkeClusterInput added in v6.44.0

type ResponsePolicyGkeClusterInput interface {
	pulumi.Input

	ToResponsePolicyGkeClusterOutput() ResponsePolicyGkeClusterOutput
	ToResponsePolicyGkeClusterOutputWithContext(context.Context) ResponsePolicyGkeClusterOutput
}

ResponsePolicyGkeClusterInput is an input type that accepts ResponsePolicyGkeClusterArgs and ResponsePolicyGkeClusterOutput values. You can construct a concrete instance of `ResponsePolicyGkeClusterInput` via:

ResponsePolicyGkeClusterArgs{...}

type ResponsePolicyGkeClusterOutput added in v6.44.0

type ResponsePolicyGkeClusterOutput struct{ *pulumi.OutputState }

func (ResponsePolicyGkeClusterOutput) ElementType added in v6.44.0

func (ResponsePolicyGkeClusterOutput) GkeClusterName added in v6.44.0

The resource name of the cluster to bind this ManagedZone to. This should be specified in the format like `projects/*/locations/*/clusters/*`

func (ResponsePolicyGkeClusterOutput) ToOutput added in v6.65.1

func (ResponsePolicyGkeClusterOutput) ToResponsePolicyGkeClusterOutput added in v6.44.0

func (o ResponsePolicyGkeClusterOutput) ToResponsePolicyGkeClusterOutput() ResponsePolicyGkeClusterOutput

func (ResponsePolicyGkeClusterOutput) ToResponsePolicyGkeClusterOutputWithContext added in v6.44.0

func (o ResponsePolicyGkeClusterOutput) ToResponsePolicyGkeClusterOutputWithContext(ctx context.Context) ResponsePolicyGkeClusterOutput

type ResponsePolicyInput added in v6.15.1

type ResponsePolicyInput interface {
	pulumi.Input

	ToResponsePolicyOutput() ResponsePolicyOutput
	ToResponsePolicyOutputWithContext(ctx context.Context) ResponsePolicyOutput
}

type ResponsePolicyMap added in v6.15.1

type ResponsePolicyMap map[string]ResponsePolicyInput

func (ResponsePolicyMap) ElementType added in v6.15.1

func (ResponsePolicyMap) ElementType() reflect.Type

func (ResponsePolicyMap) ToOutput added in v6.65.1

func (ResponsePolicyMap) ToResponsePolicyMapOutput added in v6.15.1

func (i ResponsePolicyMap) ToResponsePolicyMapOutput() ResponsePolicyMapOutput

func (ResponsePolicyMap) ToResponsePolicyMapOutputWithContext added in v6.15.1

func (i ResponsePolicyMap) ToResponsePolicyMapOutputWithContext(ctx context.Context) ResponsePolicyMapOutput

type ResponsePolicyMapInput added in v6.15.1

type ResponsePolicyMapInput interface {
	pulumi.Input

	ToResponsePolicyMapOutput() ResponsePolicyMapOutput
	ToResponsePolicyMapOutputWithContext(context.Context) ResponsePolicyMapOutput
}

ResponsePolicyMapInput is an input type that accepts ResponsePolicyMap and ResponsePolicyMapOutput values. You can construct a concrete instance of `ResponsePolicyMapInput` via:

ResponsePolicyMap{ "key": ResponsePolicyArgs{...} }

type ResponsePolicyMapOutput added in v6.15.1

type ResponsePolicyMapOutput struct{ *pulumi.OutputState }

func (ResponsePolicyMapOutput) ElementType added in v6.15.1

func (ResponsePolicyMapOutput) ElementType() reflect.Type

func (ResponsePolicyMapOutput) MapIndex added in v6.15.1

func (ResponsePolicyMapOutput) ToOutput added in v6.65.1

func (ResponsePolicyMapOutput) ToResponsePolicyMapOutput added in v6.15.1

func (o ResponsePolicyMapOutput) ToResponsePolicyMapOutput() ResponsePolicyMapOutput

func (ResponsePolicyMapOutput) ToResponsePolicyMapOutputWithContext added in v6.15.1

func (o ResponsePolicyMapOutput) ToResponsePolicyMapOutputWithContext(ctx context.Context) ResponsePolicyMapOutput

type ResponsePolicyNetwork added in v6.15.1

type ResponsePolicyNetwork struct {
	// The fully qualified URL of the VPC network to bind to.
	// This should be formatted like
	// `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
	NetworkUrl string `pulumi:"networkUrl"`
}

type ResponsePolicyNetworkArgs added in v6.15.1

type ResponsePolicyNetworkArgs struct {
	// The fully qualified URL of the VPC network to bind to.
	// This should be formatted like
	// `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`
	NetworkUrl pulumi.StringInput `pulumi:"networkUrl"`
}

func (ResponsePolicyNetworkArgs) ElementType added in v6.15.1

func (ResponsePolicyNetworkArgs) ElementType() reflect.Type

func (ResponsePolicyNetworkArgs) ToOutput added in v6.65.1

func (ResponsePolicyNetworkArgs) ToResponsePolicyNetworkOutput added in v6.15.1

func (i ResponsePolicyNetworkArgs) ToResponsePolicyNetworkOutput() ResponsePolicyNetworkOutput

func (ResponsePolicyNetworkArgs) ToResponsePolicyNetworkOutputWithContext added in v6.15.1

func (i ResponsePolicyNetworkArgs) ToResponsePolicyNetworkOutputWithContext(ctx context.Context) ResponsePolicyNetworkOutput

type ResponsePolicyNetworkArray added in v6.15.1

type ResponsePolicyNetworkArray []ResponsePolicyNetworkInput

func (ResponsePolicyNetworkArray) ElementType added in v6.15.1

func (ResponsePolicyNetworkArray) ElementType() reflect.Type

func (ResponsePolicyNetworkArray) ToOutput added in v6.65.1

func (ResponsePolicyNetworkArray) ToResponsePolicyNetworkArrayOutput added in v6.15.1

func (i ResponsePolicyNetworkArray) ToResponsePolicyNetworkArrayOutput() ResponsePolicyNetworkArrayOutput

func (ResponsePolicyNetworkArray) ToResponsePolicyNetworkArrayOutputWithContext added in v6.15.1

func (i ResponsePolicyNetworkArray) ToResponsePolicyNetworkArrayOutputWithContext(ctx context.Context) ResponsePolicyNetworkArrayOutput

type ResponsePolicyNetworkArrayInput added in v6.15.1

type ResponsePolicyNetworkArrayInput interface {
	pulumi.Input

	ToResponsePolicyNetworkArrayOutput() ResponsePolicyNetworkArrayOutput
	ToResponsePolicyNetworkArrayOutputWithContext(context.Context) ResponsePolicyNetworkArrayOutput
}

ResponsePolicyNetworkArrayInput is an input type that accepts ResponsePolicyNetworkArray and ResponsePolicyNetworkArrayOutput values. You can construct a concrete instance of `ResponsePolicyNetworkArrayInput` via:

ResponsePolicyNetworkArray{ ResponsePolicyNetworkArgs{...} }

type ResponsePolicyNetworkArrayOutput added in v6.15.1

type ResponsePolicyNetworkArrayOutput struct{ *pulumi.OutputState }

func (ResponsePolicyNetworkArrayOutput) ElementType added in v6.15.1

func (ResponsePolicyNetworkArrayOutput) Index added in v6.15.1

func (ResponsePolicyNetworkArrayOutput) ToOutput added in v6.65.1

func (ResponsePolicyNetworkArrayOutput) ToResponsePolicyNetworkArrayOutput added in v6.15.1

func (o ResponsePolicyNetworkArrayOutput) ToResponsePolicyNetworkArrayOutput() ResponsePolicyNetworkArrayOutput

func (ResponsePolicyNetworkArrayOutput) ToResponsePolicyNetworkArrayOutputWithContext added in v6.15.1

func (o ResponsePolicyNetworkArrayOutput) ToResponsePolicyNetworkArrayOutputWithContext(ctx context.Context) ResponsePolicyNetworkArrayOutput

type ResponsePolicyNetworkInput added in v6.15.1

type ResponsePolicyNetworkInput interface {
	pulumi.Input

	ToResponsePolicyNetworkOutput() ResponsePolicyNetworkOutput
	ToResponsePolicyNetworkOutputWithContext(context.Context) ResponsePolicyNetworkOutput
}

ResponsePolicyNetworkInput is an input type that accepts ResponsePolicyNetworkArgs and ResponsePolicyNetworkOutput values. You can construct a concrete instance of `ResponsePolicyNetworkInput` via:

ResponsePolicyNetworkArgs{...}

type ResponsePolicyNetworkOutput added in v6.15.1

type ResponsePolicyNetworkOutput struct{ *pulumi.OutputState }

func (ResponsePolicyNetworkOutput) ElementType added in v6.15.1

func (ResponsePolicyNetworkOutput) NetworkUrl added in v6.15.1

The fully qualified URL of the VPC network to bind to. This should be formatted like `https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}`

func (ResponsePolicyNetworkOutput) ToOutput added in v6.65.1

func (ResponsePolicyNetworkOutput) ToResponsePolicyNetworkOutput added in v6.15.1

func (o ResponsePolicyNetworkOutput) ToResponsePolicyNetworkOutput() ResponsePolicyNetworkOutput

func (ResponsePolicyNetworkOutput) ToResponsePolicyNetworkOutputWithContext added in v6.15.1

func (o ResponsePolicyNetworkOutput) ToResponsePolicyNetworkOutputWithContext(ctx context.Context) ResponsePolicyNetworkOutput

type ResponsePolicyOutput added in v6.15.1

type ResponsePolicyOutput struct{ *pulumi.OutputState }

func (ResponsePolicyOutput) Description added in v6.23.0

The description of the response policy, such as `My new response policy`.

func (ResponsePolicyOutput) ElementType added in v6.15.1

func (ResponsePolicyOutput) ElementType() reflect.Type

func (ResponsePolicyOutput) GkeClusters added in v6.44.0

The list of Google Kubernetes Engine clusters that can see this zone. Structure is documented below.

func (ResponsePolicyOutput) Networks added in v6.23.0

The list of network names specifying networks to which this policy is applied. Structure is documented below.

func (ResponsePolicyOutput) Project added in v6.23.0

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

func (ResponsePolicyOutput) ResponsePolicyName added in v6.23.0

func (o ResponsePolicyOutput) ResponsePolicyName() pulumi.StringOutput

The user assigned name for this Response Policy, such as `myresponsepolicy`.

***

func (ResponsePolicyOutput) ToOutput added in v6.65.1

func (ResponsePolicyOutput) ToResponsePolicyOutput added in v6.15.1

func (o ResponsePolicyOutput) ToResponsePolicyOutput() ResponsePolicyOutput

func (ResponsePolicyOutput) ToResponsePolicyOutputWithContext added in v6.15.1

func (o ResponsePolicyOutput) ToResponsePolicyOutputWithContext(ctx context.Context) ResponsePolicyOutput

type ResponsePolicyRule added in v6.15.1

type ResponsePolicyRule struct {
	pulumi.CustomResourceState

	// Answer this query with a behavior rather than DNS data. Acceptable values are 'behaviorUnspecified', and
	// 'bypassResponsePolicy'
	Behavior pulumi.StringPtrOutput `pulumi:"behavior"`
	// The DNS name (wildcard or exact) to apply this rule to. Must be unique within the Response Policy Rule.
	DnsName pulumi.StringOutput `pulumi:"dnsName"`
	// Answer this query directly with DNS data. These ResourceRecordSets override any other DNS behavior for the matched name;
	// in particular they override private zones, the public internet, and GCP internal DNS. No SOA nor NS types are allowed.
	// Structure is documented below.
	LocalData ResponsePolicyRuleLocalDataPtrOutput `pulumi:"localData"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// Identifies the response policy addressed by this request.
	//
	// ***
	ResponsePolicy pulumi.StringOutput `pulumi:"responsePolicy"`
	// An identifier for this rule. Must be unique with the ResponsePolicy.
	RuleName pulumi.StringOutput `pulumi:"ruleName"`
}

A Response Policy Rule is a selector that applies its behavior to queries that match the selector. Selectors are DNS names, which may be wildcards or exact matches. Each DNS query subject to a Response Policy matches at most one ResponsePolicyRule, as identified by the dnsName field with the longest matching suffix.

## Example Usage ### Dns Response Policy Rule Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/dns"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewNetwork(ctx, "network-1", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = compute.NewNetwork(ctx, "network-2", &compute.NetworkArgs{
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = dns.NewResponsePolicy(ctx, "response-policy", &dns.ResponsePolicyArgs{
			ResponsePolicyName: pulumi.String("example-response-policy"),
			Networks: dns.ResponsePolicyNetworkArray{
				&dns.ResponsePolicyNetworkArgs{
					NetworkUrl: network_1.ID(),
				},
				&dns.ResponsePolicyNetworkArgs{
					NetworkUrl: network_2.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewResponsePolicyRule(ctx, "example-response-policy-rule", &dns.ResponsePolicyRuleArgs{
			ResponsePolicy: response_policy.ResponsePolicyName,
			RuleName:       pulumi.String("example-rule"),
			DnsName:        pulumi.String("dns.example.com."),
			LocalData: &dns.ResponsePolicyRuleLocalDataArgs{
				LocalDatas: dns.ResponsePolicyRuleLocalDataLocalDataArray{
					&dns.ResponsePolicyRuleLocalDataLocalDataArgs{
						Name: pulumi.String("dns.example.com."),
						Type: pulumi.String("A"),
						Ttl:  pulumi.Int(300),
						Rrdatas: pulumi.StringArray{
							pulumi.String("192.0.2.91"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ResponsePolicyRule can be imported using any of these accepted formats

```sh

$ pulumi import gcp:dns/responsePolicyRule:ResponsePolicyRule default projects/{{project}}/responsePolicies/{{response_policy}}/rules/{{rule_name}}

```

```sh

$ pulumi import gcp:dns/responsePolicyRule:ResponsePolicyRule default {{project}}/{{response_policy}}/{{rule_name}}

```

```sh

$ pulumi import gcp:dns/responsePolicyRule:ResponsePolicyRule default {{response_policy}}/{{rule_name}}

```

func GetResponsePolicyRule added in v6.15.1

func GetResponsePolicyRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResponsePolicyRuleState, opts ...pulumi.ResourceOption) (*ResponsePolicyRule, error)

GetResponsePolicyRule gets an existing ResponsePolicyRule 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 NewResponsePolicyRule added in v6.15.1

func NewResponsePolicyRule(ctx *pulumi.Context,
	name string, args *ResponsePolicyRuleArgs, opts ...pulumi.ResourceOption) (*ResponsePolicyRule, error)

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

func (*ResponsePolicyRule) ElementType added in v6.15.1

func (*ResponsePolicyRule) ElementType() reflect.Type

func (*ResponsePolicyRule) ToOutput added in v6.65.1

func (*ResponsePolicyRule) ToResponsePolicyRuleOutput added in v6.15.1

func (i *ResponsePolicyRule) ToResponsePolicyRuleOutput() ResponsePolicyRuleOutput

func (*ResponsePolicyRule) ToResponsePolicyRuleOutputWithContext added in v6.15.1

func (i *ResponsePolicyRule) ToResponsePolicyRuleOutputWithContext(ctx context.Context) ResponsePolicyRuleOutput

type ResponsePolicyRuleArgs added in v6.15.1

type ResponsePolicyRuleArgs struct {
	// Answer this query with a behavior rather than DNS data. Acceptable values are 'behaviorUnspecified', and
	// 'bypassResponsePolicy'
	Behavior pulumi.StringPtrInput
	// The DNS name (wildcard or exact) to apply this rule to. Must be unique within the Response Policy Rule.
	DnsName pulumi.StringInput
	// Answer this query directly with DNS data. These ResourceRecordSets override any other DNS behavior for the matched name;
	// in particular they override private zones, the public internet, and GCP internal DNS. No SOA nor NS types are allowed.
	// Structure is documented below.
	LocalData ResponsePolicyRuleLocalDataPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Identifies the response policy addressed by this request.
	//
	// ***
	ResponsePolicy pulumi.StringInput
	// An identifier for this rule. Must be unique with the ResponsePolicy.
	RuleName pulumi.StringInput
}

The set of arguments for constructing a ResponsePolicyRule resource.

func (ResponsePolicyRuleArgs) ElementType added in v6.15.1

func (ResponsePolicyRuleArgs) ElementType() reflect.Type

type ResponsePolicyRuleArray added in v6.15.1

type ResponsePolicyRuleArray []ResponsePolicyRuleInput

func (ResponsePolicyRuleArray) ElementType added in v6.15.1

func (ResponsePolicyRuleArray) ElementType() reflect.Type

func (ResponsePolicyRuleArray) ToOutput added in v6.65.1

func (ResponsePolicyRuleArray) ToResponsePolicyRuleArrayOutput added in v6.15.1

func (i ResponsePolicyRuleArray) ToResponsePolicyRuleArrayOutput() ResponsePolicyRuleArrayOutput

func (ResponsePolicyRuleArray) ToResponsePolicyRuleArrayOutputWithContext added in v6.15.1

func (i ResponsePolicyRuleArray) ToResponsePolicyRuleArrayOutputWithContext(ctx context.Context) ResponsePolicyRuleArrayOutput

type ResponsePolicyRuleArrayInput added in v6.15.1

type ResponsePolicyRuleArrayInput interface {
	pulumi.Input

	ToResponsePolicyRuleArrayOutput() ResponsePolicyRuleArrayOutput
	ToResponsePolicyRuleArrayOutputWithContext(context.Context) ResponsePolicyRuleArrayOutput
}

ResponsePolicyRuleArrayInput is an input type that accepts ResponsePolicyRuleArray and ResponsePolicyRuleArrayOutput values. You can construct a concrete instance of `ResponsePolicyRuleArrayInput` via:

ResponsePolicyRuleArray{ ResponsePolicyRuleArgs{...} }

type ResponsePolicyRuleArrayOutput added in v6.15.1

type ResponsePolicyRuleArrayOutput struct{ *pulumi.OutputState }

func (ResponsePolicyRuleArrayOutput) ElementType added in v6.15.1

func (ResponsePolicyRuleArrayOutput) Index added in v6.15.1

func (ResponsePolicyRuleArrayOutput) ToOutput added in v6.65.1

func (ResponsePolicyRuleArrayOutput) ToResponsePolicyRuleArrayOutput added in v6.15.1

func (o ResponsePolicyRuleArrayOutput) ToResponsePolicyRuleArrayOutput() ResponsePolicyRuleArrayOutput

func (ResponsePolicyRuleArrayOutput) ToResponsePolicyRuleArrayOutputWithContext added in v6.15.1

func (o ResponsePolicyRuleArrayOutput) ToResponsePolicyRuleArrayOutputWithContext(ctx context.Context) ResponsePolicyRuleArrayOutput

type ResponsePolicyRuleInput added in v6.15.1

type ResponsePolicyRuleInput interface {
	pulumi.Input

	ToResponsePolicyRuleOutput() ResponsePolicyRuleOutput
	ToResponsePolicyRuleOutputWithContext(ctx context.Context) ResponsePolicyRuleOutput
}

type ResponsePolicyRuleLocalData added in v6.15.1

type ResponsePolicyRuleLocalData struct {
	// All resource record sets for this selector, one per resource record type. The name must match the dns_name.
	// Structure is documented below.
	LocalDatas []ResponsePolicyRuleLocalDataLocalData `pulumi:"localDatas"`
}

type ResponsePolicyRuleLocalDataArgs added in v6.15.1

type ResponsePolicyRuleLocalDataArgs struct {
	// All resource record sets for this selector, one per resource record type. The name must match the dns_name.
	// Structure is documented below.
	LocalDatas ResponsePolicyRuleLocalDataLocalDataArrayInput `pulumi:"localDatas"`
}

func (ResponsePolicyRuleLocalDataArgs) ElementType added in v6.15.1

func (ResponsePolicyRuleLocalDataArgs) ToOutput added in v6.65.1

func (ResponsePolicyRuleLocalDataArgs) ToResponsePolicyRuleLocalDataOutput added in v6.15.1

func (i ResponsePolicyRuleLocalDataArgs) ToResponsePolicyRuleLocalDataOutput() ResponsePolicyRuleLocalDataOutput

func (ResponsePolicyRuleLocalDataArgs) ToResponsePolicyRuleLocalDataOutputWithContext added in v6.15.1

func (i ResponsePolicyRuleLocalDataArgs) ToResponsePolicyRuleLocalDataOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataOutput

func (ResponsePolicyRuleLocalDataArgs) ToResponsePolicyRuleLocalDataPtrOutput added in v6.15.1

func (i ResponsePolicyRuleLocalDataArgs) ToResponsePolicyRuleLocalDataPtrOutput() ResponsePolicyRuleLocalDataPtrOutput

func (ResponsePolicyRuleLocalDataArgs) ToResponsePolicyRuleLocalDataPtrOutputWithContext added in v6.15.1

func (i ResponsePolicyRuleLocalDataArgs) ToResponsePolicyRuleLocalDataPtrOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataPtrOutput

type ResponsePolicyRuleLocalDataInput added in v6.15.1

type ResponsePolicyRuleLocalDataInput interface {
	pulumi.Input

	ToResponsePolicyRuleLocalDataOutput() ResponsePolicyRuleLocalDataOutput
	ToResponsePolicyRuleLocalDataOutputWithContext(context.Context) ResponsePolicyRuleLocalDataOutput
}

ResponsePolicyRuleLocalDataInput is an input type that accepts ResponsePolicyRuleLocalDataArgs and ResponsePolicyRuleLocalDataOutput values. You can construct a concrete instance of `ResponsePolicyRuleLocalDataInput` via:

ResponsePolicyRuleLocalDataArgs{...}

type ResponsePolicyRuleLocalDataLocalData added in v6.15.1

type ResponsePolicyRuleLocalDataLocalData struct {
	// For example, www.example.com.
	Name string `pulumi:"name"`
	// As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1)
	Rrdatas []string `pulumi:"rrdatas"`
	// Number of seconds that this ResourceRecordSet can be cached by
	// resolvers.
	Ttl *int `pulumi:"ttl"`
	// One of valid DNS resource types.
	// Possible values are: `A`, `AAAA`, `CAA`, `CNAME`, `DNSKEY`, `DS`, `HTTPS`, `IPSECVPNKEY`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV`, `SSHFP`, `SVCB`, `TLSA`, `TXT`.
	Type string `pulumi:"type"`
}

type ResponsePolicyRuleLocalDataLocalDataArgs added in v6.15.1

type ResponsePolicyRuleLocalDataLocalDataArgs struct {
	// For example, www.example.com.
	Name pulumi.StringInput `pulumi:"name"`
	// As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1)
	Rrdatas pulumi.StringArrayInput `pulumi:"rrdatas"`
	// Number of seconds that this ResourceRecordSet can be cached by
	// resolvers.
	Ttl pulumi.IntPtrInput `pulumi:"ttl"`
	// One of valid DNS resource types.
	// Possible values are: `A`, `AAAA`, `CAA`, `CNAME`, `DNSKEY`, `DS`, `HTTPS`, `IPSECVPNKEY`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV`, `SSHFP`, `SVCB`, `TLSA`, `TXT`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ResponsePolicyRuleLocalDataLocalDataArgs) ElementType added in v6.15.1

func (ResponsePolicyRuleLocalDataLocalDataArgs) ToOutput added in v6.65.1

func (ResponsePolicyRuleLocalDataLocalDataArgs) ToResponsePolicyRuleLocalDataLocalDataOutput added in v6.15.1

func (i ResponsePolicyRuleLocalDataLocalDataArgs) ToResponsePolicyRuleLocalDataLocalDataOutput() ResponsePolicyRuleLocalDataLocalDataOutput

func (ResponsePolicyRuleLocalDataLocalDataArgs) ToResponsePolicyRuleLocalDataLocalDataOutputWithContext added in v6.15.1

func (i ResponsePolicyRuleLocalDataLocalDataArgs) ToResponsePolicyRuleLocalDataLocalDataOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataLocalDataOutput

type ResponsePolicyRuleLocalDataLocalDataArray added in v6.15.1

type ResponsePolicyRuleLocalDataLocalDataArray []ResponsePolicyRuleLocalDataLocalDataInput

func (ResponsePolicyRuleLocalDataLocalDataArray) ElementType added in v6.15.1

func (ResponsePolicyRuleLocalDataLocalDataArray) ToOutput added in v6.65.1

func (ResponsePolicyRuleLocalDataLocalDataArray) ToResponsePolicyRuleLocalDataLocalDataArrayOutput added in v6.15.1

func (i ResponsePolicyRuleLocalDataLocalDataArray) ToResponsePolicyRuleLocalDataLocalDataArrayOutput() ResponsePolicyRuleLocalDataLocalDataArrayOutput

func (ResponsePolicyRuleLocalDataLocalDataArray) ToResponsePolicyRuleLocalDataLocalDataArrayOutputWithContext added in v6.15.1

func (i ResponsePolicyRuleLocalDataLocalDataArray) ToResponsePolicyRuleLocalDataLocalDataArrayOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataLocalDataArrayOutput

type ResponsePolicyRuleLocalDataLocalDataArrayInput added in v6.15.1

type ResponsePolicyRuleLocalDataLocalDataArrayInput interface {
	pulumi.Input

	ToResponsePolicyRuleLocalDataLocalDataArrayOutput() ResponsePolicyRuleLocalDataLocalDataArrayOutput
	ToResponsePolicyRuleLocalDataLocalDataArrayOutputWithContext(context.Context) ResponsePolicyRuleLocalDataLocalDataArrayOutput
}

ResponsePolicyRuleLocalDataLocalDataArrayInput is an input type that accepts ResponsePolicyRuleLocalDataLocalDataArray and ResponsePolicyRuleLocalDataLocalDataArrayOutput values. You can construct a concrete instance of `ResponsePolicyRuleLocalDataLocalDataArrayInput` via:

ResponsePolicyRuleLocalDataLocalDataArray{ ResponsePolicyRuleLocalDataLocalDataArgs{...} }

type ResponsePolicyRuleLocalDataLocalDataArrayOutput added in v6.15.1

type ResponsePolicyRuleLocalDataLocalDataArrayOutput struct{ *pulumi.OutputState }

func (ResponsePolicyRuleLocalDataLocalDataArrayOutput) ElementType added in v6.15.1

func (ResponsePolicyRuleLocalDataLocalDataArrayOutput) Index added in v6.15.1

func (ResponsePolicyRuleLocalDataLocalDataArrayOutput) ToOutput added in v6.65.1

func (ResponsePolicyRuleLocalDataLocalDataArrayOutput) ToResponsePolicyRuleLocalDataLocalDataArrayOutput added in v6.15.1

func (o ResponsePolicyRuleLocalDataLocalDataArrayOutput) ToResponsePolicyRuleLocalDataLocalDataArrayOutput() ResponsePolicyRuleLocalDataLocalDataArrayOutput

func (ResponsePolicyRuleLocalDataLocalDataArrayOutput) ToResponsePolicyRuleLocalDataLocalDataArrayOutputWithContext added in v6.15.1

func (o ResponsePolicyRuleLocalDataLocalDataArrayOutput) ToResponsePolicyRuleLocalDataLocalDataArrayOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataLocalDataArrayOutput

type ResponsePolicyRuleLocalDataLocalDataInput added in v6.15.1

type ResponsePolicyRuleLocalDataLocalDataInput interface {
	pulumi.Input

	ToResponsePolicyRuleLocalDataLocalDataOutput() ResponsePolicyRuleLocalDataLocalDataOutput
	ToResponsePolicyRuleLocalDataLocalDataOutputWithContext(context.Context) ResponsePolicyRuleLocalDataLocalDataOutput
}

ResponsePolicyRuleLocalDataLocalDataInput is an input type that accepts ResponsePolicyRuleLocalDataLocalDataArgs and ResponsePolicyRuleLocalDataLocalDataOutput values. You can construct a concrete instance of `ResponsePolicyRuleLocalDataLocalDataInput` via:

ResponsePolicyRuleLocalDataLocalDataArgs{...}

type ResponsePolicyRuleLocalDataLocalDataOutput added in v6.15.1

type ResponsePolicyRuleLocalDataLocalDataOutput struct{ *pulumi.OutputState }

func (ResponsePolicyRuleLocalDataLocalDataOutput) ElementType added in v6.15.1

func (ResponsePolicyRuleLocalDataLocalDataOutput) Name added in v6.15.1

For example, www.example.com.

func (ResponsePolicyRuleLocalDataLocalDataOutput) Rrdatas added in v6.15.1

As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1)

func (ResponsePolicyRuleLocalDataLocalDataOutput) ToOutput added in v6.65.1

func (ResponsePolicyRuleLocalDataLocalDataOutput) ToResponsePolicyRuleLocalDataLocalDataOutput added in v6.15.1

func (o ResponsePolicyRuleLocalDataLocalDataOutput) ToResponsePolicyRuleLocalDataLocalDataOutput() ResponsePolicyRuleLocalDataLocalDataOutput

func (ResponsePolicyRuleLocalDataLocalDataOutput) ToResponsePolicyRuleLocalDataLocalDataOutputWithContext added in v6.15.1

func (o ResponsePolicyRuleLocalDataLocalDataOutput) ToResponsePolicyRuleLocalDataLocalDataOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataLocalDataOutput

func (ResponsePolicyRuleLocalDataLocalDataOutput) Ttl added in v6.15.1

Number of seconds that this ResourceRecordSet can be cached by resolvers.

func (ResponsePolicyRuleLocalDataLocalDataOutput) Type added in v6.15.1

One of valid DNS resource types. Possible values are: `A`, `AAAA`, `CAA`, `CNAME`, `DNSKEY`, `DS`, `HTTPS`, `IPSECVPNKEY`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV`, `SSHFP`, `SVCB`, `TLSA`, `TXT`.

type ResponsePolicyRuleLocalDataOutput added in v6.15.1

type ResponsePolicyRuleLocalDataOutput struct{ *pulumi.OutputState }

func (ResponsePolicyRuleLocalDataOutput) ElementType added in v6.15.1

func (ResponsePolicyRuleLocalDataOutput) LocalDatas added in v6.15.1

All resource record sets for this selector, one per resource record type. The name must match the dns_name. Structure is documented below.

func (ResponsePolicyRuleLocalDataOutput) ToOutput added in v6.65.1

func (ResponsePolicyRuleLocalDataOutput) ToResponsePolicyRuleLocalDataOutput added in v6.15.1

func (o ResponsePolicyRuleLocalDataOutput) ToResponsePolicyRuleLocalDataOutput() ResponsePolicyRuleLocalDataOutput

func (ResponsePolicyRuleLocalDataOutput) ToResponsePolicyRuleLocalDataOutputWithContext added in v6.15.1

func (o ResponsePolicyRuleLocalDataOutput) ToResponsePolicyRuleLocalDataOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataOutput

func (ResponsePolicyRuleLocalDataOutput) ToResponsePolicyRuleLocalDataPtrOutput added in v6.15.1

func (o ResponsePolicyRuleLocalDataOutput) ToResponsePolicyRuleLocalDataPtrOutput() ResponsePolicyRuleLocalDataPtrOutput

func (ResponsePolicyRuleLocalDataOutput) ToResponsePolicyRuleLocalDataPtrOutputWithContext added in v6.15.1

func (o ResponsePolicyRuleLocalDataOutput) ToResponsePolicyRuleLocalDataPtrOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataPtrOutput

type ResponsePolicyRuleLocalDataPtrInput added in v6.15.1

type ResponsePolicyRuleLocalDataPtrInput interface {
	pulumi.Input

	ToResponsePolicyRuleLocalDataPtrOutput() ResponsePolicyRuleLocalDataPtrOutput
	ToResponsePolicyRuleLocalDataPtrOutputWithContext(context.Context) ResponsePolicyRuleLocalDataPtrOutput
}

ResponsePolicyRuleLocalDataPtrInput is an input type that accepts ResponsePolicyRuleLocalDataArgs, ResponsePolicyRuleLocalDataPtr and ResponsePolicyRuleLocalDataPtrOutput values. You can construct a concrete instance of `ResponsePolicyRuleLocalDataPtrInput` via:

        ResponsePolicyRuleLocalDataArgs{...}

or:

        nil

func ResponsePolicyRuleLocalDataPtr added in v6.15.1

type ResponsePolicyRuleLocalDataPtrOutput added in v6.15.1

type ResponsePolicyRuleLocalDataPtrOutput struct{ *pulumi.OutputState }

func (ResponsePolicyRuleLocalDataPtrOutput) Elem added in v6.15.1

func (ResponsePolicyRuleLocalDataPtrOutput) ElementType added in v6.15.1

func (ResponsePolicyRuleLocalDataPtrOutput) LocalDatas added in v6.15.1

All resource record sets for this selector, one per resource record type. The name must match the dns_name. Structure is documented below.

func (ResponsePolicyRuleLocalDataPtrOutput) ToOutput added in v6.65.1

func (ResponsePolicyRuleLocalDataPtrOutput) ToResponsePolicyRuleLocalDataPtrOutput added in v6.15.1

func (o ResponsePolicyRuleLocalDataPtrOutput) ToResponsePolicyRuleLocalDataPtrOutput() ResponsePolicyRuleLocalDataPtrOutput

func (ResponsePolicyRuleLocalDataPtrOutput) ToResponsePolicyRuleLocalDataPtrOutputWithContext added in v6.15.1

func (o ResponsePolicyRuleLocalDataPtrOutput) ToResponsePolicyRuleLocalDataPtrOutputWithContext(ctx context.Context) ResponsePolicyRuleLocalDataPtrOutput

type ResponsePolicyRuleMap added in v6.15.1

type ResponsePolicyRuleMap map[string]ResponsePolicyRuleInput

func (ResponsePolicyRuleMap) ElementType added in v6.15.1

func (ResponsePolicyRuleMap) ElementType() reflect.Type

func (ResponsePolicyRuleMap) ToOutput added in v6.65.1

func (ResponsePolicyRuleMap) ToResponsePolicyRuleMapOutput added in v6.15.1

func (i ResponsePolicyRuleMap) ToResponsePolicyRuleMapOutput() ResponsePolicyRuleMapOutput

func (ResponsePolicyRuleMap) ToResponsePolicyRuleMapOutputWithContext added in v6.15.1

func (i ResponsePolicyRuleMap) ToResponsePolicyRuleMapOutputWithContext(ctx context.Context) ResponsePolicyRuleMapOutput

type ResponsePolicyRuleMapInput added in v6.15.1

type ResponsePolicyRuleMapInput interface {
	pulumi.Input

	ToResponsePolicyRuleMapOutput() ResponsePolicyRuleMapOutput
	ToResponsePolicyRuleMapOutputWithContext(context.Context) ResponsePolicyRuleMapOutput
}

ResponsePolicyRuleMapInput is an input type that accepts ResponsePolicyRuleMap and ResponsePolicyRuleMapOutput values. You can construct a concrete instance of `ResponsePolicyRuleMapInput` via:

ResponsePolicyRuleMap{ "key": ResponsePolicyRuleArgs{...} }

type ResponsePolicyRuleMapOutput added in v6.15.1

type ResponsePolicyRuleMapOutput struct{ *pulumi.OutputState }

func (ResponsePolicyRuleMapOutput) ElementType added in v6.15.1

func (ResponsePolicyRuleMapOutput) MapIndex added in v6.15.1

func (ResponsePolicyRuleMapOutput) ToOutput added in v6.65.1

func (ResponsePolicyRuleMapOutput) ToResponsePolicyRuleMapOutput added in v6.15.1

func (o ResponsePolicyRuleMapOutput) ToResponsePolicyRuleMapOutput() ResponsePolicyRuleMapOutput

func (ResponsePolicyRuleMapOutput) ToResponsePolicyRuleMapOutputWithContext added in v6.15.1

func (o ResponsePolicyRuleMapOutput) ToResponsePolicyRuleMapOutputWithContext(ctx context.Context) ResponsePolicyRuleMapOutput

type ResponsePolicyRuleOutput added in v6.15.1

type ResponsePolicyRuleOutput struct{ *pulumi.OutputState }

func (ResponsePolicyRuleOutput) Behavior added in v6.38.0

Answer this query with a behavior rather than DNS data. Acceptable values are 'behaviorUnspecified', and 'bypassResponsePolicy'

func (ResponsePolicyRuleOutput) DnsName added in v6.23.0

The DNS name (wildcard or exact) to apply this rule to. Must be unique within the Response Policy Rule.

func (ResponsePolicyRuleOutput) ElementType added in v6.15.1

func (ResponsePolicyRuleOutput) ElementType() reflect.Type

func (ResponsePolicyRuleOutput) LocalData added in v6.23.0

Answer this query directly with DNS data. These ResourceRecordSets override any other DNS behavior for the matched name; in particular they override private zones, the public internet, and GCP internal DNS. No SOA nor NS types are allowed. Structure is documented below.

func (ResponsePolicyRuleOutput) Project added in v6.23.0

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

func (ResponsePolicyRuleOutput) ResponsePolicy added in v6.23.0

func (o ResponsePolicyRuleOutput) ResponsePolicy() pulumi.StringOutput

Identifies the response policy addressed by this request.

***

func (ResponsePolicyRuleOutput) RuleName added in v6.23.0

An identifier for this rule. Must be unique with the ResponsePolicy.

func (ResponsePolicyRuleOutput) ToOutput added in v6.65.1

func (ResponsePolicyRuleOutput) ToResponsePolicyRuleOutput added in v6.15.1

func (o ResponsePolicyRuleOutput) ToResponsePolicyRuleOutput() ResponsePolicyRuleOutput

func (ResponsePolicyRuleOutput) ToResponsePolicyRuleOutputWithContext added in v6.15.1

func (o ResponsePolicyRuleOutput) ToResponsePolicyRuleOutputWithContext(ctx context.Context) ResponsePolicyRuleOutput

type ResponsePolicyRuleState added in v6.15.1

type ResponsePolicyRuleState struct {
	// Answer this query with a behavior rather than DNS data. Acceptable values are 'behaviorUnspecified', and
	// 'bypassResponsePolicy'
	Behavior pulumi.StringPtrInput
	// The DNS name (wildcard or exact) to apply this rule to. Must be unique within the Response Policy Rule.
	DnsName pulumi.StringPtrInput
	// Answer this query directly with DNS data. These ResourceRecordSets override any other DNS behavior for the matched name;
	// in particular they override private zones, the public internet, and GCP internal DNS. No SOA nor NS types are allowed.
	// Structure is documented below.
	LocalData ResponsePolicyRuleLocalDataPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Identifies the response policy addressed by this request.
	//
	// ***
	ResponsePolicy pulumi.StringPtrInput
	// An identifier for this rule. Must be unique with the ResponsePolicy.
	RuleName pulumi.StringPtrInput
}

func (ResponsePolicyRuleState) ElementType added in v6.15.1

func (ResponsePolicyRuleState) ElementType() reflect.Type

type ResponsePolicyState added in v6.15.1

type ResponsePolicyState struct {
	// The description of the response policy, such as `My new response policy`.
	Description pulumi.StringPtrInput
	// The list of Google Kubernetes Engine clusters that can see this zone.
	// Structure is documented below.
	GkeClusters ResponsePolicyGkeClusterArrayInput
	// The list of network names specifying networks to which this policy is applied.
	// Structure is documented below.
	Networks ResponsePolicyNetworkArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The user assigned name for this Response Policy, such as `myresponsepolicy`.
	//
	// ***
	ResponsePolicyName pulumi.StringPtrInput
}

func (ResponsePolicyState) ElementType added in v6.15.1

func (ResponsePolicyState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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