datacatalog

package
v4.21.0 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Entry

type Entry struct {
	pulumi.CustomResourceState

	// Specification for a group of BigQuery tables with name pattern [prefix]YYYYMMDD. Context:
	// https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding.
	BigqueryDateShardedSpecs EntryBigqueryDateShardedSpecArrayOutput `pulumi:"bigqueryDateShardedSpecs"`
	// Specification that applies to a BigQuery table. This is only valid on entries of type TABLE.
	BigqueryTableSpecs EntryBigqueryTableSpecArrayOutput `pulumi:"bigqueryTableSpecs"`
	// Entry description, which can consist of several sentences or paragraphs that describe entry contents.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Display information such as title and description. A short name to identify the entry,
	// for example, "Analytics Data - Jan 2011".
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// The name of the entry group this entry is in.
	EntryGroup pulumi.StringOutput `pulumi:"entryGroup"`
	// The id of the entry to create.
	EntryId pulumi.StringOutput `pulumi:"entryId"`
	// Specification that applies to a Cloud Storage fileset. This is only valid on entries of type FILESET.
	// Structure is documented below.
	GcsFilesetSpec EntryGcsFilesetSpecPtrOutput `pulumi:"gcsFilesetSpec"`
	// This field indicates the entry's source system that Data Catalog integrates with, such as BigQuery or Pub/Sub.
	IntegratedSystem pulumi.StringOutput `pulumi:"integratedSystem"`
	// The resource this metadata entry refers to.
	// For Google Cloud Platform resources, linkedResource is the full name of the resource.
	// For example, the linkedResource for a table resource from BigQuery is:
	// //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId
	// Output only when Entry is of type in the EntryType enum. For entries with userSpecifiedType,
	// this field is optional and defaults to an empty string.
	LinkedResource pulumi.StringOutput `pulumi:"linkedResource"`
	// The Data Catalog resource name of the entry in URL format. Example:
	// projects/{project_id}/locations/{location}/entryGroups/{entryGroupId}/entries/{entryId}. Note that this Entry and its
	// child resources may not actually be stored in the location in this name.
	Name pulumi.StringOutput `pulumi:"name"`
	// Schema of the entry (e.g. BigQuery, GoogleSQL, Avro schema), as a json string. An entry might not have any schema
	// attached to it. See
	// https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries#schema
	// for what fields this schema can contain.
	Schema pulumi.StringPtrOutput `pulumi:"schema"`
	// The type of the entry. Only used for Entries with types in the EntryType enum.
	// Currently, only FILESET enum value is allowed. All other entries created through Data Catalog must use userSpecifiedType.
	// Possible values are `FILESET`.
	Type pulumi.StringPtrOutput `pulumi:"type"`
	// This field indicates the entry's source system that Data Catalog does not integrate with.
	// userSpecifiedSystem strings must begin with a letter or underscore and can only contain letters, numbers,
	// and underscores; are case insensitive; must be at least 1 character and at most 64 characters long.
	UserSpecifiedSystem pulumi.StringPtrOutput `pulumi:"userSpecifiedSystem"`
	// Entry type if it does not fit any of the input-allowed values listed in EntryType enum above.
	// When creating an entry, users should check the enum values first, if nothing matches the entry
	// to be created, then provide a custom value, for example "mySpecialType".
	// userSpecifiedType strings must begin with a letter or underscore and can only contain letters,
	// numbers, and underscores; are case insensitive; must be at least 1 character and at most 64 characters long.
	UserSpecifiedType pulumi.StringPtrOutput `pulumi:"userSpecifiedType"`
}

Entry Metadata. A Data Catalog Entry resource represents another resource in Google Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic) or outside of Google Cloud Platform. Clients can use the linkedResource field in the Entry resource to refer to the original resource ID of the source system.

An Entry resource contains resource details, such as its schema. An Entry can also be used to attach flexible metadata, such as a Tag.

To get more information about Entry, see:

* [API documentation](https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries) * How-to Guides

## Example Usage ### Data Catalog Entry Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		entryGroup, err := datacatalog.NewEntryGroup(ctx, "entryGroup", &datacatalog.EntryGroupArgs{
			EntryGroupId: pulumi.String("my_group"),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewEntry(ctx, "basicEntry", &datacatalog.EntryArgs{
			EntryGroup:          entryGroup.ID(),
			EntryId:             pulumi.String("my_entry"),
			UserSpecifiedType:   pulumi.String("my_custom_type"),
			UserSpecifiedSystem: pulumi.String("SomethingExternal"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Data Catalog Entry Fileset

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		entryGroup, err := datacatalog.NewEntryGroup(ctx, "entryGroup", &datacatalog.EntryGroupArgs{
			EntryGroupId: pulumi.String("my_group"),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewEntry(ctx, "basicEntry", &datacatalog.EntryArgs{
			EntryGroup: entryGroup.ID(),
			EntryId:    pulumi.String("my_entry"),
			Type:       pulumi.String("FILESET"),
			GcsFilesetSpec: &datacatalog.EntryGcsFilesetSpecArgs{
				FilePatterns: pulumi.StringArray{
					pulumi.String("gs://fake_bucket/dir/*"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Data Catalog Entry Full

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		entryGroup, err := datacatalog.NewEntryGroup(ctx, "entryGroup", &datacatalog.EntryGroupArgs{
			EntryGroupId: pulumi.String("my_group"),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewEntry(ctx, "basicEntry", &datacatalog.EntryArgs{
			EntryGroup:          entryGroup.ID(),
			EntryId:             pulumi.String("my_entry"),
			UserSpecifiedType:   pulumi.String("my_user_specified_type"),
			UserSpecifiedSystem: pulumi.String("Something_custom"),
			LinkedResource:      pulumi.String("my/linked/resource"),
			DisplayName:         pulumi.String("my custom type entry"),
			Description:         pulumi.String("a custom type entry for a user specified system"),
			Schema:              pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"columns\": [\n", "    {\n", "      \"column\": \"first_name\",\n", "      \"description\": \"First name\",\n", "      \"mode\": \"REQUIRED\",\n", "      \"type\": \"STRING\"\n", "    },\n", "    {\n", "      \"column\": \"last_name\",\n", "      \"description\": \"Last name\",\n", "      \"mode\": \"REQUIRED\",\n", "      \"type\": \"STRING\"\n", "    },\n", "    {\n", "      \"column\": \"address\",\n", "      \"description\": \"Address\",\n", "      \"mode\": \"REPEATED\",\n", "      \"subcolumns\": [\n", "        {\n", "          \"column\": \"city\",\n", "          \"description\": \"City\",\n", "          \"mode\": \"NULLABLE\",\n", "          \"type\": \"STRING\"\n", "        },\n", "        {\n", "          \"column\": \"state\",\n", "          \"description\": \"State\",\n", "          \"mode\": \"NULLABLE\",\n", "          \"type\": \"STRING\"\n", "        }\n", "      ],\n", "      \"type\": \"RECORD\"\n", "    }\n", "  ]\n", "}\n")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Entry can be imported using any of these accepted formats

```sh

$ pulumi import gcp:datacatalog/entry:Entry default {{name}}

```

func GetEntry

func GetEntry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EntryState, opts ...pulumi.ResourceOption) (*Entry, error)

GetEntry gets an existing Entry 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 NewEntry

func NewEntry(ctx *pulumi.Context,
	name string, args *EntryArgs, opts ...pulumi.ResourceOption) (*Entry, error)

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

func (*Entry) ElementType added in v4.4.0

func (*Entry) ElementType() reflect.Type

func (*Entry) ToEntryOutput added in v4.4.0

func (i *Entry) ToEntryOutput() EntryOutput

func (*Entry) ToEntryOutputWithContext added in v4.4.0

func (i *Entry) ToEntryOutputWithContext(ctx context.Context) EntryOutput

func (*Entry) ToEntryPtrOutput added in v4.11.1

func (i *Entry) ToEntryPtrOutput() EntryPtrOutput

func (*Entry) ToEntryPtrOutputWithContext added in v4.11.1

func (i *Entry) ToEntryPtrOutputWithContext(ctx context.Context) EntryPtrOutput

type EntryArgs

type EntryArgs struct {
	// Entry description, which can consist of several sentences or paragraphs that describe entry contents.
	Description pulumi.StringPtrInput
	// Display information such as title and description. A short name to identify the entry,
	// for example, "Analytics Data - Jan 2011".
	DisplayName pulumi.StringPtrInput
	// The name of the entry group this entry is in.
	EntryGroup pulumi.StringInput
	// The id of the entry to create.
	EntryId pulumi.StringInput
	// Specification that applies to a Cloud Storage fileset. This is only valid on entries of type FILESET.
	// Structure is documented below.
	GcsFilesetSpec EntryGcsFilesetSpecPtrInput
	// The resource this metadata entry refers to.
	// For Google Cloud Platform resources, linkedResource is the full name of the resource.
	// For example, the linkedResource for a table resource from BigQuery is:
	// //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId
	// Output only when Entry is of type in the EntryType enum. For entries with userSpecifiedType,
	// this field is optional and defaults to an empty string.
	LinkedResource pulumi.StringPtrInput
	// Schema of the entry (e.g. BigQuery, GoogleSQL, Avro schema), as a json string. An entry might not have any schema
	// attached to it. See
	// https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries#schema
	// for what fields this schema can contain.
	Schema pulumi.StringPtrInput
	// The type of the entry. Only used for Entries with types in the EntryType enum.
	// Currently, only FILESET enum value is allowed. All other entries created through Data Catalog must use userSpecifiedType.
	// Possible values are `FILESET`.
	Type pulumi.StringPtrInput
	// This field indicates the entry's source system that Data Catalog does not integrate with.
	// userSpecifiedSystem strings must begin with a letter or underscore and can only contain letters, numbers,
	// and underscores; are case insensitive; must be at least 1 character and at most 64 characters long.
	UserSpecifiedSystem pulumi.StringPtrInput
	// Entry type if it does not fit any of the input-allowed values listed in EntryType enum above.
	// When creating an entry, users should check the enum values first, if nothing matches the entry
	// to be created, then provide a custom value, for example "mySpecialType".
	// userSpecifiedType strings must begin with a letter or underscore and can only contain letters,
	// numbers, and underscores; are case insensitive; must be at least 1 character and at most 64 characters long.
	UserSpecifiedType pulumi.StringPtrInput
}

The set of arguments for constructing a Entry resource.

func (EntryArgs) ElementType

func (EntryArgs) ElementType() reflect.Type

type EntryArray added in v4.11.1

type EntryArray []EntryInput

func (EntryArray) ElementType added in v4.11.1

func (EntryArray) ElementType() reflect.Type

func (EntryArray) ToEntryArrayOutput added in v4.11.1

func (i EntryArray) ToEntryArrayOutput() EntryArrayOutput

func (EntryArray) ToEntryArrayOutputWithContext added in v4.11.1

func (i EntryArray) ToEntryArrayOutputWithContext(ctx context.Context) EntryArrayOutput

type EntryArrayInput added in v4.11.1

type EntryArrayInput interface {
	pulumi.Input

	ToEntryArrayOutput() EntryArrayOutput
	ToEntryArrayOutputWithContext(context.Context) EntryArrayOutput
}

EntryArrayInput is an input type that accepts EntryArray and EntryArrayOutput values. You can construct a concrete instance of `EntryArrayInput` via:

EntryArray{ EntryArgs{...} }

type EntryArrayOutput added in v4.11.1

type EntryArrayOutput struct{ *pulumi.OutputState }

func (EntryArrayOutput) ElementType added in v4.11.1

func (EntryArrayOutput) ElementType() reflect.Type

func (EntryArrayOutput) Index added in v4.11.1

func (EntryArrayOutput) ToEntryArrayOutput added in v4.11.1

func (o EntryArrayOutput) ToEntryArrayOutput() EntryArrayOutput

func (EntryArrayOutput) ToEntryArrayOutputWithContext added in v4.11.1

func (o EntryArrayOutput) ToEntryArrayOutputWithContext(ctx context.Context) EntryArrayOutput

type EntryBigqueryDateShardedSpec

type EntryBigqueryDateShardedSpec struct {
	Dataset     *string `pulumi:"dataset"`
	ShardCount  *int    `pulumi:"shardCount"`
	TablePrefix *string `pulumi:"tablePrefix"`
}

type EntryBigqueryDateShardedSpecArgs

type EntryBigqueryDateShardedSpecArgs struct {
	Dataset     pulumi.StringPtrInput `pulumi:"dataset"`
	ShardCount  pulumi.IntPtrInput    `pulumi:"shardCount"`
	TablePrefix pulumi.StringPtrInput `pulumi:"tablePrefix"`
}

func (EntryBigqueryDateShardedSpecArgs) ElementType

func (EntryBigqueryDateShardedSpecArgs) ToEntryBigqueryDateShardedSpecOutput

func (i EntryBigqueryDateShardedSpecArgs) ToEntryBigqueryDateShardedSpecOutput() EntryBigqueryDateShardedSpecOutput

func (EntryBigqueryDateShardedSpecArgs) ToEntryBigqueryDateShardedSpecOutputWithContext

func (i EntryBigqueryDateShardedSpecArgs) ToEntryBigqueryDateShardedSpecOutputWithContext(ctx context.Context) EntryBigqueryDateShardedSpecOutput

type EntryBigqueryDateShardedSpecArray

type EntryBigqueryDateShardedSpecArray []EntryBigqueryDateShardedSpecInput

func (EntryBigqueryDateShardedSpecArray) ElementType

func (EntryBigqueryDateShardedSpecArray) ToEntryBigqueryDateShardedSpecArrayOutput

func (i EntryBigqueryDateShardedSpecArray) ToEntryBigqueryDateShardedSpecArrayOutput() EntryBigqueryDateShardedSpecArrayOutput

func (EntryBigqueryDateShardedSpecArray) ToEntryBigqueryDateShardedSpecArrayOutputWithContext

func (i EntryBigqueryDateShardedSpecArray) ToEntryBigqueryDateShardedSpecArrayOutputWithContext(ctx context.Context) EntryBigqueryDateShardedSpecArrayOutput

type EntryBigqueryDateShardedSpecArrayInput

type EntryBigqueryDateShardedSpecArrayInput interface {
	pulumi.Input

	ToEntryBigqueryDateShardedSpecArrayOutput() EntryBigqueryDateShardedSpecArrayOutput
	ToEntryBigqueryDateShardedSpecArrayOutputWithContext(context.Context) EntryBigqueryDateShardedSpecArrayOutput
}

EntryBigqueryDateShardedSpecArrayInput is an input type that accepts EntryBigqueryDateShardedSpecArray and EntryBigqueryDateShardedSpecArrayOutput values. You can construct a concrete instance of `EntryBigqueryDateShardedSpecArrayInput` via:

EntryBigqueryDateShardedSpecArray{ EntryBigqueryDateShardedSpecArgs{...} }

type EntryBigqueryDateShardedSpecArrayOutput

type EntryBigqueryDateShardedSpecArrayOutput struct{ *pulumi.OutputState }

func (EntryBigqueryDateShardedSpecArrayOutput) ElementType

func (EntryBigqueryDateShardedSpecArrayOutput) Index

func (EntryBigqueryDateShardedSpecArrayOutput) ToEntryBigqueryDateShardedSpecArrayOutput

func (o EntryBigqueryDateShardedSpecArrayOutput) ToEntryBigqueryDateShardedSpecArrayOutput() EntryBigqueryDateShardedSpecArrayOutput

func (EntryBigqueryDateShardedSpecArrayOutput) ToEntryBigqueryDateShardedSpecArrayOutputWithContext

func (o EntryBigqueryDateShardedSpecArrayOutput) ToEntryBigqueryDateShardedSpecArrayOutputWithContext(ctx context.Context) EntryBigqueryDateShardedSpecArrayOutput

type EntryBigqueryDateShardedSpecInput

type EntryBigqueryDateShardedSpecInput interface {
	pulumi.Input

	ToEntryBigqueryDateShardedSpecOutput() EntryBigqueryDateShardedSpecOutput
	ToEntryBigqueryDateShardedSpecOutputWithContext(context.Context) EntryBigqueryDateShardedSpecOutput
}

EntryBigqueryDateShardedSpecInput is an input type that accepts EntryBigqueryDateShardedSpecArgs and EntryBigqueryDateShardedSpecOutput values. You can construct a concrete instance of `EntryBigqueryDateShardedSpecInput` via:

EntryBigqueryDateShardedSpecArgs{...}

type EntryBigqueryDateShardedSpecOutput

type EntryBigqueryDateShardedSpecOutput struct{ *pulumi.OutputState }

func (EntryBigqueryDateShardedSpecOutput) Dataset

func (EntryBigqueryDateShardedSpecOutput) ElementType

func (EntryBigqueryDateShardedSpecOutput) ShardCount

func (EntryBigqueryDateShardedSpecOutput) TablePrefix

func (EntryBigqueryDateShardedSpecOutput) ToEntryBigqueryDateShardedSpecOutput

func (o EntryBigqueryDateShardedSpecOutput) ToEntryBigqueryDateShardedSpecOutput() EntryBigqueryDateShardedSpecOutput

func (EntryBigqueryDateShardedSpecOutput) ToEntryBigqueryDateShardedSpecOutputWithContext

func (o EntryBigqueryDateShardedSpecOutput) ToEntryBigqueryDateShardedSpecOutputWithContext(ctx context.Context) EntryBigqueryDateShardedSpecOutput

type EntryBigqueryTableSpec

type EntryBigqueryTableSpec struct {
	TableSourceType *string                           `pulumi:"tableSourceType"`
	TableSpecs      []EntryBigqueryTableSpecTableSpec `pulumi:"tableSpecs"`
	ViewSpecs       []EntryBigqueryTableSpecViewSpec  `pulumi:"viewSpecs"`
}

type EntryBigqueryTableSpecArgs

type EntryBigqueryTableSpecArgs struct {
	TableSourceType pulumi.StringPtrInput                     `pulumi:"tableSourceType"`
	TableSpecs      EntryBigqueryTableSpecTableSpecArrayInput `pulumi:"tableSpecs"`
	ViewSpecs       EntryBigqueryTableSpecViewSpecArrayInput  `pulumi:"viewSpecs"`
}

func (EntryBigqueryTableSpecArgs) ElementType

func (EntryBigqueryTableSpecArgs) ElementType() reflect.Type

func (EntryBigqueryTableSpecArgs) ToEntryBigqueryTableSpecOutput

func (i EntryBigqueryTableSpecArgs) ToEntryBigqueryTableSpecOutput() EntryBigqueryTableSpecOutput

func (EntryBigqueryTableSpecArgs) ToEntryBigqueryTableSpecOutputWithContext

func (i EntryBigqueryTableSpecArgs) ToEntryBigqueryTableSpecOutputWithContext(ctx context.Context) EntryBigqueryTableSpecOutput

type EntryBigqueryTableSpecArray

type EntryBigqueryTableSpecArray []EntryBigqueryTableSpecInput

func (EntryBigqueryTableSpecArray) ElementType

func (EntryBigqueryTableSpecArray) ToEntryBigqueryTableSpecArrayOutput

func (i EntryBigqueryTableSpecArray) ToEntryBigqueryTableSpecArrayOutput() EntryBigqueryTableSpecArrayOutput

func (EntryBigqueryTableSpecArray) ToEntryBigqueryTableSpecArrayOutputWithContext

func (i EntryBigqueryTableSpecArray) ToEntryBigqueryTableSpecArrayOutputWithContext(ctx context.Context) EntryBigqueryTableSpecArrayOutput

type EntryBigqueryTableSpecArrayInput

type EntryBigqueryTableSpecArrayInput interface {
	pulumi.Input

	ToEntryBigqueryTableSpecArrayOutput() EntryBigqueryTableSpecArrayOutput
	ToEntryBigqueryTableSpecArrayOutputWithContext(context.Context) EntryBigqueryTableSpecArrayOutput
}

EntryBigqueryTableSpecArrayInput is an input type that accepts EntryBigqueryTableSpecArray and EntryBigqueryTableSpecArrayOutput values. You can construct a concrete instance of `EntryBigqueryTableSpecArrayInput` via:

EntryBigqueryTableSpecArray{ EntryBigqueryTableSpecArgs{...} }

type EntryBigqueryTableSpecArrayOutput

type EntryBigqueryTableSpecArrayOutput struct{ *pulumi.OutputState }

func (EntryBigqueryTableSpecArrayOutput) ElementType

func (EntryBigqueryTableSpecArrayOutput) Index

func (EntryBigqueryTableSpecArrayOutput) ToEntryBigqueryTableSpecArrayOutput

func (o EntryBigqueryTableSpecArrayOutput) ToEntryBigqueryTableSpecArrayOutput() EntryBigqueryTableSpecArrayOutput

func (EntryBigqueryTableSpecArrayOutput) ToEntryBigqueryTableSpecArrayOutputWithContext

func (o EntryBigqueryTableSpecArrayOutput) ToEntryBigqueryTableSpecArrayOutputWithContext(ctx context.Context) EntryBigqueryTableSpecArrayOutput

type EntryBigqueryTableSpecInput

type EntryBigqueryTableSpecInput interface {
	pulumi.Input

	ToEntryBigqueryTableSpecOutput() EntryBigqueryTableSpecOutput
	ToEntryBigqueryTableSpecOutputWithContext(context.Context) EntryBigqueryTableSpecOutput
}

EntryBigqueryTableSpecInput is an input type that accepts EntryBigqueryTableSpecArgs and EntryBigqueryTableSpecOutput values. You can construct a concrete instance of `EntryBigqueryTableSpecInput` via:

EntryBigqueryTableSpecArgs{...}

type EntryBigqueryTableSpecOutput

type EntryBigqueryTableSpecOutput struct{ *pulumi.OutputState }

func (EntryBigqueryTableSpecOutput) ElementType

func (EntryBigqueryTableSpecOutput) TableSourceType

func (EntryBigqueryTableSpecOutput) TableSpecs

func (EntryBigqueryTableSpecOutput) ToEntryBigqueryTableSpecOutput

func (o EntryBigqueryTableSpecOutput) ToEntryBigqueryTableSpecOutput() EntryBigqueryTableSpecOutput

func (EntryBigqueryTableSpecOutput) ToEntryBigqueryTableSpecOutputWithContext

func (o EntryBigqueryTableSpecOutput) ToEntryBigqueryTableSpecOutputWithContext(ctx context.Context) EntryBigqueryTableSpecOutput

func (EntryBigqueryTableSpecOutput) ViewSpecs

type EntryBigqueryTableSpecTableSpec

type EntryBigqueryTableSpecTableSpec struct {
	GroupedEntry *string `pulumi:"groupedEntry"`
}

type EntryBigqueryTableSpecTableSpecArgs

type EntryBigqueryTableSpecTableSpecArgs struct {
	GroupedEntry pulumi.StringPtrInput `pulumi:"groupedEntry"`
}

func (EntryBigqueryTableSpecTableSpecArgs) ElementType

func (EntryBigqueryTableSpecTableSpecArgs) ToEntryBigqueryTableSpecTableSpecOutput

func (i EntryBigqueryTableSpecTableSpecArgs) ToEntryBigqueryTableSpecTableSpecOutput() EntryBigqueryTableSpecTableSpecOutput

func (EntryBigqueryTableSpecTableSpecArgs) ToEntryBigqueryTableSpecTableSpecOutputWithContext

func (i EntryBigqueryTableSpecTableSpecArgs) ToEntryBigqueryTableSpecTableSpecOutputWithContext(ctx context.Context) EntryBigqueryTableSpecTableSpecOutput

type EntryBigqueryTableSpecTableSpecArray

type EntryBigqueryTableSpecTableSpecArray []EntryBigqueryTableSpecTableSpecInput

func (EntryBigqueryTableSpecTableSpecArray) ElementType

func (EntryBigqueryTableSpecTableSpecArray) ToEntryBigqueryTableSpecTableSpecArrayOutput

func (i EntryBigqueryTableSpecTableSpecArray) ToEntryBigqueryTableSpecTableSpecArrayOutput() EntryBigqueryTableSpecTableSpecArrayOutput

func (EntryBigqueryTableSpecTableSpecArray) ToEntryBigqueryTableSpecTableSpecArrayOutputWithContext

func (i EntryBigqueryTableSpecTableSpecArray) ToEntryBigqueryTableSpecTableSpecArrayOutputWithContext(ctx context.Context) EntryBigqueryTableSpecTableSpecArrayOutput

type EntryBigqueryTableSpecTableSpecArrayInput

type EntryBigqueryTableSpecTableSpecArrayInput interface {
	pulumi.Input

	ToEntryBigqueryTableSpecTableSpecArrayOutput() EntryBigqueryTableSpecTableSpecArrayOutput
	ToEntryBigqueryTableSpecTableSpecArrayOutputWithContext(context.Context) EntryBigqueryTableSpecTableSpecArrayOutput
}

EntryBigqueryTableSpecTableSpecArrayInput is an input type that accepts EntryBigqueryTableSpecTableSpecArray and EntryBigqueryTableSpecTableSpecArrayOutput values. You can construct a concrete instance of `EntryBigqueryTableSpecTableSpecArrayInput` via:

EntryBigqueryTableSpecTableSpecArray{ EntryBigqueryTableSpecTableSpecArgs{...} }

type EntryBigqueryTableSpecTableSpecArrayOutput

type EntryBigqueryTableSpecTableSpecArrayOutput struct{ *pulumi.OutputState }

func (EntryBigqueryTableSpecTableSpecArrayOutput) ElementType

func (EntryBigqueryTableSpecTableSpecArrayOutput) Index

func (EntryBigqueryTableSpecTableSpecArrayOutput) ToEntryBigqueryTableSpecTableSpecArrayOutput

func (o EntryBigqueryTableSpecTableSpecArrayOutput) ToEntryBigqueryTableSpecTableSpecArrayOutput() EntryBigqueryTableSpecTableSpecArrayOutput

func (EntryBigqueryTableSpecTableSpecArrayOutput) ToEntryBigqueryTableSpecTableSpecArrayOutputWithContext

func (o EntryBigqueryTableSpecTableSpecArrayOutput) ToEntryBigqueryTableSpecTableSpecArrayOutputWithContext(ctx context.Context) EntryBigqueryTableSpecTableSpecArrayOutput

type EntryBigqueryTableSpecTableSpecInput

type EntryBigqueryTableSpecTableSpecInput interface {
	pulumi.Input

	ToEntryBigqueryTableSpecTableSpecOutput() EntryBigqueryTableSpecTableSpecOutput
	ToEntryBigqueryTableSpecTableSpecOutputWithContext(context.Context) EntryBigqueryTableSpecTableSpecOutput
}

EntryBigqueryTableSpecTableSpecInput is an input type that accepts EntryBigqueryTableSpecTableSpecArgs and EntryBigqueryTableSpecTableSpecOutput values. You can construct a concrete instance of `EntryBigqueryTableSpecTableSpecInput` via:

EntryBigqueryTableSpecTableSpecArgs{...}

type EntryBigqueryTableSpecTableSpecOutput

type EntryBigqueryTableSpecTableSpecOutput struct{ *pulumi.OutputState }

func (EntryBigqueryTableSpecTableSpecOutput) ElementType

func (EntryBigqueryTableSpecTableSpecOutput) GroupedEntry

func (EntryBigqueryTableSpecTableSpecOutput) ToEntryBigqueryTableSpecTableSpecOutput

func (o EntryBigqueryTableSpecTableSpecOutput) ToEntryBigqueryTableSpecTableSpecOutput() EntryBigqueryTableSpecTableSpecOutput

func (EntryBigqueryTableSpecTableSpecOutput) ToEntryBigqueryTableSpecTableSpecOutputWithContext

func (o EntryBigqueryTableSpecTableSpecOutput) ToEntryBigqueryTableSpecTableSpecOutputWithContext(ctx context.Context) EntryBigqueryTableSpecTableSpecOutput

type EntryBigqueryTableSpecViewSpec

type EntryBigqueryTableSpecViewSpec struct {
	ViewQuery *string `pulumi:"viewQuery"`
}

type EntryBigqueryTableSpecViewSpecArgs

type EntryBigqueryTableSpecViewSpecArgs struct {
	ViewQuery pulumi.StringPtrInput `pulumi:"viewQuery"`
}

func (EntryBigqueryTableSpecViewSpecArgs) ElementType

func (EntryBigqueryTableSpecViewSpecArgs) ToEntryBigqueryTableSpecViewSpecOutput

func (i EntryBigqueryTableSpecViewSpecArgs) ToEntryBigqueryTableSpecViewSpecOutput() EntryBigqueryTableSpecViewSpecOutput

func (EntryBigqueryTableSpecViewSpecArgs) ToEntryBigqueryTableSpecViewSpecOutputWithContext

func (i EntryBigqueryTableSpecViewSpecArgs) ToEntryBigqueryTableSpecViewSpecOutputWithContext(ctx context.Context) EntryBigqueryTableSpecViewSpecOutput

type EntryBigqueryTableSpecViewSpecArray

type EntryBigqueryTableSpecViewSpecArray []EntryBigqueryTableSpecViewSpecInput

func (EntryBigqueryTableSpecViewSpecArray) ElementType

func (EntryBigqueryTableSpecViewSpecArray) ToEntryBigqueryTableSpecViewSpecArrayOutput

func (i EntryBigqueryTableSpecViewSpecArray) ToEntryBigqueryTableSpecViewSpecArrayOutput() EntryBigqueryTableSpecViewSpecArrayOutput

func (EntryBigqueryTableSpecViewSpecArray) ToEntryBigqueryTableSpecViewSpecArrayOutputWithContext

func (i EntryBigqueryTableSpecViewSpecArray) ToEntryBigqueryTableSpecViewSpecArrayOutputWithContext(ctx context.Context) EntryBigqueryTableSpecViewSpecArrayOutput

type EntryBigqueryTableSpecViewSpecArrayInput

type EntryBigqueryTableSpecViewSpecArrayInput interface {
	pulumi.Input

	ToEntryBigqueryTableSpecViewSpecArrayOutput() EntryBigqueryTableSpecViewSpecArrayOutput
	ToEntryBigqueryTableSpecViewSpecArrayOutputWithContext(context.Context) EntryBigqueryTableSpecViewSpecArrayOutput
}

EntryBigqueryTableSpecViewSpecArrayInput is an input type that accepts EntryBigqueryTableSpecViewSpecArray and EntryBigqueryTableSpecViewSpecArrayOutput values. You can construct a concrete instance of `EntryBigqueryTableSpecViewSpecArrayInput` via:

EntryBigqueryTableSpecViewSpecArray{ EntryBigqueryTableSpecViewSpecArgs{...} }

type EntryBigqueryTableSpecViewSpecArrayOutput

type EntryBigqueryTableSpecViewSpecArrayOutput struct{ *pulumi.OutputState }

func (EntryBigqueryTableSpecViewSpecArrayOutput) ElementType

func (EntryBigqueryTableSpecViewSpecArrayOutput) Index

func (EntryBigqueryTableSpecViewSpecArrayOutput) ToEntryBigqueryTableSpecViewSpecArrayOutput

func (o EntryBigqueryTableSpecViewSpecArrayOutput) ToEntryBigqueryTableSpecViewSpecArrayOutput() EntryBigqueryTableSpecViewSpecArrayOutput

func (EntryBigqueryTableSpecViewSpecArrayOutput) ToEntryBigqueryTableSpecViewSpecArrayOutputWithContext

func (o EntryBigqueryTableSpecViewSpecArrayOutput) ToEntryBigqueryTableSpecViewSpecArrayOutputWithContext(ctx context.Context) EntryBigqueryTableSpecViewSpecArrayOutput

type EntryBigqueryTableSpecViewSpecInput

type EntryBigqueryTableSpecViewSpecInput interface {
	pulumi.Input

	ToEntryBigqueryTableSpecViewSpecOutput() EntryBigqueryTableSpecViewSpecOutput
	ToEntryBigqueryTableSpecViewSpecOutputWithContext(context.Context) EntryBigqueryTableSpecViewSpecOutput
}

EntryBigqueryTableSpecViewSpecInput is an input type that accepts EntryBigqueryTableSpecViewSpecArgs and EntryBigqueryTableSpecViewSpecOutput values. You can construct a concrete instance of `EntryBigqueryTableSpecViewSpecInput` via:

EntryBigqueryTableSpecViewSpecArgs{...}

type EntryBigqueryTableSpecViewSpecOutput

type EntryBigqueryTableSpecViewSpecOutput struct{ *pulumi.OutputState }

func (EntryBigqueryTableSpecViewSpecOutput) ElementType

func (EntryBigqueryTableSpecViewSpecOutput) ToEntryBigqueryTableSpecViewSpecOutput

func (o EntryBigqueryTableSpecViewSpecOutput) ToEntryBigqueryTableSpecViewSpecOutput() EntryBigqueryTableSpecViewSpecOutput

func (EntryBigqueryTableSpecViewSpecOutput) ToEntryBigqueryTableSpecViewSpecOutputWithContext

func (o EntryBigqueryTableSpecViewSpecOutput) ToEntryBigqueryTableSpecViewSpecOutputWithContext(ctx context.Context) EntryBigqueryTableSpecViewSpecOutput

func (EntryBigqueryTableSpecViewSpecOutput) ViewQuery

type EntryGcsFilesetSpec

type EntryGcsFilesetSpec struct {
	// Patterns to identify a set of files in Google Cloud Storage.
	// See [Cloud Storage documentation](https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames)
	// for more information. Note that bucket wildcards are currently not supported. Examples of valid filePatterns:
	// * gs://bucket_name/dir/*: matches all files within bucket_name/dir directory.
	// * gs://bucket_name/dir/**: matches all files in bucket_name/dir spanning all subdirectories.
	// * gs://bucket_name/file*: matches files prefixed by file in bucketName
	// * gs://bucket_name/??.txt: matches files with two characters followed by .txt in bucketName
	// * gs://bucket_name/[aeiou].txt: matches files that contain a single vowel character followed by .txt in bucketName
	// * gs://bucket_name/[a-m].txt: matches files that contain a, b, ... or m followed by .txt in bucketName
	// * gs://bucket_name/a/*/b: matches all files in bucketName that match a/*/b pattern, such as a/c/b, a/d/b
	// * gs://another_bucket/a.txt: matches gs://another_bucket/a.txt
	FilePatterns []string `pulumi:"filePatterns"`
	// -
	// Sample files contained in this fileset, not all files contained in this fileset are represented here.
	// Structure is documented below.
	SampleGcsFileSpecs []EntryGcsFilesetSpecSampleGcsFileSpec `pulumi:"sampleGcsFileSpecs"`
}

type EntryGcsFilesetSpecArgs

type EntryGcsFilesetSpecArgs struct {
	// Patterns to identify a set of files in Google Cloud Storage.
	// See [Cloud Storage documentation](https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames)
	// for more information. Note that bucket wildcards are currently not supported. Examples of valid filePatterns:
	// * gs://bucket_name/dir/*: matches all files within bucket_name/dir directory.
	// * gs://bucket_name/dir/**: matches all files in bucket_name/dir spanning all subdirectories.
	// * gs://bucket_name/file*: matches files prefixed by file in bucketName
	// * gs://bucket_name/??.txt: matches files with two characters followed by .txt in bucketName
	// * gs://bucket_name/[aeiou].txt: matches files that contain a single vowel character followed by .txt in bucketName
	// * gs://bucket_name/[a-m].txt: matches files that contain a, b, ... or m followed by .txt in bucketName
	// * gs://bucket_name/a/*/b: matches all files in bucketName that match a/*/b pattern, such as a/c/b, a/d/b
	// * gs://another_bucket/a.txt: matches gs://another_bucket/a.txt
	FilePatterns pulumi.StringArrayInput `pulumi:"filePatterns"`
	// -
	// Sample files contained in this fileset, not all files contained in this fileset are represented here.
	// Structure is documented below.
	SampleGcsFileSpecs EntryGcsFilesetSpecSampleGcsFileSpecArrayInput `pulumi:"sampleGcsFileSpecs"`
}

func (EntryGcsFilesetSpecArgs) ElementType

func (EntryGcsFilesetSpecArgs) ElementType() reflect.Type

func (EntryGcsFilesetSpecArgs) ToEntryGcsFilesetSpecOutput

func (i EntryGcsFilesetSpecArgs) ToEntryGcsFilesetSpecOutput() EntryGcsFilesetSpecOutput

func (EntryGcsFilesetSpecArgs) ToEntryGcsFilesetSpecOutputWithContext

func (i EntryGcsFilesetSpecArgs) ToEntryGcsFilesetSpecOutputWithContext(ctx context.Context) EntryGcsFilesetSpecOutput

func (EntryGcsFilesetSpecArgs) ToEntryGcsFilesetSpecPtrOutput

func (i EntryGcsFilesetSpecArgs) ToEntryGcsFilesetSpecPtrOutput() EntryGcsFilesetSpecPtrOutput

func (EntryGcsFilesetSpecArgs) ToEntryGcsFilesetSpecPtrOutputWithContext

func (i EntryGcsFilesetSpecArgs) ToEntryGcsFilesetSpecPtrOutputWithContext(ctx context.Context) EntryGcsFilesetSpecPtrOutput

type EntryGcsFilesetSpecInput

type EntryGcsFilesetSpecInput interface {
	pulumi.Input

	ToEntryGcsFilesetSpecOutput() EntryGcsFilesetSpecOutput
	ToEntryGcsFilesetSpecOutputWithContext(context.Context) EntryGcsFilesetSpecOutput
}

EntryGcsFilesetSpecInput is an input type that accepts EntryGcsFilesetSpecArgs and EntryGcsFilesetSpecOutput values. You can construct a concrete instance of `EntryGcsFilesetSpecInput` via:

EntryGcsFilesetSpecArgs{...}

type EntryGcsFilesetSpecOutput

type EntryGcsFilesetSpecOutput struct{ *pulumi.OutputState }

func (EntryGcsFilesetSpecOutput) ElementType

func (EntryGcsFilesetSpecOutput) ElementType() reflect.Type

func (EntryGcsFilesetSpecOutput) FilePatterns

Patterns to identify a set of files in Google Cloud Storage. See [Cloud Storage documentation](https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames) for more information. Note that bucket wildcards are currently not supported. Examples of valid filePatterns: * gs://bucket_name/dir/*: matches all files within bucket_name/dir directory. * gs://bucket_name/dir/**: matches all files in bucket_name/dir spanning all subdirectories. * gs://bucket_name/file*: matches files prefixed by file in bucketName * gs://bucket_name/??.txt: matches files with two characters followed by .txt in bucketName * gs://bucket_name/[aeiou].txt: matches files that contain a single vowel character followed by .txt in bucketName * gs://bucket_name/[a-m].txt: matches files that contain a, b, ... or m followed by .txt in bucketName * gs://bucket_name/a/*/b: matches all files in bucketName that match a/*/b pattern, such as a/c/b, a/d/b * gs://another_bucket/a.txt: matches gs://another_bucket/a.txt

func (EntryGcsFilesetSpecOutput) SampleGcsFileSpecs

- Sample files contained in this fileset, not all files contained in this fileset are represented here. Structure is documented below.

func (EntryGcsFilesetSpecOutput) ToEntryGcsFilesetSpecOutput

func (o EntryGcsFilesetSpecOutput) ToEntryGcsFilesetSpecOutput() EntryGcsFilesetSpecOutput

func (EntryGcsFilesetSpecOutput) ToEntryGcsFilesetSpecOutputWithContext

func (o EntryGcsFilesetSpecOutput) ToEntryGcsFilesetSpecOutputWithContext(ctx context.Context) EntryGcsFilesetSpecOutput

func (EntryGcsFilesetSpecOutput) ToEntryGcsFilesetSpecPtrOutput

func (o EntryGcsFilesetSpecOutput) ToEntryGcsFilesetSpecPtrOutput() EntryGcsFilesetSpecPtrOutput

func (EntryGcsFilesetSpecOutput) ToEntryGcsFilesetSpecPtrOutputWithContext

func (o EntryGcsFilesetSpecOutput) ToEntryGcsFilesetSpecPtrOutputWithContext(ctx context.Context) EntryGcsFilesetSpecPtrOutput

type EntryGcsFilesetSpecPtrInput

type EntryGcsFilesetSpecPtrInput interface {
	pulumi.Input

	ToEntryGcsFilesetSpecPtrOutput() EntryGcsFilesetSpecPtrOutput
	ToEntryGcsFilesetSpecPtrOutputWithContext(context.Context) EntryGcsFilesetSpecPtrOutput
}

EntryGcsFilesetSpecPtrInput is an input type that accepts EntryGcsFilesetSpecArgs, EntryGcsFilesetSpecPtr and EntryGcsFilesetSpecPtrOutput values. You can construct a concrete instance of `EntryGcsFilesetSpecPtrInput` via:

        EntryGcsFilesetSpecArgs{...}

or:

        nil

type EntryGcsFilesetSpecPtrOutput

type EntryGcsFilesetSpecPtrOutput struct{ *pulumi.OutputState }

func (EntryGcsFilesetSpecPtrOutput) Elem

func (EntryGcsFilesetSpecPtrOutput) ElementType

func (EntryGcsFilesetSpecPtrOutput) FilePatterns

Patterns to identify a set of files in Google Cloud Storage. See [Cloud Storage documentation](https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames) for more information. Note that bucket wildcards are currently not supported. Examples of valid filePatterns: * gs://bucket_name/dir/*: matches all files within bucket_name/dir directory. * gs://bucket_name/dir/**: matches all files in bucket_name/dir spanning all subdirectories. * gs://bucket_name/file*: matches files prefixed by file in bucketName * gs://bucket_name/??.txt: matches files with two characters followed by .txt in bucketName * gs://bucket_name/[aeiou].txt: matches files that contain a single vowel character followed by .txt in bucketName * gs://bucket_name/[a-m].txt: matches files that contain a, b, ... or m followed by .txt in bucketName * gs://bucket_name/a/*/b: matches all files in bucketName that match a/*/b pattern, such as a/c/b, a/d/b * gs://another_bucket/a.txt: matches gs://another_bucket/a.txt

func (EntryGcsFilesetSpecPtrOutput) SampleGcsFileSpecs

- Sample files contained in this fileset, not all files contained in this fileset are represented here. Structure is documented below.

func (EntryGcsFilesetSpecPtrOutput) ToEntryGcsFilesetSpecPtrOutput

func (o EntryGcsFilesetSpecPtrOutput) ToEntryGcsFilesetSpecPtrOutput() EntryGcsFilesetSpecPtrOutput

func (EntryGcsFilesetSpecPtrOutput) ToEntryGcsFilesetSpecPtrOutputWithContext

func (o EntryGcsFilesetSpecPtrOutput) ToEntryGcsFilesetSpecPtrOutputWithContext(ctx context.Context) EntryGcsFilesetSpecPtrOutput

type EntryGcsFilesetSpecSampleGcsFileSpec

type EntryGcsFilesetSpecSampleGcsFileSpec struct {
	// -
	// The full file path
	FilePath *string `pulumi:"filePath"`
	// -
	// The size of the file, in bytes.
	SizeBytes *int `pulumi:"sizeBytes"`
}

type EntryGcsFilesetSpecSampleGcsFileSpecArgs

type EntryGcsFilesetSpecSampleGcsFileSpecArgs struct {
	// -
	// The full file path
	FilePath pulumi.StringPtrInput `pulumi:"filePath"`
	// -
	// The size of the file, in bytes.
	SizeBytes pulumi.IntPtrInput `pulumi:"sizeBytes"`
}

func (EntryGcsFilesetSpecSampleGcsFileSpecArgs) ElementType

func (EntryGcsFilesetSpecSampleGcsFileSpecArgs) ToEntryGcsFilesetSpecSampleGcsFileSpecOutput

func (i EntryGcsFilesetSpecSampleGcsFileSpecArgs) ToEntryGcsFilesetSpecSampleGcsFileSpecOutput() EntryGcsFilesetSpecSampleGcsFileSpecOutput

func (EntryGcsFilesetSpecSampleGcsFileSpecArgs) ToEntryGcsFilesetSpecSampleGcsFileSpecOutputWithContext

func (i EntryGcsFilesetSpecSampleGcsFileSpecArgs) ToEntryGcsFilesetSpecSampleGcsFileSpecOutputWithContext(ctx context.Context) EntryGcsFilesetSpecSampleGcsFileSpecOutput

type EntryGcsFilesetSpecSampleGcsFileSpecArray

type EntryGcsFilesetSpecSampleGcsFileSpecArray []EntryGcsFilesetSpecSampleGcsFileSpecInput

func (EntryGcsFilesetSpecSampleGcsFileSpecArray) ElementType

func (EntryGcsFilesetSpecSampleGcsFileSpecArray) ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutput

func (i EntryGcsFilesetSpecSampleGcsFileSpecArray) ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutput() EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput

func (EntryGcsFilesetSpecSampleGcsFileSpecArray) ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutputWithContext

func (i EntryGcsFilesetSpecSampleGcsFileSpecArray) ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutputWithContext(ctx context.Context) EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput

type EntryGcsFilesetSpecSampleGcsFileSpecArrayInput

type EntryGcsFilesetSpecSampleGcsFileSpecArrayInput interface {
	pulumi.Input

	ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutput() EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput
	ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutputWithContext(context.Context) EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput
}

EntryGcsFilesetSpecSampleGcsFileSpecArrayInput is an input type that accepts EntryGcsFilesetSpecSampleGcsFileSpecArray and EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput values. You can construct a concrete instance of `EntryGcsFilesetSpecSampleGcsFileSpecArrayInput` via:

EntryGcsFilesetSpecSampleGcsFileSpecArray{ EntryGcsFilesetSpecSampleGcsFileSpecArgs{...} }

type EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput

type EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput struct{ *pulumi.OutputState }

func (EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput) ElementType

func (EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput) Index

func (EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput) ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutput

func (o EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput) ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutput() EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput

func (EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput) ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutputWithContext

func (o EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput) ToEntryGcsFilesetSpecSampleGcsFileSpecArrayOutputWithContext(ctx context.Context) EntryGcsFilesetSpecSampleGcsFileSpecArrayOutput

type EntryGcsFilesetSpecSampleGcsFileSpecInput

type EntryGcsFilesetSpecSampleGcsFileSpecInput interface {
	pulumi.Input

	ToEntryGcsFilesetSpecSampleGcsFileSpecOutput() EntryGcsFilesetSpecSampleGcsFileSpecOutput
	ToEntryGcsFilesetSpecSampleGcsFileSpecOutputWithContext(context.Context) EntryGcsFilesetSpecSampleGcsFileSpecOutput
}

EntryGcsFilesetSpecSampleGcsFileSpecInput is an input type that accepts EntryGcsFilesetSpecSampleGcsFileSpecArgs and EntryGcsFilesetSpecSampleGcsFileSpecOutput values. You can construct a concrete instance of `EntryGcsFilesetSpecSampleGcsFileSpecInput` via:

EntryGcsFilesetSpecSampleGcsFileSpecArgs{...}

type EntryGcsFilesetSpecSampleGcsFileSpecOutput

type EntryGcsFilesetSpecSampleGcsFileSpecOutput struct{ *pulumi.OutputState }

func (EntryGcsFilesetSpecSampleGcsFileSpecOutput) ElementType

func (EntryGcsFilesetSpecSampleGcsFileSpecOutput) FilePath

- The full file path

func (EntryGcsFilesetSpecSampleGcsFileSpecOutput) SizeBytes

- The size of the file, in bytes.

func (EntryGcsFilesetSpecSampleGcsFileSpecOutput) ToEntryGcsFilesetSpecSampleGcsFileSpecOutput

func (o EntryGcsFilesetSpecSampleGcsFileSpecOutput) ToEntryGcsFilesetSpecSampleGcsFileSpecOutput() EntryGcsFilesetSpecSampleGcsFileSpecOutput

func (EntryGcsFilesetSpecSampleGcsFileSpecOutput) ToEntryGcsFilesetSpecSampleGcsFileSpecOutputWithContext

func (o EntryGcsFilesetSpecSampleGcsFileSpecOutput) ToEntryGcsFilesetSpecSampleGcsFileSpecOutputWithContext(ctx context.Context) EntryGcsFilesetSpecSampleGcsFileSpecOutput

type EntryGroup

type EntryGroup struct {
	pulumi.CustomResourceState

	// Entry group description, which can consist of several sentences or paragraphs that describe entry group contents.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// A short name to identify the entry group, for example, "analytics data - jan 2011".
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// The id of the entry group to create. The id must begin with a letter or underscore,
	// contain only English letters, numbers and underscores, and be at most 64 characters.
	EntryGroupId pulumi.StringOutput `pulumi:"entryGroupId"`
	// The resource name of the entry group in URL format. Example:
	// projects/{project}/locations/{location}/entryGroups/{entryGroupId}
	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"`
	// EntryGroup location region.
	Region pulumi.StringOutput `pulumi:"region"`
}

An EntryGroup resource represents a logical grouping of zero or more Data Catalog Entry resources.

To get more information about EntryGroup, see:

* [API documentation](https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups) * How-to Guides

## Example Usage ### Data Catalog Entry Group Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewEntryGroup(ctx, "basicEntryGroup", &datacatalog.EntryGroupArgs{
			EntryGroupId: pulumi.String("my_group"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Data Catalog Entry Group Full

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewEntryGroup(ctx, "basicEntryGroup", &datacatalog.EntryGroupArgs{
			Description:  pulumi.String("example entry group"),
			DisplayName:  pulumi.String("entry group"),
			EntryGroupId: pulumi.String("my_group"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

EntryGroup can be imported using any of these accepted formats

```sh

$ pulumi import gcp:datacatalog/entryGroup:EntryGroup default {{name}}

```

func GetEntryGroup

func GetEntryGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EntryGroupState, opts ...pulumi.ResourceOption) (*EntryGroup, error)

GetEntryGroup gets an existing EntryGroup 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 NewEntryGroup

func NewEntryGroup(ctx *pulumi.Context,
	name string, args *EntryGroupArgs, opts ...pulumi.ResourceOption) (*EntryGroup, error)

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

func (*EntryGroup) ElementType added in v4.4.0

func (*EntryGroup) ElementType() reflect.Type

func (*EntryGroup) ToEntryGroupOutput added in v4.4.0

func (i *EntryGroup) ToEntryGroupOutput() EntryGroupOutput

func (*EntryGroup) ToEntryGroupOutputWithContext added in v4.4.0

func (i *EntryGroup) ToEntryGroupOutputWithContext(ctx context.Context) EntryGroupOutput

func (*EntryGroup) ToEntryGroupPtrOutput added in v4.11.1

func (i *EntryGroup) ToEntryGroupPtrOutput() EntryGroupPtrOutput

func (*EntryGroup) ToEntryGroupPtrOutputWithContext added in v4.11.1

func (i *EntryGroup) ToEntryGroupPtrOutputWithContext(ctx context.Context) EntryGroupPtrOutput

type EntryGroupArgs

type EntryGroupArgs struct {
	// Entry group description, which can consist of several sentences or paragraphs that describe entry group contents.
	Description pulumi.StringPtrInput
	// A short name to identify the entry group, for example, "analytics data - jan 2011".
	DisplayName pulumi.StringPtrInput
	// The id of the entry group to create. The id must begin with a letter or underscore,
	// contain only English letters, numbers and underscores, and be at most 64 characters.
	EntryGroupId 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
	// EntryGroup location region.
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a EntryGroup resource.

func (EntryGroupArgs) ElementType

func (EntryGroupArgs) ElementType() reflect.Type

type EntryGroupArray added in v4.11.1

type EntryGroupArray []EntryGroupInput

func (EntryGroupArray) ElementType added in v4.11.1

func (EntryGroupArray) ElementType() reflect.Type

func (EntryGroupArray) ToEntryGroupArrayOutput added in v4.11.1

func (i EntryGroupArray) ToEntryGroupArrayOutput() EntryGroupArrayOutput

func (EntryGroupArray) ToEntryGroupArrayOutputWithContext added in v4.11.1

func (i EntryGroupArray) ToEntryGroupArrayOutputWithContext(ctx context.Context) EntryGroupArrayOutput

type EntryGroupArrayInput added in v4.11.1

type EntryGroupArrayInput interface {
	pulumi.Input

	ToEntryGroupArrayOutput() EntryGroupArrayOutput
	ToEntryGroupArrayOutputWithContext(context.Context) EntryGroupArrayOutput
}

EntryGroupArrayInput is an input type that accepts EntryGroupArray and EntryGroupArrayOutput values. You can construct a concrete instance of `EntryGroupArrayInput` via:

EntryGroupArray{ EntryGroupArgs{...} }

type EntryGroupArrayOutput added in v4.11.1

type EntryGroupArrayOutput struct{ *pulumi.OutputState }

func (EntryGroupArrayOutput) ElementType added in v4.11.1

func (EntryGroupArrayOutput) ElementType() reflect.Type

func (EntryGroupArrayOutput) Index added in v4.11.1

func (EntryGroupArrayOutput) ToEntryGroupArrayOutput added in v4.11.1

func (o EntryGroupArrayOutput) ToEntryGroupArrayOutput() EntryGroupArrayOutput

func (EntryGroupArrayOutput) ToEntryGroupArrayOutputWithContext added in v4.11.1

func (o EntryGroupArrayOutput) ToEntryGroupArrayOutputWithContext(ctx context.Context) EntryGroupArrayOutput

type EntryGroupIamBinding

type EntryGroupIamBinding struct {
	pulumi.CustomResourceState

	Condition EntryGroupIamBindingConditionPtrOutput `pulumi:"condition"`
	// Used to find the parent resource to bind the IAM policy to
	EntryGroup pulumi.StringOutput `pulumi:"entryGroup"`
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	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.
	Project pulumi.StringOutput `pulumi:"project"`
	Region  pulumi.StringOutput `pulumi:"region"`
	// The role that should be applied. Only one
	// `datacatalog.EntryGroupIamBinding` 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 Data catalog EntryGroup. Each of these resources serves a different use case:

* `datacatalog.EntryGroupIamPolicy`: Authoritative. Sets the IAM policy for the entrygroup and replaces any existing policy already attached. * `datacatalog.EntryGroupIamBinding`: 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 entrygroup are preserved. * `datacatalog.EntryGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the entrygroup are preserved.

> **Note:** `datacatalog.EntryGroupIamPolicy` **cannot** be used in conjunction with `datacatalog.EntryGroupIamBinding` and `datacatalog.EntryGroupIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_entry\_group\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewEntryGroupIamPolicy(ctx, "policy", &datacatalog.EntryGroupIamPolicyArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_entry\_group\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewEntryGroupIamBinding(ctx, "binding", &datacatalog.EntryGroupIamBindingArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.Name),
			Role:       pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_entry\_group\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewEntryGroupIamMember(ctx, "member", &datacatalog.EntryGroupIamMemberArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.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}}/locations/{{region}}/entryGroups/{{entry_group}} * {{project}}/{{region}}/{{entry_group}} * {{region}}/{{entry_group}} * {{entry_group}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog entrygroup 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:datacatalog/entryGroupIamBinding:EntryGroupIamBinding editor "projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}} 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:datacatalog/entryGroupIamBinding:EntryGroupIamBinding editor "projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/entryGroupIamBinding:EntryGroupIamBinding editor projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}}

```

-> **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 GetEntryGroupIamBinding

func GetEntryGroupIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EntryGroupIamBindingState, opts ...pulumi.ResourceOption) (*EntryGroupIamBinding, error)

GetEntryGroupIamBinding gets an existing EntryGroupIamBinding 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 NewEntryGroupIamBinding

func NewEntryGroupIamBinding(ctx *pulumi.Context,
	name string, args *EntryGroupIamBindingArgs, opts ...pulumi.ResourceOption) (*EntryGroupIamBinding, error)

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

func (*EntryGroupIamBinding) ElementType added in v4.4.0

func (*EntryGroupIamBinding) ElementType() reflect.Type

func (*EntryGroupIamBinding) ToEntryGroupIamBindingOutput added in v4.4.0

func (i *EntryGroupIamBinding) ToEntryGroupIamBindingOutput() EntryGroupIamBindingOutput

func (*EntryGroupIamBinding) ToEntryGroupIamBindingOutputWithContext added in v4.4.0

func (i *EntryGroupIamBinding) ToEntryGroupIamBindingOutputWithContext(ctx context.Context) EntryGroupIamBindingOutput

func (*EntryGroupIamBinding) ToEntryGroupIamBindingPtrOutput added in v4.11.1

func (i *EntryGroupIamBinding) ToEntryGroupIamBindingPtrOutput() EntryGroupIamBindingPtrOutput

func (*EntryGroupIamBinding) ToEntryGroupIamBindingPtrOutputWithContext added in v4.11.1

func (i *EntryGroupIamBinding) ToEntryGroupIamBindingPtrOutputWithContext(ctx context.Context) EntryGroupIamBindingPtrOutput

type EntryGroupIamBindingArgs

type EntryGroupIamBindingArgs struct {
	Condition EntryGroupIamBindingConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	EntryGroup 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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.EntryGroupIamBinding` 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 EntryGroupIamBinding resource.

func (EntryGroupIamBindingArgs) ElementType

func (EntryGroupIamBindingArgs) ElementType() reflect.Type

type EntryGroupIamBindingArray added in v4.11.1

type EntryGroupIamBindingArray []EntryGroupIamBindingInput

func (EntryGroupIamBindingArray) ElementType added in v4.11.1

func (EntryGroupIamBindingArray) ElementType() reflect.Type

func (EntryGroupIamBindingArray) ToEntryGroupIamBindingArrayOutput added in v4.11.1

func (i EntryGroupIamBindingArray) ToEntryGroupIamBindingArrayOutput() EntryGroupIamBindingArrayOutput

func (EntryGroupIamBindingArray) ToEntryGroupIamBindingArrayOutputWithContext added in v4.11.1

func (i EntryGroupIamBindingArray) ToEntryGroupIamBindingArrayOutputWithContext(ctx context.Context) EntryGroupIamBindingArrayOutput

type EntryGroupIamBindingArrayInput added in v4.11.1

type EntryGroupIamBindingArrayInput interface {
	pulumi.Input

	ToEntryGroupIamBindingArrayOutput() EntryGroupIamBindingArrayOutput
	ToEntryGroupIamBindingArrayOutputWithContext(context.Context) EntryGroupIamBindingArrayOutput
}

EntryGroupIamBindingArrayInput is an input type that accepts EntryGroupIamBindingArray and EntryGroupIamBindingArrayOutput values. You can construct a concrete instance of `EntryGroupIamBindingArrayInput` via:

EntryGroupIamBindingArray{ EntryGroupIamBindingArgs{...} }

type EntryGroupIamBindingArrayOutput added in v4.11.1

type EntryGroupIamBindingArrayOutput struct{ *pulumi.OutputState }

func (EntryGroupIamBindingArrayOutput) ElementType added in v4.11.1

func (EntryGroupIamBindingArrayOutput) Index added in v4.11.1

func (EntryGroupIamBindingArrayOutput) ToEntryGroupIamBindingArrayOutput added in v4.11.1

func (o EntryGroupIamBindingArrayOutput) ToEntryGroupIamBindingArrayOutput() EntryGroupIamBindingArrayOutput

func (EntryGroupIamBindingArrayOutput) ToEntryGroupIamBindingArrayOutputWithContext added in v4.11.1

func (o EntryGroupIamBindingArrayOutput) ToEntryGroupIamBindingArrayOutputWithContext(ctx context.Context) EntryGroupIamBindingArrayOutput

type EntryGroupIamBindingCondition

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

type EntryGroupIamBindingConditionArgs

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

func (EntryGroupIamBindingConditionArgs) ElementType

func (EntryGroupIamBindingConditionArgs) ToEntryGroupIamBindingConditionOutput

func (i EntryGroupIamBindingConditionArgs) ToEntryGroupIamBindingConditionOutput() EntryGroupIamBindingConditionOutput

func (EntryGroupIamBindingConditionArgs) ToEntryGroupIamBindingConditionOutputWithContext

func (i EntryGroupIamBindingConditionArgs) ToEntryGroupIamBindingConditionOutputWithContext(ctx context.Context) EntryGroupIamBindingConditionOutput

func (EntryGroupIamBindingConditionArgs) ToEntryGroupIamBindingConditionPtrOutput

func (i EntryGroupIamBindingConditionArgs) ToEntryGroupIamBindingConditionPtrOutput() EntryGroupIamBindingConditionPtrOutput

func (EntryGroupIamBindingConditionArgs) ToEntryGroupIamBindingConditionPtrOutputWithContext

func (i EntryGroupIamBindingConditionArgs) ToEntryGroupIamBindingConditionPtrOutputWithContext(ctx context.Context) EntryGroupIamBindingConditionPtrOutput

type EntryGroupIamBindingConditionInput

type EntryGroupIamBindingConditionInput interface {
	pulumi.Input

	ToEntryGroupIamBindingConditionOutput() EntryGroupIamBindingConditionOutput
	ToEntryGroupIamBindingConditionOutputWithContext(context.Context) EntryGroupIamBindingConditionOutput
}

EntryGroupIamBindingConditionInput is an input type that accepts EntryGroupIamBindingConditionArgs and EntryGroupIamBindingConditionOutput values. You can construct a concrete instance of `EntryGroupIamBindingConditionInput` via:

EntryGroupIamBindingConditionArgs{...}

type EntryGroupIamBindingConditionOutput

type EntryGroupIamBindingConditionOutput struct{ *pulumi.OutputState }

func (EntryGroupIamBindingConditionOutput) Description

func (EntryGroupIamBindingConditionOutput) ElementType

func (EntryGroupIamBindingConditionOutput) Expression

func (EntryGroupIamBindingConditionOutput) Title

func (EntryGroupIamBindingConditionOutput) ToEntryGroupIamBindingConditionOutput

func (o EntryGroupIamBindingConditionOutput) ToEntryGroupIamBindingConditionOutput() EntryGroupIamBindingConditionOutput

func (EntryGroupIamBindingConditionOutput) ToEntryGroupIamBindingConditionOutputWithContext

func (o EntryGroupIamBindingConditionOutput) ToEntryGroupIamBindingConditionOutputWithContext(ctx context.Context) EntryGroupIamBindingConditionOutput

func (EntryGroupIamBindingConditionOutput) ToEntryGroupIamBindingConditionPtrOutput

func (o EntryGroupIamBindingConditionOutput) ToEntryGroupIamBindingConditionPtrOutput() EntryGroupIamBindingConditionPtrOutput

func (EntryGroupIamBindingConditionOutput) ToEntryGroupIamBindingConditionPtrOutputWithContext

func (o EntryGroupIamBindingConditionOutput) ToEntryGroupIamBindingConditionPtrOutputWithContext(ctx context.Context) EntryGroupIamBindingConditionPtrOutput

type EntryGroupIamBindingConditionPtrInput

type EntryGroupIamBindingConditionPtrInput interface {
	pulumi.Input

	ToEntryGroupIamBindingConditionPtrOutput() EntryGroupIamBindingConditionPtrOutput
	ToEntryGroupIamBindingConditionPtrOutputWithContext(context.Context) EntryGroupIamBindingConditionPtrOutput
}

EntryGroupIamBindingConditionPtrInput is an input type that accepts EntryGroupIamBindingConditionArgs, EntryGroupIamBindingConditionPtr and EntryGroupIamBindingConditionPtrOutput values. You can construct a concrete instance of `EntryGroupIamBindingConditionPtrInput` via:

        EntryGroupIamBindingConditionArgs{...}

or:

        nil

type EntryGroupIamBindingConditionPtrOutput

type EntryGroupIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (EntryGroupIamBindingConditionPtrOutput) Description

func (EntryGroupIamBindingConditionPtrOutput) Elem

func (EntryGroupIamBindingConditionPtrOutput) ElementType

func (EntryGroupIamBindingConditionPtrOutput) Expression

func (EntryGroupIamBindingConditionPtrOutput) Title

func (EntryGroupIamBindingConditionPtrOutput) ToEntryGroupIamBindingConditionPtrOutput

func (o EntryGroupIamBindingConditionPtrOutput) ToEntryGroupIamBindingConditionPtrOutput() EntryGroupIamBindingConditionPtrOutput

func (EntryGroupIamBindingConditionPtrOutput) ToEntryGroupIamBindingConditionPtrOutputWithContext

func (o EntryGroupIamBindingConditionPtrOutput) ToEntryGroupIamBindingConditionPtrOutputWithContext(ctx context.Context) EntryGroupIamBindingConditionPtrOutput

type EntryGroupIamBindingInput added in v4.4.0

type EntryGroupIamBindingInput interface {
	pulumi.Input

	ToEntryGroupIamBindingOutput() EntryGroupIamBindingOutput
	ToEntryGroupIamBindingOutputWithContext(ctx context.Context) EntryGroupIamBindingOutput
}

type EntryGroupIamBindingMap added in v4.11.1

type EntryGroupIamBindingMap map[string]EntryGroupIamBindingInput

func (EntryGroupIamBindingMap) ElementType added in v4.11.1

func (EntryGroupIamBindingMap) ElementType() reflect.Type

func (EntryGroupIamBindingMap) ToEntryGroupIamBindingMapOutput added in v4.11.1

func (i EntryGroupIamBindingMap) ToEntryGroupIamBindingMapOutput() EntryGroupIamBindingMapOutput

func (EntryGroupIamBindingMap) ToEntryGroupIamBindingMapOutputWithContext added in v4.11.1

func (i EntryGroupIamBindingMap) ToEntryGroupIamBindingMapOutputWithContext(ctx context.Context) EntryGroupIamBindingMapOutput

type EntryGroupIamBindingMapInput added in v4.11.1

type EntryGroupIamBindingMapInput interface {
	pulumi.Input

	ToEntryGroupIamBindingMapOutput() EntryGroupIamBindingMapOutput
	ToEntryGroupIamBindingMapOutputWithContext(context.Context) EntryGroupIamBindingMapOutput
}

EntryGroupIamBindingMapInput is an input type that accepts EntryGroupIamBindingMap and EntryGroupIamBindingMapOutput values. You can construct a concrete instance of `EntryGroupIamBindingMapInput` via:

EntryGroupIamBindingMap{ "key": EntryGroupIamBindingArgs{...} }

type EntryGroupIamBindingMapOutput added in v4.11.1

type EntryGroupIamBindingMapOutput struct{ *pulumi.OutputState }

func (EntryGroupIamBindingMapOutput) ElementType added in v4.11.1

func (EntryGroupIamBindingMapOutput) MapIndex added in v4.11.1

func (EntryGroupIamBindingMapOutput) ToEntryGroupIamBindingMapOutput added in v4.11.1

func (o EntryGroupIamBindingMapOutput) ToEntryGroupIamBindingMapOutput() EntryGroupIamBindingMapOutput

func (EntryGroupIamBindingMapOutput) ToEntryGroupIamBindingMapOutputWithContext added in v4.11.1

func (o EntryGroupIamBindingMapOutput) ToEntryGroupIamBindingMapOutputWithContext(ctx context.Context) EntryGroupIamBindingMapOutput

type EntryGroupIamBindingOutput added in v4.4.0

type EntryGroupIamBindingOutput struct {
	*pulumi.OutputState
}

func (EntryGroupIamBindingOutput) ElementType added in v4.4.0

func (EntryGroupIamBindingOutput) ElementType() reflect.Type

func (EntryGroupIamBindingOutput) ToEntryGroupIamBindingOutput added in v4.4.0

func (o EntryGroupIamBindingOutput) ToEntryGroupIamBindingOutput() EntryGroupIamBindingOutput

func (EntryGroupIamBindingOutput) ToEntryGroupIamBindingOutputWithContext added in v4.4.0

func (o EntryGroupIamBindingOutput) ToEntryGroupIamBindingOutputWithContext(ctx context.Context) EntryGroupIamBindingOutput

func (EntryGroupIamBindingOutput) ToEntryGroupIamBindingPtrOutput added in v4.11.1

func (o EntryGroupIamBindingOutput) ToEntryGroupIamBindingPtrOutput() EntryGroupIamBindingPtrOutput

func (EntryGroupIamBindingOutput) ToEntryGroupIamBindingPtrOutputWithContext added in v4.11.1

func (o EntryGroupIamBindingOutput) ToEntryGroupIamBindingPtrOutputWithContext(ctx context.Context) EntryGroupIamBindingPtrOutput

type EntryGroupIamBindingPtrInput added in v4.11.1

type EntryGroupIamBindingPtrInput interface {
	pulumi.Input

	ToEntryGroupIamBindingPtrOutput() EntryGroupIamBindingPtrOutput
	ToEntryGroupIamBindingPtrOutputWithContext(ctx context.Context) EntryGroupIamBindingPtrOutput
}

type EntryGroupIamBindingPtrOutput added in v4.11.1

type EntryGroupIamBindingPtrOutput struct {
	*pulumi.OutputState
}

func (EntryGroupIamBindingPtrOutput) ElementType added in v4.11.1

func (EntryGroupIamBindingPtrOutput) ToEntryGroupIamBindingPtrOutput added in v4.11.1

func (o EntryGroupIamBindingPtrOutput) ToEntryGroupIamBindingPtrOutput() EntryGroupIamBindingPtrOutput

func (EntryGroupIamBindingPtrOutput) ToEntryGroupIamBindingPtrOutputWithContext added in v4.11.1

func (o EntryGroupIamBindingPtrOutput) ToEntryGroupIamBindingPtrOutputWithContext(ctx context.Context) EntryGroupIamBindingPtrOutput

type EntryGroupIamBindingState

type EntryGroupIamBindingState struct {
	Condition EntryGroupIamBindingConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	EntryGroup pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag    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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.EntryGroupIamBinding` 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 (EntryGroupIamBindingState) ElementType

func (EntryGroupIamBindingState) ElementType() reflect.Type

type EntryGroupIamMember

type EntryGroupIamMember struct {
	pulumi.CustomResourceState

	Condition EntryGroupIamMemberConditionPtrOutput `pulumi:"condition"`
	// Used to find the parent resource to bind the IAM policy to
	EntryGroup pulumi.StringOutput `pulumi:"entryGroup"`
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	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.
	Project pulumi.StringOutput `pulumi:"project"`
	Region  pulumi.StringOutput `pulumi:"region"`
	// The role that should be applied. Only one
	// `datacatalog.EntryGroupIamBinding` 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 Data catalog EntryGroup. Each of these resources serves a different use case:

* `datacatalog.EntryGroupIamPolicy`: Authoritative. Sets the IAM policy for the entrygroup and replaces any existing policy already attached. * `datacatalog.EntryGroupIamBinding`: 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 entrygroup are preserved. * `datacatalog.EntryGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the entrygroup are preserved.

> **Note:** `datacatalog.EntryGroupIamPolicy` **cannot** be used in conjunction with `datacatalog.EntryGroupIamBinding` and `datacatalog.EntryGroupIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_entry\_group\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewEntryGroupIamPolicy(ctx, "policy", &datacatalog.EntryGroupIamPolicyArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_entry\_group\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewEntryGroupIamBinding(ctx, "binding", &datacatalog.EntryGroupIamBindingArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.Name),
			Role:       pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_entry\_group\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewEntryGroupIamMember(ctx, "member", &datacatalog.EntryGroupIamMemberArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.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}}/locations/{{region}}/entryGroups/{{entry_group}} * {{project}}/{{region}}/{{entry_group}} * {{region}}/{{entry_group}} * {{entry_group}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog entrygroup 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:datacatalog/entryGroupIamMember:EntryGroupIamMember editor "projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}} 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:datacatalog/entryGroupIamMember:EntryGroupIamMember editor "projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/entryGroupIamMember:EntryGroupIamMember editor projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}}

```

-> **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 GetEntryGroupIamMember

func GetEntryGroupIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EntryGroupIamMemberState, opts ...pulumi.ResourceOption) (*EntryGroupIamMember, error)

GetEntryGroupIamMember gets an existing EntryGroupIamMember 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 NewEntryGroupIamMember

func NewEntryGroupIamMember(ctx *pulumi.Context,
	name string, args *EntryGroupIamMemberArgs, opts ...pulumi.ResourceOption) (*EntryGroupIamMember, error)

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

func (*EntryGroupIamMember) ElementType added in v4.4.0

func (*EntryGroupIamMember) ElementType() reflect.Type

func (*EntryGroupIamMember) ToEntryGroupIamMemberOutput added in v4.4.0

func (i *EntryGroupIamMember) ToEntryGroupIamMemberOutput() EntryGroupIamMemberOutput

func (*EntryGroupIamMember) ToEntryGroupIamMemberOutputWithContext added in v4.4.0

func (i *EntryGroupIamMember) ToEntryGroupIamMemberOutputWithContext(ctx context.Context) EntryGroupIamMemberOutput

func (*EntryGroupIamMember) ToEntryGroupIamMemberPtrOutput added in v4.11.1

func (i *EntryGroupIamMember) ToEntryGroupIamMemberPtrOutput() EntryGroupIamMemberPtrOutput

func (*EntryGroupIamMember) ToEntryGroupIamMemberPtrOutputWithContext added in v4.11.1

func (i *EntryGroupIamMember) ToEntryGroupIamMemberPtrOutputWithContext(ctx context.Context) EntryGroupIamMemberPtrOutput

type EntryGroupIamMemberArgs

type EntryGroupIamMemberArgs struct {
	Condition EntryGroupIamMemberConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	EntryGroup 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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.EntryGroupIamBinding` 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 EntryGroupIamMember resource.

func (EntryGroupIamMemberArgs) ElementType

func (EntryGroupIamMemberArgs) ElementType() reflect.Type

type EntryGroupIamMemberArray added in v4.11.1

type EntryGroupIamMemberArray []EntryGroupIamMemberInput

func (EntryGroupIamMemberArray) ElementType added in v4.11.1

func (EntryGroupIamMemberArray) ElementType() reflect.Type

func (EntryGroupIamMemberArray) ToEntryGroupIamMemberArrayOutput added in v4.11.1

func (i EntryGroupIamMemberArray) ToEntryGroupIamMemberArrayOutput() EntryGroupIamMemberArrayOutput

func (EntryGroupIamMemberArray) ToEntryGroupIamMemberArrayOutputWithContext added in v4.11.1

func (i EntryGroupIamMemberArray) ToEntryGroupIamMemberArrayOutputWithContext(ctx context.Context) EntryGroupIamMemberArrayOutput

type EntryGroupIamMemberArrayInput added in v4.11.1

type EntryGroupIamMemberArrayInput interface {
	pulumi.Input

	ToEntryGroupIamMemberArrayOutput() EntryGroupIamMemberArrayOutput
	ToEntryGroupIamMemberArrayOutputWithContext(context.Context) EntryGroupIamMemberArrayOutput
}

EntryGroupIamMemberArrayInput is an input type that accepts EntryGroupIamMemberArray and EntryGroupIamMemberArrayOutput values. You can construct a concrete instance of `EntryGroupIamMemberArrayInput` via:

EntryGroupIamMemberArray{ EntryGroupIamMemberArgs{...} }

type EntryGroupIamMemberArrayOutput added in v4.11.1

type EntryGroupIamMemberArrayOutput struct{ *pulumi.OutputState }

func (EntryGroupIamMemberArrayOutput) ElementType added in v4.11.1

func (EntryGroupIamMemberArrayOutput) Index added in v4.11.1

func (EntryGroupIamMemberArrayOutput) ToEntryGroupIamMemberArrayOutput added in v4.11.1

func (o EntryGroupIamMemberArrayOutput) ToEntryGroupIamMemberArrayOutput() EntryGroupIamMemberArrayOutput

func (EntryGroupIamMemberArrayOutput) ToEntryGroupIamMemberArrayOutputWithContext added in v4.11.1

func (o EntryGroupIamMemberArrayOutput) ToEntryGroupIamMemberArrayOutputWithContext(ctx context.Context) EntryGroupIamMemberArrayOutput

type EntryGroupIamMemberCondition

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

type EntryGroupIamMemberConditionArgs

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

func (EntryGroupIamMemberConditionArgs) ElementType

func (EntryGroupIamMemberConditionArgs) ToEntryGroupIamMemberConditionOutput

func (i EntryGroupIamMemberConditionArgs) ToEntryGroupIamMemberConditionOutput() EntryGroupIamMemberConditionOutput

func (EntryGroupIamMemberConditionArgs) ToEntryGroupIamMemberConditionOutputWithContext

func (i EntryGroupIamMemberConditionArgs) ToEntryGroupIamMemberConditionOutputWithContext(ctx context.Context) EntryGroupIamMemberConditionOutput

func (EntryGroupIamMemberConditionArgs) ToEntryGroupIamMemberConditionPtrOutput

func (i EntryGroupIamMemberConditionArgs) ToEntryGroupIamMemberConditionPtrOutput() EntryGroupIamMemberConditionPtrOutput

func (EntryGroupIamMemberConditionArgs) ToEntryGroupIamMemberConditionPtrOutputWithContext

func (i EntryGroupIamMemberConditionArgs) ToEntryGroupIamMemberConditionPtrOutputWithContext(ctx context.Context) EntryGroupIamMemberConditionPtrOutput

type EntryGroupIamMemberConditionInput

type EntryGroupIamMemberConditionInput interface {
	pulumi.Input

	ToEntryGroupIamMemberConditionOutput() EntryGroupIamMemberConditionOutput
	ToEntryGroupIamMemberConditionOutputWithContext(context.Context) EntryGroupIamMemberConditionOutput
}

EntryGroupIamMemberConditionInput is an input type that accepts EntryGroupIamMemberConditionArgs and EntryGroupIamMemberConditionOutput values. You can construct a concrete instance of `EntryGroupIamMemberConditionInput` via:

EntryGroupIamMemberConditionArgs{...}

type EntryGroupIamMemberConditionOutput

type EntryGroupIamMemberConditionOutput struct{ *pulumi.OutputState }

func (EntryGroupIamMemberConditionOutput) Description

func (EntryGroupIamMemberConditionOutput) ElementType

func (EntryGroupIamMemberConditionOutput) Expression

func (EntryGroupIamMemberConditionOutput) Title

func (EntryGroupIamMemberConditionOutput) ToEntryGroupIamMemberConditionOutput

func (o EntryGroupIamMemberConditionOutput) ToEntryGroupIamMemberConditionOutput() EntryGroupIamMemberConditionOutput

func (EntryGroupIamMemberConditionOutput) ToEntryGroupIamMemberConditionOutputWithContext

func (o EntryGroupIamMemberConditionOutput) ToEntryGroupIamMemberConditionOutputWithContext(ctx context.Context) EntryGroupIamMemberConditionOutput

func (EntryGroupIamMemberConditionOutput) ToEntryGroupIamMemberConditionPtrOutput

func (o EntryGroupIamMemberConditionOutput) ToEntryGroupIamMemberConditionPtrOutput() EntryGroupIamMemberConditionPtrOutput

func (EntryGroupIamMemberConditionOutput) ToEntryGroupIamMemberConditionPtrOutputWithContext

func (o EntryGroupIamMemberConditionOutput) ToEntryGroupIamMemberConditionPtrOutputWithContext(ctx context.Context) EntryGroupIamMemberConditionPtrOutput

type EntryGroupIamMemberConditionPtrInput

type EntryGroupIamMemberConditionPtrInput interface {
	pulumi.Input

	ToEntryGroupIamMemberConditionPtrOutput() EntryGroupIamMemberConditionPtrOutput
	ToEntryGroupIamMemberConditionPtrOutputWithContext(context.Context) EntryGroupIamMemberConditionPtrOutput
}

EntryGroupIamMemberConditionPtrInput is an input type that accepts EntryGroupIamMemberConditionArgs, EntryGroupIamMemberConditionPtr and EntryGroupIamMemberConditionPtrOutput values. You can construct a concrete instance of `EntryGroupIamMemberConditionPtrInput` via:

        EntryGroupIamMemberConditionArgs{...}

or:

        nil

type EntryGroupIamMemberConditionPtrOutput

type EntryGroupIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (EntryGroupIamMemberConditionPtrOutput) Description

func (EntryGroupIamMemberConditionPtrOutput) Elem

func (EntryGroupIamMemberConditionPtrOutput) ElementType

func (EntryGroupIamMemberConditionPtrOutput) Expression

func (EntryGroupIamMemberConditionPtrOutput) Title

func (EntryGroupIamMemberConditionPtrOutput) ToEntryGroupIamMemberConditionPtrOutput

func (o EntryGroupIamMemberConditionPtrOutput) ToEntryGroupIamMemberConditionPtrOutput() EntryGroupIamMemberConditionPtrOutput

func (EntryGroupIamMemberConditionPtrOutput) ToEntryGroupIamMemberConditionPtrOutputWithContext

func (o EntryGroupIamMemberConditionPtrOutput) ToEntryGroupIamMemberConditionPtrOutputWithContext(ctx context.Context) EntryGroupIamMemberConditionPtrOutput

type EntryGroupIamMemberInput added in v4.4.0

type EntryGroupIamMemberInput interface {
	pulumi.Input

	ToEntryGroupIamMemberOutput() EntryGroupIamMemberOutput
	ToEntryGroupIamMemberOutputWithContext(ctx context.Context) EntryGroupIamMemberOutput
}

type EntryGroupIamMemberMap added in v4.11.1

type EntryGroupIamMemberMap map[string]EntryGroupIamMemberInput

func (EntryGroupIamMemberMap) ElementType added in v4.11.1

func (EntryGroupIamMemberMap) ElementType() reflect.Type

func (EntryGroupIamMemberMap) ToEntryGroupIamMemberMapOutput added in v4.11.1

func (i EntryGroupIamMemberMap) ToEntryGroupIamMemberMapOutput() EntryGroupIamMemberMapOutput

func (EntryGroupIamMemberMap) ToEntryGroupIamMemberMapOutputWithContext added in v4.11.1

func (i EntryGroupIamMemberMap) ToEntryGroupIamMemberMapOutputWithContext(ctx context.Context) EntryGroupIamMemberMapOutput

type EntryGroupIamMemberMapInput added in v4.11.1

type EntryGroupIamMemberMapInput interface {
	pulumi.Input

	ToEntryGroupIamMemberMapOutput() EntryGroupIamMemberMapOutput
	ToEntryGroupIamMemberMapOutputWithContext(context.Context) EntryGroupIamMemberMapOutput
}

EntryGroupIamMemberMapInput is an input type that accepts EntryGroupIamMemberMap and EntryGroupIamMemberMapOutput values. You can construct a concrete instance of `EntryGroupIamMemberMapInput` via:

EntryGroupIamMemberMap{ "key": EntryGroupIamMemberArgs{...} }

type EntryGroupIamMemberMapOutput added in v4.11.1

type EntryGroupIamMemberMapOutput struct{ *pulumi.OutputState }

func (EntryGroupIamMemberMapOutput) ElementType added in v4.11.1

func (EntryGroupIamMemberMapOutput) MapIndex added in v4.11.1

func (EntryGroupIamMemberMapOutput) ToEntryGroupIamMemberMapOutput added in v4.11.1

func (o EntryGroupIamMemberMapOutput) ToEntryGroupIamMemberMapOutput() EntryGroupIamMemberMapOutput

func (EntryGroupIamMemberMapOutput) ToEntryGroupIamMemberMapOutputWithContext added in v4.11.1

func (o EntryGroupIamMemberMapOutput) ToEntryGroupIamMemberMapOutputWithContext(ctx context.Context) EntryGroupIamMemberMapOutput

type EntryGroupIamMemberOutput added in v4.4.0

type EntryGroupIamMemberOutput struct {
	*pulumi.OutputState
}

func (EntryGroupIamMemberOutput) ElementType added in v4.4.0

func (EntryGroupIamMemberOutput) ElementType() reflect.Type

func (EntryGroupIamMemberOutput) ToEntryGroupIamMemberOutput added in v4.4.0

func (o EntryGroupIamMemberOutput) ToEntryGroupIamMemberOutput() EntryGroupIamMemberOutput

func (EntryGroupIamMemberOutput) ToEntryGroupIamMemberOutputWithContext added in v4.4.0

func (o EntryGroupIamMemberOutput) ToEntryGroupIamMemberOutputWithContext(ctx context.Context) EntryGroupIamMemberOutput

func (EntryGroupIamMemberOutput) ToEntryGroupIamMemberPtrOutput added in v4.11.1

func (o EntryGroupIamMemberOutput) ToEntryGroupIamMemberPtrOutput() EntryGroupIamMemberPtrOutput

func (EntryGroupIamMemberOutput) ToEntryGroupIamMemberPtrOutputWithContext added in v4.11.1

func (o EntryGroupIamMemberOutput) ToEntryGroupIamMemberPtrOutputWithContext(ctx context.Context) EntryGroupIamMemberPtrOutput

type EntryGroupIamMemberPtrInput added in v4.11.1

type EntryGroupIamMemberPtrInput interface {
	pulumi.Input

	ToEntryGroupIamMemberPtrOutput() EntryGroupIamMemberPtrOutput
	ToEntryGroupIamMemberPtrOutputWithContext(ctx context.Context) EntryGroupIamMemberPtrOutput
}

type EntryGroupIamMemberPtrOutput added in v4.11.1

type EntryGroupIamMemberPtrOutput struct {
	*pulumi.OutputState
}

func (EntryGroupIamMemberPtrOutput) ElementType added in v4.11.1

func (EntryGroupIamMemberPtrOutput) ToEntryGroupIamMemberPtrOutput added in v4.11.1

func (o EntryGroupIamMemberPtrOutput) ToEntryGroupIamMemberPtrOutput() EntryGroupIamMemberPtrOutput

func (EntryGroupIamMemberPtrOutput) ToEntryGroupIamMemberPtrOutputWithContext added in v4.11.1

func (o EntryGroupIamMemberPtrOutput) ToEntryGroupIamMemberPtrOutputWithContext(ctx context.Context) EntryGroupIamMemberPtrOutput

type EntryGroupIamMemberState

type EntryGroupIamMemberState struct {
	Condition EntryGroupIamMemberConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	EntryGroup pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag   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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.EntryGroupIamBinding` 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 (EntryGroupIamMemberState) ElementType

func (EntryGroupIamMemberState) ElementType() reflect.Type

type EntryGroupIamPolicy

type EntryGroupIamPolicy struct {
	pulumi.CustomResourceState

	// Used to find the parent resource to bind the IAM policy to
	EntryGroup pulumi.StringOutput `pulumi:"entryGroup"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// 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.
	Project pulumi.StringOutput `pulumi:"project"`
	Region  pulumi.StringOutput `pulumi:"region"`
}

Three different resources help you manage your IAM policy for Data catalog EntryGroup. Each of these resources serves a different use case:

* `datacatalog.EntryGroupIamPolicy`: Authoritative. Sets the IAM policy for the entrygroup and replaces any existing policy already attached. * `datacatalog.EntryGroupIamBinding`: 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 entrygroup are preserved. * `datacatalog.EntryGroupIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the entrygroup are preserved.

> **Note:** `datacatalog.EntryGroupIamPolicy` **cannot** be used in conjunction with `datacatalog.EntryGroupIamBinding` and `datacatalog.EntryGroupIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_entry\_group\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewEntryGroupIamPolicy(ctx, "policy", &datacatalog.EntryGroupIamPolicyArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_entry\_group\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewEntryGroupIamBinding(ctx, "binding", &datacatalog.EntryGroupIamBindingArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.Name),
			Role:       pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_entry\_group\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewEntryGroupIamMember(ctx, "member", &datacatalog.EntryGroupIamMemberArgs{
			EntryGroup: pulumi.Any(google_data_catalog_entry_group.Basic_entry_group.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}}/locations/{{region}}/entryGroups/{{entry_group}} * {{project}}/{{region}}/{{entry_group}} * {{region}}/{{entry_group}} * {{entry_group}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog entrygroup 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:datacatalog/entryGroupIamPolicy:EntryGroupIamPolicy editor "projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}} 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:datacatalog/entryGroupIamPolicy:EntryGroupIamPolicy editor "projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/entryGroupIamPolicy:EntryGroupIamPolicy editor projects/{{project}}/locations/{{region}}/entryGroups/{{entry_group}}

```

-> **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 GetEntryGroupIamPolicy

func GetEntryGroupIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EntryGroupIamPolicyState, opts ...pulumi.ResourceOption) (*EntryGroupIamPolicy, error)

GetEntryGroupIamPolicy gets an existing EntryGroupIamPolicy 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 NewEntryGroupIamPolicy

func NewEntryGroupIamPolicy(ctx *pulumi.Context,
	name string, args *EntryGroupIamPolicyArgs, opts ...pulumi.ResourceOption) (*EntryGroupIamPolicy, error)

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

func (*EntryGroupIamPolicy) ElementType added in v4.4.0

func (*EntryGroupIamPolicy) ElementType() reflect.Type

func (*EntryGroupIamPolicy) ToEntryGroupIamPolicyOutput added in v4.4.0

func (i *EntryGroupIamPolicy) ToEntryGroupIamPolicyOutput() EntryGroupIamPolicyOutput

func (*EntryGroupIamPolicy) ToEntryGroupIamPolicyOutputWithContext added in v4.4.0

func (i *EntryGroupIamPolicy) ToEntryGroupIamPolicyOutputWithContext(ctx context.Context) EntryGroupIamPolicyOutput

func (*EntryGroupIamPolicy) ToEntryGroupIamPolicyPtrOutput added in v4.11.1

func (i *EntryGroupIamPolicy) ToEntryGroupIamPolicyPtrOutput() EntryGroupIamPolicyPtrOutput

func (*EntryGroupIamPolicy) ToEntryGroupIamPolicyPtrOutputWithContext added in v4.11.1

func (i *EntryGroupIamPolicy) ToEntryGroupIamPolicyPtrOutputWithContext(ctx context.Context) EntryGroupIamPolicyPtrOutput

type EntryGroupIamPolicyArgs

type EntryGroupIamPolicyArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	EntryGroup 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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
}

The set of arguments for constructing a EntryGroupIamPolicy resource.

func (EntryGroupIamPolicyArgs) ElementType

func (EntryGroupIamPolicyArgs) ElementType() reflect.Type

type EntryGroupIamPolicyArray added in v4.11.1

type EntryGroupIamPolicyArray []EntryGroupIamPolicyInput

func (EntryGroupIamPolicyArray) ElementType added in v4.11.1

func (EntryGroupIamPolicyArray) ElementType() reflect.Type

func (EntryGroupIamPolicyArray) ToEntryGroupIamPolicyArrayOutput added in v4.11.1

func (i EntryGroupIamPolicyArray) ToEntryGroupIamPolicyArrayOutput() EntryGroupIamPolicyArrayOutput

func (EntryGroupIamPolicyArray) ToEntryGroupIamPolicyArrayOutputWithContext added in v4.11.1

func (i EntryGroupIamPolicyArray) ToEntryGroupIamPolicyArrayOutputWithContext(ctx context.Context) EntryGroupIamPolicyArrayOutput

type EntryGroupIamPolicyArrayInput added in v4.11.1

type EntryGroupIamPolicyArrayInput interface {
	pulumi.Input

	ToEntryGroupIamPolicyArrayOutput() EntryGroupIamPolicyArrayOutput
	ToEntryGroupIamPolicyArrayOutputWithContext(context.Context) EntryGroupIamPolicyArrayOutput
}

EntryGroupIamPolicyArrayInput is an input type that accepts EntryGroupIamPolicyArray and EntryGroupIamPolicyArrayOutput values. You can construct a concrete instance of `EntryGroupIamPolicyArrayInput` via:

EntryGroupIamPolicyArray{ EntryGroupIamPolicyArgs{...} }

type EntryGroupIamPolicyArrayOutput added in v4.11.1

type EntryGroupIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (EntryGroupIamPolicyArrayOutput) ElementType added in v4.11.1

func (EntryGroupIamPolicyArrayOutput) Index added in v4.11.1

func (EntryGroupIamPolicyArrayOutput) ToEntryGroupIamPolicyArrayOutput added in v4.11.1

func (o EntryGroupIamPolicyArrayOutput) ToEntryGroupIamPolicyArrayOutput() EntryGroupIamPolicyArrayOutput

func (EntryGroupIamPolicyArrayOutput) ToEntryGroupIamPolicyArrayOutputWithContext added in v4.11.1

func (o EntryGroupIamPolicyArrayOutput) ToEntryGroupIamPolicyArrayOutputWithContext(ctx context.Context) EntryGroupIamPolicyArrayOutput

type EntryGroupIamPolicyInput added in v4.4.0

type EntryGroupIamPolicyInput interface {
	pulumi.Input

	ToEntryGroupIamPolicyOutput() EntryGroupIamPolicyOutput
	ToEntryGroupIamPolicyOutputWithContext(ctx context.Context) EntryGroupIamPolicyOutput
}

type EntryGroupIamPolicyMap added in v4.11.1

type EntryGroupIamPolicyMap map[string]EntryGroupIamPolicyInput

func (EntryGroupIamPolicyMap) ElementType added in v4.11.1

func (EntryGroupIamPolicyMap) ElementType() reflect.Type

func (EntryGroupIamPolicyMap) ToEntryGroupIamPolicyMapOutput added in v4.11.1

func (i EntryGroupIamPolicyMap) ToEntryGroupIamPolicyMapOutput() EntryGroupIamPolicyMapOutput

func (EntryGroupIamPolicyMap) ToEntryGroupIamPolicyMapOutputWithContext added in v4.11.1

func (i EntryGroupIamPolicyMap) ToEntryGroupIamPolicyMapOutputWithContext(ctx context.Context) EntryGroupIamPolicyMapOutput

type EntryGroupIamPolicyMapInput added in v4.11.1

type EntryGroupIamPolicyMapInput interface {
	pulumi.Input

	ToEntryGroupIamPolicyMapOutput() EntryGroupIamPolicyMapOutput
	ToEntryGroupIamPolicyMapOutputWithContext(context.Context) EntryGroupIamPolicyMapOutput
}

EntryGroupIamPolicyMapInput is an input type that accepts EntryGroupIamPolicyMap and EntryGroupIamPolicyMapOutput values. You can construct a concrete instance of `EntryGroupIamPolicyMapInput` via:

EntryGroupIamPolicyMap{ "key": EntryGroupIamPolicyArgs{...} }

type EntryGroupIamPolicyMapOutput added in v4.11.1

type EntryGroupIamPolicyMapOutput struct{ *pulumi.OutputState }

func (EntryGroupIamPolicyMapOutput) ElementType added in v4.11.1

func (EntryGroupIamPolicyMapOutput) MapIndex added in v4.11.1

func (EntryGroupIamPolicyMapOutput) ToEntryGroupIamPolicyMapOutput added in v4.11.1

func (o EntryGroupIamPolicyMapOutput) ToEntryGroupIamPolicyMapOutput() EntryGroupIamPolicyMapOutput

func (EntryGroupIamPolicyMapOutput) ToEntryGroupIamPolicyMapOutputWithContext added in v4.11.1

func (o EntryGroupIamPolicyMapOutput) ToEntryGroupIamPolicyMapOutputWithContext(ctx context.Context) EntryGroupIamPolicyMapOutput

type EntryGroupIamPolicyOutput added in v4.4.0

type EntryGroupIamPolicyOutput struct {
	*pulumi.OutputState
}

func (EntryGroupIamPolicyOutput) ElementType added in v4.4.0

func (EntryGroupIamPolicyOutput) ElementType() reflect.Type

func (EntryGroupIamPolicyOutput) ToEntryGroupIamPolicyOutput added in v4.4.0

func (o EntryGroupIamPolicyOutput) ToEntryGroupIamPolicyOutput() EntryGroupIamPolicyOutput

func (EntryGroupIamPolicyOutput) ToEntryGroupIamPolicyOutputWithContext added in v4.4.0

func (o EntryGroupIamPolicyOutput) ToEntryGroupIamPolicyOutputWithContext(ctx context.Context) EntryGroupIamPolicyOutput

func (EntryGroupIamPolicyOutput) ToEntryGroupIamPolicyPtrOutput added in v4.11.1

func (o EntryGroupIamPolicyOutput) ToEntryGroupIamPolicyPtrOutput() EntryGroupIamPolicyPtrOutput

func (EntryGroupIamPolicyOutput) ToEntryGroupIamPolicyPtrOutputWithContext added in v4.11.1

func (o EntryGroupIamPolicyOutput) ToEntryGroupIamPolicyPtrOutputWithContext(ctx context.Context) EntryGroupIamPolicyPtrOutput

type EntryGroupIamPolicyPtrInput added in v4.11.1

type EntryGroupIamPolicyPtrInput interface {
	pulumi.Input

	ToEntryGroupIamPolicyPtrOutput() EntryGroupIamPolicyPtrOutput
	ToEntryGroupIamPolicyPtrOutputWithContext(ctx context.Context) EntryGroupIamPolicyPtrOutput
}

type EntryGroupIamPolicyPtrOutput added in v4.11.1

type EntryGroupIamPolicyPtrOutput struct {
	*pulumi.OutputState
}

func (EntryGroupIamPolicyPtrOutput) ElementType added in v4.11.1

func (EntryGroupIamPolicyPtrOutput) ToEntryGroupIamPolicyPtrOutput added in v4.11.1

func (o EntryGroupIamPolicyPtrOutput) ToEntryGroupIamPolicyPtrOutput() EntryGroupIamPolicyPtrOutput

func (EntryGroupIamPolicyPtrOutput) ToEntryGroupIamPolicyPtrOutputWithContext added in v4.11.1

func (o EntryGroupIamPolicyPtrOutput) ToEntryGroupIamPolicyPtrOutputWithContext(ctx context.Context) EntryGroupIamPolicyPtrOutput

type EntryGroupIamPolicyState

type EntryGroupIamPolicyState struct {
	// Used to find the parent resource to bind the IAM policy to
	EntryGroup pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag 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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
}

func (EntryGroupIamPolicyState) ElementType

func (EntryGroupIamPolicyState) ElementType() reflect.Type

type EntryGroupInput added in v4.4.0

type EntryGroupInput interface {
	pulumi.Input

	ToEntryGroupOutput() EntryGroupOutput
	ToEntryGroupOutputWithContext(ctx context.Context) EntryGroupOutput
}

type EntryGroupMap added in v4.11.1

type EntryGroupMap map[string]EntryGroupInput

func (EntryGroupMap) ElementType added in v4.11.1

func (EntryGroupMap) ElementType() reflect.Type

func (EntryGroupMap) ToEntryGroupMapOutput added in v4.11.1

func (i EntryGroupMap) ToEntryGroupMapOutput() EntryGroupMapOutput

func (EntryGroupMap) ToEntryGroupMapOutputWithContext added in v4.11.1

func (i EntryGroupMap) ToEntryGroupMapOutputWithContext(ctx context.Context) EntryGroupMapOutput

type EntryGroupMapInput added in v4.11.1

type EntryGroupMapInput interface {
	pulumi.Input

	ToEntryGroupMapOutput() EntryGroupMapOutput
	ToEntryGroupMapOutputWithContext(context.Context) EntryGroupMapOutput
}

EntryGroupMapInput is an input type that accepts EntryGroupMap and EntryGroupMapOutput values. You can construct a concrete instance of `EntryGroupMapInput` via:

EntryGroupMap{ "key": EntryGroupArgs{...} }

type EntryGroupMapOutput added in v4.11.1

type EntryGroupMapOutput struct{ *pulumi.OutputState }

func (EntryGroupMapOutput) ElementType added in v4.11.1

func (EntryGroupMapOutput) ElementType() reflect.Type

func (EntryGroupMapOutput) MapIndex added in v4.11.1

func (EntryGroupMapOutput) ToEntryGroupMapOutput added in v4.11.1

func (o EntryGroupMapOutput) ToEntryGroupMapOutput() EntryGroupMapOutput

func (EntryGroupMapOutput) ToEntryGroupMapOutputWithContext added in v4.11.1

func (o EntryGroupMapOutput) ToEntryGroupMapOutputWithContext(ctx context.Context) EntryGroupMapOutput

type EntryGroupOutput added in v4.4.0

type EntryGroupOutput struct {
	*pulumi.OutputState
}

func (EntryGroupOutput) ElementType added in v4.4.0

func (EntryGroupOutput) ElementType() reflect.Type

func (EntryGroupOutput) ToEntryGroupOutput added in v4.4.0

func (o EntryGroupOutput) ToEntryGroupOutput() EntryGroupOutput

func (EntryGroupOutput) ToEntryGroupOutputWithContext added in v4.4.0

func (o EntryGroupOutput) ToEntryGroupOutputWithContext(ctx context.Context) EntryGroupOutput

func (EntryGroupOutput) ToEntryGroupPtrOutput added in v4.11.1

func (o EntryGroupOutput) ToEntryGroupPtrOutput() EntryGroupPtrOutput

func (EntryGroupOutput) ToEntryGroupPtrOutputWithContext added in v4.11.1

func (o EntryGroupOutput) ToEntryGroupPtrOutputWithContext(ctx context.Context) EntryGroupPtrOutput

type EntryGroupPtrInput added in v4.11.1

type EntryGroupPtrInput interface {
	pulumi.Input

	ToEntryGroupPtrOutput() EntryGroupPtrOutput
	ToEntryGroupPtrOutputWithContext(ctx context.Context) EntryGroupPtrOutput
}

type EntryGroupPtrOutput added in v4.11.1

type EntryGroupPtrOutput struct {
	*pulumi.OutputState
}

func (EntryGroupPtrOutput) ElementType added in v4.11.1

func (EntryGroupPtrOutput) ElementType() reflect.Type

func (EntryGroupPtrOutput) ToEntryGroupPtrOutput added in v4.11.1

func (o EntryGroupPtrOutput) ToEntryGroupPtrOutput() EntryGroupPtrOutput

func (EntryGroupPtrOutput) ToEntryGroupPtrOutputWithContext added in v4.11.1

func (o EntryGroupPtrOutput) ToEntryGroupPtrOutputWithContext(ctx context.Context) EntryGroupPtrOutput

type EntryGroupState

type EntryGroupState struct {
	// Entry group description, which can consist of several sentences or paragraphs that describe entry group contents.
	Description pulumi.StringPtrInput
	// A short name to identify the entry group, for example, "analytics data - jan 2011".
	DisplayName pulumi.StringPtrInput
	// The id of the entry group to create. The id must begin with a letter or underscore,
	// contain only English letters, numbers and underscores, and be at most 64 characters.
	EntryGroupId pulumi.StringPtrInput
	// The resource name of the entry group in URL format. Example:
	// projects/{project}/locations/{location}/entryGroups/{entryGroupId}
	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
	// EntryGroup location region.
	Region pulumi.StringPtrInput
}

func (EntryGroupState) ElementType

func (EntryGroupState) ElementType() reflect.Type

type EntryInput added in v4.4.0

type EntryInput interface {
	pulumi.Input

	ToEntryOutput() EntryOutput
	ToEntryOutputWithContext(ctx context.Context) EntryOutput
}

type EntryMap added in v4.11.1

type EntryMap map[string]EntryInput

func (EntryMap) ElementType added in v4.11.1

func (EntryMap) ElementType() reflect.Type

func (EntryMap) ToEntryMapOutput added in v4.11.1

func (i EntryMap) ToEntryMapOutput() EntryMapOutput

func (EntryMap) ToEntryMapOutputWithContext added in v4.11.1

func (i EntryMap) ToEntryMapOutputWithContext(ctx context.Context) EntryMapOutput

type EntryMapInput added in v4.11.1

type EntryMapInput interface {
	pulumi.Input

	ToEntryMapOutput() EntryMapOutput
	ToEntryMapOutputWithContext(context.Context) EntryMapOutput
}

EntryMapInput is an input type that accepts EntryMap and EntryMapOutput values. You can construct a concrete instance of `EntryMapInput` via:

EntryMap{ "key": EntryArgs{...} }

type EntryMapOutput added in v4.11.1

type EntryMapOutput struct{ *pulumi.OutputState }

func (EntryMapOutput) ElementType added in v4.11.1

func (EntryMapOutput) ElementType() reflect.Type

func (EntryMapOutput) MapIndex added in v4.11.1

func (EntryMapOutput) ToEntryMapOutput added in v4.11.1

func (o EntryMapOutput) ToEntryMapOutput() EntryMapOutput

func (EntryMapOutput) ToEntryMapOutputWithContext added in v4.11.1

func (o EntryMapOutput) ToEntryMapOutputWithContext(ctx context.Context) EntryMapOutput

type EntryOutput added in v4.4.0

type EntryOutput struct {
	*pulumi.OutputState
}

func (EntryOutput) ElementType added in v4.4.0

func (EntryOutput) ElementType() reflect.Type

func (EntryOutput) ToEntryOutput added in v4.4.0

func (o EntryOutput) ToEntryOutput() EntryOutput

func (EntryOutput) ToEntryOutputWithContext added in v4.4.0

func (o EntryOutput) ToEntryOutputWithContext(ctx context.Context) EntryOutput

func (EntryOutput) ToEntryPtrOutput added in v4.11.1

func (o EntryOutput) ToEntryPtrOutput() EntryPtrOutput

func (EntryOutput) ToEntryPtrOutputWithContext added in v4.11.1

func (o EntryOutput) ToEntryPtrOutputWithContext(ctx context.Context) EntryPtrOutput

type EntryPtrInput added in v4.11.1

type EntryPtrInput interface {
	pulumi.Input

	ToEntryPtrOutput() EntryPtrOutput
	ToEntryPtrOutputWithContext(ctx context.Context) EntryPtrOutput
}

type EntryPtrOutput added in v4.11.1

type EntryPtrOutput struct {
	*pulumi.OutputState
}

func (EntryPtrOutput) ElementType added in v4.11.1

func (EntryPtrOutput) ElementType() reflect.Type

func (EntryPtrOutput) ToEntryPtrOutput added in v4.11.1

func (o EntryPtrOutput) ToEntryPtrOutput() EntryPtrOutput

func (EntryPtrOutput) ToEntryPtrOutputWithContext added in v4.11.1

func (o EntryPtrOutput) ToEntryPtrOutputWithContext(ctx context.Context) EntryPtrOutput

type EntryState

type EntryState struct {
	// Specification for a group of BigQuery tables with name pattern [prefix]YYYYMMDD. Context:
	// https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding.
	BigqueryDateShardedSpecs EntryBigqueryDateShardedSpecArrayInput
	// Specification that applies to a BigQuery table. This is only valid on entries of type TABLE.
	BigqueryTableSpecs EntryBigqueryTableSpecArrayInput
	// Entry description, which can consist of several sentences or paragraphs that describe entry contents.
	Description pulumi.StringPtrInput
	// Display information such as title and description. A short name to identify the entry,
	// for example, "Analytics Data - Jan 2011".
	DisplayName pulumi.StringPtrInput
	// The name of the entry group this entry is in.
	EntryGroup pulumi.StringPtrInput
	// The id of the entry to create.
	EntryId pulumi.StringPtrInput
	// Specification that applies to a Cloud Storage fileset. This is only valid on entries of type FILESET.
	// Structure is documented below.
	GcsFilesetSpec EntryGcsFilesetSpecPtrInput
	// This field indicates the entry's source system that Data Catalog integrates with, such as BigQuery or Pub/Sub.
	IntegratedSystem pulumi.StringPtrInput
	// The resource this metadata entry refers to.
	// For Google Cloud Platform resources, linkedResource is the full name of the resource.
	// For example, the linkedResource for a table resource from BigQuery is:
	// //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId
	// Output only when Entry is of type in the EntryType enum. For entries with userSpecifiedType,
	// this field is optional and defaults to an empty string.
	LinkedResource pulumi.StringPtrInput
	// The Data Catalog resource name of the entry in URL format. Example:
	// projects/{project_id}/locations/{location}/entryGroups/{entryGroupId}/entries/{entryId}. Note that this Entry and its
	// child resources may not actually be stored in the location in this name.
	Name pulumi.StringPtrInput
	// Schema of the entry (e.g. BigQuery, GoogleSQL, Avro schema), as a json string. An entry might not have any schema
	// attached to it. See
	// https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries#schema
	// for what fields this schema can contain.
	Schema pulumi.StringPtrInput
	// The type of the entry. Only used for Entries with types in the EntryType enum.
	// Currently, only FILESET enum value is allowed. All other entries created through Data Catalog must use userSpecifiedType.
	// Possible values are `FILESET`.
	Type pulumi.StringPtrInput
	// This field indicates the entry's source system that Data Catalog does not integrate with.
	// userSpecifiedSystem strings must begin with a letter or underscore and can only contain letters, numbers,
	// and underscores; are case insensitive; must be at least 1 character and at most 64 characters long.
	UserSpecifiedSystem pulumi.StringPtrInput
	// Entry type if it does not fit any of the input-allowed values listed in EntryType enum above.
	// When creating an entry, users should check the enum values first, if nothing matches the entry
	// to be created, then provide a custom value, for example "mySpecialType".
	// userSpecifiedType strings must begin with a letter or underscore and can only contain letters,
	// numbers, and underscores; are case insensitive; must be at least 1 character and at most 64 characters long.
	UserSpecifiedType pulumi.StringPtrInput
}

func (EntryState) ElementType

func (EntryState) ElementType() reflect.Type

type PolicyTag added in v4.1.0

type PolicyTag struct {
	pulumi.CustomResourceState

	// Resource names of child policy tags of this policy tag.
	ChildPolicyTags pulumi.StringArrayOutput `pulumi:"childPolicyTags"`
	// Description of this policy tag. It must: contain only unicode characters, tabs,
	// newlines, carriage returns and page breaks; and be at most 2000 bytes long when
	// encoded in UTF-8. If not set, defaults to an empty description.
	// If not set, defaults to an empty description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// User defined name of this policy tag. It must: be unique within the parent
	// taxonomy; contain only unicode letters, numbers, underscores, dashes and spaces;
	// not start or end with spaces; and be at most 200 bytes long when encoded in UTF-8.
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// Resource name of this policy tag, whose format is:
	// "projects/{project}/locations/{region}/taxonomies/{taxonomy}/policyTags/{policytag}"
	Name pulumi.StringOutput `pulumi:"name"`
	// Resource name of this policy tag's parent policy tag.
	// If empty, it means this policy tag is a top level policy tag.
	// If not set, defaults to an empty string.
	ParentPolicyTag pulumi.StringPtrOutput `pulumi:"parentPolicyTag"`
	// Taxonomy the policy tag is associated with
	Taxonomy pulumi.StringOutput `pulumi:"taxonomy"`
}

Denotes one policy tag in a taxonomy.

To get more information about PolicyTag, see:

* [API documentation](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.taxonomies.policyTags) * How-to Guides

## Example Usage ### Data Catalog Taxonomies Policy Tag Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myTaxonomy, err := datacatalog.NewTaxonomy(ctx, "myTaxonomy", &datacatalog.TaxonomyArgs{
			Region:      pulumi.String("us"),
			DisplayName: pulumi.String("taxonomy_display_name"),
			Description: pulumi.String("A collection of policy tags"),
			ActivatedPolicyTypes: pulumi.StringArray{
				pulumi.String("FINE_GRAINED_ACCESS_CONTROL"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = datacatalog.NewPolicyTag(ctx, "basicPolicyTag", &datacatalog.PolicyTagArgs{
			Taxonomy:    myTaxonomy.ID(),
			DisplayName: pulumi.String("Low security"),
			Description: pulumi.String("A policy tag normally associated with low security items"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Data Catalog Taxonomies Policy Tag Child Policies

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myTaxonomy, err := datacatalog.NewTaxonomy(ctx, "myTaxonomy", &datacatalog.TaxonomyArgs{
			Region:      pulumi.String("us"),
			DisplayName: pulumi.String("taxonomy_display_name"),
			Description: pulumi.String("A collection of policy tags"),
			ActivatedPolicyTypes: pulumi.StringArray{
				pulumi.String("FINE_GRAINED_ACCESS_CONTROL"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		parentPolicy, err := datacatalog.NewPolicyTag(ctx, "parentPolicy", &datacatalog.PolicyTagArgs{
			Taxonomy:    myTaxonomy.ID(),
			DisplayName: pulumi.String("High"),
			Description: pulumi.String("A policy tag category used for high security access"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		childPolicy, err := datacatalog.NewPolicyTag(ctx, "childPolicy", &datacatalog.PolicyTagArgs{
			Taxonomy:        myTaxonomy.ID(),
			DisplayName:     pulumi.String("ssn"),
			Description:     pulumi.String("A hash of the users ssn"),
			ParentPolicyTag: parentPolicy.ID(),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = datacatalog.NewPolicyTag(ctx, "childPolicy2", &datacatalog.PolicyTagArgs{
			Taxonomy:        myTaxonomy.ID(),
			DisplayName:     pulumi.String("dob"),
			Description:     pulumi.String("The users date of birth"),
			ParentPolicyTag: parentPolicy.ID(),
		}, pulumi.Provider(google_beta), pulumi.DependsOn([]pulumi.Resource{
			childPolicy,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

PolicyTag can be imported using any of these accepted formats

```sh

$ pulumi import gcp:datacatalog/policyTag:PolicyTag default {{name}}

```

func GetPolicyTag added in v4.1.0

func GetPolicyTag(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyTagState, opts ...pulumi.ResourceOption) (*PolicyTag, error)

GetPolicyTag gets an existing PolicyTag 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 NewPolicyTag added in v4.1.0

func NewPolicyTag(ctx *pulumi.Context,
	name string, args *PolicyTagArgs, opts ...pulumi.ResourceOption) (*PolicyTag, error)

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

func (*PolicyTag) ElementType added in v4.4.0

func (*PolicyTag) ElementType() reflect.Type

func (*PolicyTag) ToPolicyTagOutput added in v4.4.0

func (i *PolicyTag) ToPolicyTagOutput() PolicyTagOutput

func (*PolicyTag) ToPolicyTagOutputWithContext added in v4.4.0

func (i *PolicyTag) ToPolicyTagOutputWithContext(ctx context.Context) PolicyTagOutput

func (*PolicyTag) ToPolicyTagPtrOutput added in v4.11.1

func (i *PolicyTag) ToPolicyTagPtrOutput() PolicyTagPtrOutput

func (*PolicyTag) ToPolicyTagPtrOutputWithContext added in v4.11.1

func (i *PolicyTag) ToPolicyTagPtrOutputWithContext(ctx context.Context) PolicyTagPtrOutput

type PolicyTagArgs added in v4.1.0

type PolicyTagArgs struct {
	// Description of this policy tag. It must: contain only unicode characters, tabs,
	// newlines, carriage returns and page breaks; and be at most 2000 bytes long when
	// encoded in UTF-8. If not set, defaults to an empty description.
	// If not set, defaults to an empty description.
	Description pulumi.StringPtrInput
	// User defined name of this policy tag. It must: be unique within the parent
	// taxonomy; contain only unicode letters, numbers, underscores, dashes and spaces;
	// not start or end with spaces; and be at most 200 bytes long when encoded in UTF-8.
	DisplayName pulumi.StringInput
	// Resource name of this policy tag's parent policy tag.
	// If empty, it means this policy tag is a top level policy tag.
	// If not set, defaults to an empty string.
	ParentPolicyTag pulumi.StringPtrInput
	// Taxonomy the policy tag is associated with
	Taxonomy pulumi.StringInput
}

The set of arguments for constructing a PolicyTag resource.

func (PolicyTagArgs) ElementType added in v4.1.0

func (PolicyTagArgs) ElementType() reflect.Type

type PolicyTagArray added in v4.11.1

type PolicyTagArray []PolicyTagInput

func (PolicyTagArray) ElementType added in v4.11.1

func (PolicyTagArray) ElementType() reflect.Type

func (PolicyTagArray) ToPolicyTagArrayOutput added in v4.11.1

func (i PolicyTagArray) ToPolicyTagArrayOutput() PolicyTagArrayOutput

func (PolicyTagArray) ToPolicyTagArrayOutputWithContext added in v4.11.1

func (i PolicyTagArray) ToPolicyTagArrayOutputWithContext(ctx context.Context) PolicyTagArrayOutput

type PolicyTagArrayInput added in v4.11.1

type PolicyTagArrayInput interface {
	pulumi.Input

	ToPolicyTagArrayOutput() PolicyTagArrayOutput
	ToPolicyTagArrayOutputWithContext(context.Context) PolicyTagArrayOutput
}

PolicyTagArrayInput is an input type that accepts PolicyTagArray and PolicyTagArrayOutput values. You can construct a concrete instance of `PolicyTagArrayInput` via:

PolicyTagArray{ PolicyTagArgs{...} }

type PolicyTagArrayOutput added in v4.11.1

type PolicyTagArrayOutput struct{ *pulumi.OutputState }

func (PolicyTagArrayOutput) ElementType added in v4.11.1

func (PolicyTagArrayOutput) ElementType() reflect.Type

func (PolicyTagArrayOutput) Index added in v4.11.1

func (PolicyTagArrayOutput) ToPolicyTagArrayOutput added in v4.11.1

func (o PolicyTagArrayOutput) ToPolicyTagArrayOutput() PolicyTagArrayOutput

func (PolicyTagArrayOutput) ToPolicyTagArrayOutputWithContext added in v4.11.1

func (o PolicyTagArrayOutput) ToPolicyTagArrayOutputWithContext(ctx context.Context) PolicyTagArrayOutput

type PolicyTagIamBinding added in v4.1.0

type PolicyTagIamBinding struct {
	pulumi.CustomResourceState

	Condition PolicyTagIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringOutput `pulumi:"policyTag"`
	// The role that should be applied. Only one
	// `datacatalog.PolicyTagIamBinding` 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 Data catalog PolicyTag. Each of these resources serves a different use case:

* `datacatalog.PolicyTagIamPolicy`: Authoritative. Sets the IAM policy for the policytag and replaces any existing policy already attached. * `datacatalog.PolicyTagIamBinding`: 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 policytag are preserved. * `datacatalog.PolicyTagIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the policytag are preserved.

> **Note:** `datacatalog.PolicyTagIamPolicy` **cannot** be used in conjunction with `datacatalog.PolicyTagIamBinding` and `datacatalog.PolicyTagIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_policy\_tag\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewPolicyTagIamPolicy(ctx, "policy", &datacatalog.PolicyTagIamPolicyArgs{
			PolicyTag:  pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_policy\_tag\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewPolicyTagIamBinding(ctx, "binding", &datacatalog.PolicyTagIamBindingArgs{
			PolicyTag: pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.Name),
			Role:      pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_policy\_tag\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewPolicyTagIamMember(ctx, "member", &datacatalog.PolicyTagIamMemberArgs{
			PolicyTag: pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.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* {{policy_tag}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog policytag 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:datacatalog/policyTagIamBinding:PolicyTagIamBinding editor "{{policy_tag}} 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:datacatalog/policyTagIamBinding:PolicyTagIamBinding editor "{{policy_tag}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/policyTagIamBinding:PolicyTagIamBinding editor {{policy_tag}}

```

-> **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 GetPolicyTagIamBinding added in v4.1.0

func GetPolicyTagIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyTagIamBindingState, opts ...pulumi.ResourceOption) (*PolicyTagIamBinding, error)

GetPolicyTagIamBinding gets an existing PolicyTagIamBinding 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 NewPolicyTagIamBinding added in v4.1.0

func NewPolicyTagIamBinding(ctx *pulumi.Context,
	name string, args *PolicyTagIamBindingArgs, opts ...pulumi.ResourceOption) (*PolicyTagIamBinding, error)

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

func (*PolicyTagIamBinding) ElementType added in v4.4.0

func (*PolicyTagIamBinding) ElementType() reflect.Type

func (*PolicyTagIamBinding) ToPolicyTagIamBindingOutput added in v4.4.0

func (i *PolicyTagIamBinding) ToPolicyTagIamBindingOutput() PolicyTagIamBindingOutput

func (*PolicyTagIamBinding) ToPolicyTagIamBindingOutputWithContext added in v4.4.0

func (i *PolicyTagIamBinding) ToPolicyTagIamBindingOutputWithContext(ctx context.Context) PolicyTagIamBindingOutput

func (*PolicyTagIamBinding) ToPolicyTagIamBindingPtrOutput added in v4.11.1

func (i *PolicyTagIamBinding) ToPolicyTagIamBindingPtrOutput() PolicyTagIamBindingPtrOutput

func (*PolicyTagIamBinding) ToPolicyTagIamBindingPtrOutputWithContext added in v4.11.1

func (i *PolicyTagIamBinding) ToPolicyTagIamBindingPtrOutputWithContext(ctx context.Context) PolicyTagIamBindingPtrOutput

type PolicyTagIamBindingArgs added in v4.1.0

type PolicyTagIamBindingArgs struct {
	Condition PolicyTagIamBindingConditionPtrInput
	Members   pulumi.StringArrayInput
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringInput
	// The role that should be applied. Only one
	// `datacatalog.PolicyTagIamBinding` 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 PolicyTagIamBinding resource.

func (PolicyTagIamBindingArgs) ElementType added in v4.1.0

func (PolicyTagIamBindingArgs) ElementType() reflect.Type

type PolicyTagIamBindingArray added in v4.11.1

type PolicyTagIamBindingArray []PolicyTagIamBindingInput

func (PolicyTagIamBindingArray) ElementType added in v4.11.1

func (PolicyTagIamBindingArray) ElementType() reflect.Type

func (PolicyTagIamBindingArray) ToPolicyTagIamBindingArrayOutput added in v4.11.1

func (i PolicyTagIamBindingArray) ToPolicyTagIamBindingArrayOutput() PolicyTagIamBindingArrayOutput

func (PolicyTagIamBindingArray) ToPolicyTagIamBindingArrayOutputWithContext added in v4.11.1

func (i PolicyTagIamBindingArray) ToPolicyTagIamBindingArrayOutputWithContext(ctx context.Context) PolicyTagIamBindingArrayOutput

type PolicyTagIamBindingArrayInput added in v4.11.1

type PolicyTagIamBindingArrayInput interface {
	pulumi.Input

	ToPolicyTagIamBindingArrayOutput() PolicyTagIamBindingArrayOutput
	ToPolicyTagIamBindingArrayOutputWithContext(context.Context) PolicyTagIamBindingArrayOutput
}

PolicyTagIamBindingArrayInput is an input type that accepts PolicyTagIamBindingArray and PolicyTagIamBindingArrayOutput values. You can construct a concrete instance of `PolicyTagIamBindingArrayInput` via:

PolicyTagIamBindingArray{ PolicyTagIamBindingArgs{...} }

type PolicyTagIamBindingArrayOutput added in v4.11.1

type PolicyTagIamBindingArrayOutput struct{ *pulumi.OutputState }

func (PolicyTagIamBindingArrayOutput) ElementType added in v4.11.1

func (PolicyTagIamBindingArrayOutput) Index added in v4.11.1

func (PolicyTagIamBindingArrayOutput) ToPolicyTagIamBindingArrayOutput added in v4.11.1

func (o PolicyTagIamBindingArrayOutput) ToPolicyTagIamBindingArrayOutput() PolicyTagIamBindingArrayOutput

func (PolicyTagIamBindingArrayOutput) ToPolicyTagIamBindingArrayOutputWithContext added in v4.11.1

func (o PolicyTagIamBindingArrayOutput) ToPolicyTagIamBindingArrayOutputWithContext(ctx context.Context) PolicyTagIamBindingArrayOutput

type PolicyTagIamBindingCondition added in v4.1.0

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

type PolicyTagIamBindingConditionArgs added in v4.1.0

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

func (PolicyTagIamBindingConditionArgs) ElementType added in v4.1.0

func (PolicyTagIamBindingConditionArgs) ToPolicyTagIamBindingConditionOutput added in v4.1.0

func (i PolicyTagIamBindingConditionArgs) ToPolicyTagIamBindingConditionOutput() PolicyTagIamBindingConditionOutput

func (PolicyTagIamBindingConditionArgs) ToPolicyTagIamBindingConditionOutputWithContext added in v4.1.0

func (i PolicyTagIamBindingConditionArgs) ToPolicyTagIamBindingConditionOutputWithContext(ctx context.Context) PolicyTagIamBindingConditionOutput

func (PolicyTagIamBindingConditionArgs) ToPolicyTagIamBindingConditionPtrOutput added in v4.1.0

func (i PolicyTagIamBindingConditionArgs) ToPolicyTagIamBindingConditionPtrOutput() PolicyTagIamBindingConditionPtrOutput

func (PolicyTagIamBindingConditionArgs) ToPolicyTagIamBindingConditionPtrOutputWithContext added in v4.1.0

func (i PolicyTagIamBindingConditionArgs) ToPolicyTagIamBindingConditionPtrOutputWithContext(ctx context.Context) PolicyTagIamBindingConditionPtrOutput

type PolicyTagIamBindingConditionInput added in v4.1.0

type PolicyTagIamBindingConditionInput interface {
	pulumi.Input

	ToPolicyTagIamBindingConditionOutput() PolicyTagIamBindingConditionOutput
	ToPolicyTagIamBindingConditionOutputWithContext(context.Context) PolicyTagIamBindingConditionOutput
}

PolicyTagIamBindingConditionInput is an input type that accepts PolicyTagIamBindingConditionArgs and PolicyTagIamBindingConditionOutput values. You can construct a concrete instance of `PolicyTagIamBindingConditionInput` via:

PolicyTagIamBindingConditionArgs{...}

type PolicyTagIamBindingConditionOutput added in v4.1.0

type PolicyTagIamBindingConditionOutput struct{ *pulumi.OutputState }

func (PolicyTagIamBindingConditionOutput) Description added in v4.1.0

func (PolicyTagIamBindingConditionOutput) ElementType added in v4.1.0

func (PolicyTagIamBindingConditionOutput) Expression added in v4.1.0

func (PolicyTagIamBindingConditionOutput) Title added in v4.1.0

func (PolicyTagIamBindingConditionOutput) ToPolicyTagIamBindingConditionOutput added in v4.1.0

func (o PolicyTagIamBindingConditionOutput) ToPolicyTagIamBindingConditionOutput() PolicyTagIamBindingConditionOutput

func (PolicyTagIamBindingConditionOutput) ToPolicyTagIamBindingConditionOutputWithContext added in v4.1.0

func (o PolicyTagIamBindingConditionOutput) ToPolicyTagIamBindingConditionOutputWithContext(ctx context.Context) PolicyTagIamBindingConditionOutput

func (PolicyTagIamBindingConditionOutput) ToPolicyTagIamBindingConditionPtrOutput added in v4.1.0

func (o PolicyTagIamBindingConditionOutput) ToPolicyTagIamBindingConditionPtrOutput() PolicyTagIamBindingConditionPtrOutput

func (PolicyTagIamBindingConditionOutput) ToPolicyTagIamBindingConditionPtrOutputWithContext added in v4.1.0

func (o PolicyTagIamBindingConditionOutput) ToPolicyTagIamBindingConditionPtrOutputWithContext(ctx context.Context) PolicyTagIamBindingConditionPtrOutput

type PolicyTagIamBindingConditionPtrInput added in v4.1.0

type PolicyTagIamBindingConditionPtrInput interface {
	pulumi.Input

	ToPolicyTagIamBindingConditionPtrOutput() PolicyTagIamBindingConditionPtrOutput
	ToPolicyTagIamBindingConditionPtrOutputWithContext(context.Context) PolicyTagIamBindingConditionPtrOutput
}

PolicyTagIamBindingConditionPtrInput is an input type that accepts PolicyTagIamBindingConditionArgs, PolicyTagIamBindingConditionPtr and PolicyTagIamBindingConditionPtrOutput values. You can construct a concrete instance of `PolicyTagIamBindingConditionPtrInput` via:

        PolicyTagIamBindingConditionArgs{...}

or:

        nil

type PolicyTagIamBindingConditionPtrOutput added in v4.1.0

type PolicyTagIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (PolicyTagIamBindingConditionPtrOutput) Description added in v4.1.0

func (PolicyTagIamBindingConditionPtrOutput) Elem added in v4.1.0

func (PolicyTagIamBindingConditionPtrOutput) ElementType added in v4.1.0

func (PolicyTagIamBindingConditionPtrOutput) Expression added in v4.1.0

func (PolicyTagIamBindingConditionPtrOutput) Title added in v4.1.0

func (PolicyTagIamBindingConditionPtrOutput) ToPolicyTagIamBindingConditionPtrOutput added in v4.1.0

func (o PolicyTagIamBindingConditionPtrOutput) ToPolicyTagIamBindingConditionPtrOutput() PolicyTagIamBindingConditionPtrOutput

func (PolicyTagIamBindingConditionPtrOutput) ToPolicyTagIamBindingConditionPtrOutputWithContext added in v4.1.0

func (o PolicyTagIamBindingConditionPtrOutput) ToPolicyTagIamBindingConditionPtrOutputWithContext(ctx context.Context) PolicyTagIamBindingConditionPtrOutput

type PolicyTagIamBindingInput added in v4.4.0

type PolicyTagIamBindingInput interface {
	pulumi.Input

	ToPolicyTagIamBindingOutput() PolicyTagIamBindingOutput
	ToPolicyTagIamBindingOutputWithContext(ctx context.Context) PolicyTagIamBindingOutput
}

type PolicyTagIamBindingMap added in v4.11.1

type PolicyTagIamBindingMap map[string]PolicyTagIamBindingInput

func (PolicyTagIamBindingMap) ElementType added in v4.11.1

func (PolicyTagIamBindingMap) ElementType() reflect.Type

func (PolicyTagIamBindingMap) ToPolicyTagIamBindingMapOutput added in v4.11.1

func (i PolicyTagIamBindingMap) ToPolicyTagIamBindingMapOutput() PolicyTagIamBindingMapOutput

func (PolicyTagIamBindingMap) ToPolicyTagIamBindingMapOutputWithContext added in v4.11.1

func (i PolicyTagIamBindingMap) ToPolicyTagIamBindingMapOutputWithContext(ctx context.Context) PolicyTagIamBindingMapOutput

type PolicyTagIamBindingMapInput added in v4.11.1

type PolicyTagIamBindingMapInput interface {
	pulumi.Input

	ToPolicyTagIamBindingMapOutput() PolicyTagIamBindingMapOutput
	ToPolicyTagIamBindingMapOutputWithContext(context.Context) PolicyTagIamBindingMapOutput
}

PolicyTagIamBindingMapInput is an input type that accepts PolicyTagIamBindingMap and PolicyTagIamBindingMapOutput values. You can construct a concrete instance of `PolicyTagIamBindingMapInput` via:

PolicyTagIamBindingMap{ "key": PolicyTagIamBindingArgs{...} }

type PolicyTagIamBindingMapOutput added in v4.11.1

type PolicyTagIamBindingMapOutput struct{ *pulumi.OutputState }

func (PolicyTagIamBindingMapOutput) ElementType added in v4.11.1

func (PolicyTagIamBindingMapOutput) MapIndex added in v4.11.1

func (PolicyTagIamBindingMapOutput) ToPolicyTagIamBindingMapOutput added in v4.11.1

func (o PolicyTagIamBindingMapOutput) ToPolicyTagIamBindingMapOutput() PolicyTagIamBindingMapOutput

func (PolicyTagIamBindingMapOutput) ToPolicyTagIamBindingMapOutputWithContext added in v4.11.1

func (o PolicyTagIamBindingMapOutput) ToPolicyTagIamBindingMapOutputWithContext(ctx context.Context) PolicyTagIamBindingMapOutput

type PolicyTagIamBindingOutput added in v4.4.0

type PolicyTagIamBindingOutput struct {
	*pulumi.OutputState
}

func (PolicyTagIamBindingOutput) ElementType added in v4.4.0

func (PolicyTagIamBindingOutput) ElementType() reflect.Type

func (PolicyTagIamBindingOutput) ToPolicyTagIamBindingOutput added in v4.4.0

func (o PolicyTagIamBindingOutput) ToPolicyTagIamBindingOutput() PolicyTagIamBindingOutput

func (PolicyTagIamBindingOutput) ToPolicyTagIamBindingOutputWithContext added in v4.4.0

func (o PolicyTagIamBindingOutput) ToPolicyTagIamBindingOutputWithContext(ctx context.Context) PolicyTagIamBindingOutput

func (PolicyTagIamBindingOutput) ToPolicyTagIamBindingPtrOutput added in v4.11.1

func (o PolicyTagIamBindingOutput) ToPolicyTagIamBindingPtrOutput() PolicyTagIamBindingPtrOutput

func (PolicyTagIamBindingOutput) ToPolicyTagIamBindingPtrOutputWithContext added in v4.11.1

func (o PolicyTagIamBindingOutput) ToPolicyTagIamBindingPtrOutputWithContext(ctx context.Context) PolicyTagIamBindingPtrOutput

type PolicyTagIamBindingPtrInput added in v4.11.1

type PolicyTagIamBindingPtrInput interface {
	pulumi.Input

	ToPolicyTagIamBindingPtrOutput() PolicyTagIamBindingPtrOutput
	ToPolicyTagIamBindingPtrOutputWithContext(ctx context.Context) PolicyTagIamBindingPtrOutput
}

type PolicyTagIamBindingPtrOutput added in v4.11.1

type PolicyTagIamBindingPtrOutput struct {
	*pulumi.OutputState
}

func (PolicyTagIamBindingPtrOutput) ElementType added in v4.11.1

func (PolicyTagIamBindingPtrOutput) ToPolicyTagIamBindingPtrOutput added in v4.11.1

func (o PolicyTagIamBindingPtrOutput) ToPolicyTagIamBindingPtrOutput() PolicyTagIamBindingPtrOutput

func (PolicyTagIamBindingPtrOutput) ToPolicyTagIamBindingPtrOutputWithContext added in v4.11.1

func (o PolicyTagIamBindingPtrOutput) ToPolicyTagIamBindingPtrOutputWithContext(ctx context.Context) PolicyTagIamBindingPtrOutput

type PolicyTagIamBindingState added in v4.1.0

type PolicyTagIamBindingState struct {
	Condition PolicyTagIamBindingConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringPtrInput
	Members pulumi.StringArrayInput
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.PolicyTagIamBinding` 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 (PolicyTagIamBindingState) ElementType added in v4.1.0

func (PolicyTagIamBindingState) ElementType() reflect.Type

type PolicyTagIamMember added in v4.1.0

type PolicyTagIamMember struct {
	pulumi.CustomResourceState

	Condition PolicyTagIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	Member pulumi.StringOutput `pulumi:"member"`
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringOutput `pulumi:"policyTag"`
	// The role that should be applied. Only one
	// `datacatalog.PolicyTagIamBinding` 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 Data catalog PolicyTag. Each of these resources serves a different use case:

* `datacatalog.PolicyTagIamPolicy`: Authoritative. Sets the IAM policy for the policytag and replaces any existing policy already attached. * `datacatalog.PolicyTagIamBinding`: 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 policytag are preserved. * `datacatalog.PolicyTagIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the policytag are preserved.

> **Note:** `datacatalog.PolicyTagIamPolicy` **cannot** be used in conjunction with `datacatalog.PolicyTagIamBinding` and `datacatalog.PolicyTagIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_policy\_tag\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewPolicyTagIamPolicy(ctx, "policy", &datacatalog.PolicyTagIamPolicyArgs{
			PolicyTag:  pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_policy\_tag\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewPolicyTagIamBinding(ctx, "binding", &datacatalog.PolicyTagIamBindingArgs{
			PolicyTag: pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.Name),
			Role:      pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_policy\_tag\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewPolicyTagIamMember(ctx, "member", &datacatalog.PolicyTagIamMemberArgs{
			PolicyTag: pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.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* {{policy_tag}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog policytag 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:datacatalog/policyTagIamMember:PolicyTagIamMember editor "{{policy_tag}} 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:datacatalog/policyTagIamMember:PolicyTagIamMember editor "{{policy_tag}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/policyTagIamMember:PolicyTagIamMember editor {{policy_tag}}

```

-> **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 GetPolicyTagIamMember added in v4.1.0

func GetPolicyTagIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyTagIamMemberState, opts ...pulumi.ResourceOption) (*PolicyTagIamMember, error)

GetPolicyTagIamMember gets an existing PolicyTagIamMember 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 NewPolicyTagIamMember added in v4.1.0

func NewPolicyTagIamMember(ctx *pulumi.Context,
	name string, args *PolicyTagIamMemberArgs, opts ...pulumi.ResourceOption) (*PolicyTagIamMember, error)

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

func (*PolicyTagIamMember) ElementType added in v4.4.0

func (*PolicyTagIamMember) ElementType() reflect.Type

func (*PolicyTagIamMember) ToPolicyTagIamMemberOutput added in v4.4.0

func (i *PolicyTagIamMember) ToPolicyTagIamMemberOutput() PolicyTagIamMemberOutput

func (*PolicyTagIamMember) ToPolicyTagIamMemberOutputWithContext added in v4.4.0

func (i *PolicyTagIamMember) ToPolicyTagIamMemberOutputWithContext(ctx context.Context) PolicyTagIamMemberOutput

func (*PolicyTagIamMember) ToPolicyTagIamMemberPtrOutput added in v4.11.1

func (i *PolicyTagIamMember) ToPolicyTagIamMemberPtrOutput() PolicyTagIamMemberPtrOutput

func (*PolicyTagIamMember) ToPolicyTagIamMemberPtrOutputWithContext added in v4.11.1

func (i *PolicyTagIamMember) ToPolicyTagIamMemberPtrOutputWithContext(ctx context.Context) PolicyTagIamMemberPtrOutput

type PolicyTagIamMemberArgs added in v4.1.0

type PolicyTagIamMemberArgs struct {
	Condition PolicyTagIamMemberConditionPtrInput
	Member    pulumi.StringInput
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringInput
	// The role that should be applied. Only one
	// `datacatalog.PolicyTagIamBinding` 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 PolicyTagIamMember resource.

func (PolicyTagIamMemberArgs) ElementType added in v4.1.0

func (PolicyTagIamMemberArgs) ElementType() reflect.Type

type PolicyTagIamMemberArray added in v4.11.1

type PolicyTagIamMemberArray []PolicyTagIamMemberInput

func (PolicyTagIamMemberArray) ElementType added in v4.11.1

func (PolicyTagIamMemberArray) ElementType() reflect.Type

func (PolicyTagIamMemberArray) ToPolicyTagIamMemberArrayOutput added in v4.11.1

func (i PolicyTagIamMemberArray) ToPolicyTagIamMemberArrayOutput() PolicyTagIamMemberArrayOutput

func (PolicyTagIamMemberArray) ToPolicyTagIamMemberArrayOutputWithContext added in v4.11.1

func (i PolicyTagIamMemberArray) ToPolicyTagIamMemberArrayOutputWithContext(ctx context.Context) PolicyTagIamMemberArrayOutput

type PolicyTagIamMemberArrayInput added in v4.11.1

type PolicyTagIamMemberArrayInput interface {
	pulumi.Input

	ToPolicyTagIamMemberArrayOutput() PolicyTagIamMemberArrayOutput
	ToPolicyTagIamMemberArrayOutputWithContext(context.Context) PolicyTagIamMemberArrayOutput
}

PolicyTagIamMemberArrayInput is an input type that accepts PolicyTagIamMemberArray and PolicyTagIamMemberArrayOutput values. You can construct a concrete instance of `PolicyTagIamMemberArrayInput` via:

PolicyTagIamMemberArray{ PolicyTagIamMemberArgs{...} }

type PolicyTagIamMemberArrayOutput added in v4.11.1

type PolicyTagIamMemberArrayOutput struct{ *pulumi.OutputState }

func (PolicyTagIamMemberArrayOutput) ElementType added in v4.11.1

func (PolicyTagIamMemberArrayOutput) Index added in v4.11.1

func (PolicyTagIamMemberArrayOutput) ToPolicyTagIamMemberArrayOutput added in v4.11.1

func (o PolicyTagIamMemberArrayOutput) ToPolicyTagIamMemberArrayOutput() PolicyTagIamMemberArrayOutput

func (PolicyTagIamMemberArrayOutput) ToPolicyTagIamMemberArrayOutputWithContext added in v4.11.1

func (o PolicyTagIamMemberArrayOutput) ToPolicyTagIamMemberArrayOutputWithContext(ctx context.Context) PolicyTagIamMemberArrayOutput

type PolicyTagIamMemberCondition added in v4.1.0

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

type PolicyTagIamMemberConditionArgs added in v4.1.0

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

func (PolicyTagIamMemberConditionArgs) ElementType added in v4.1.0

func (PolicyTagIamMemberConditionArgs) ToPolicyTagIamMemberConditionOutput added in v4.1.0

func (i PolicyTagIamMemberConditionArgs) ToPolicyTagIamMemberConditionOutput() PolicyTagIamMemberConditionOutput

func (PolicyTagIamMemberConditionArgs) ToPolicyTagIamMemberConditionOutputWithContext added in v4.1.0

func (i PolicyTagIamMemberConditionArgs) ToPolicyTagIamMemberConditionOutputWithContext(ctx context.Context) PolicyTagIamMemberConditionOutput

func (PolicyTagIamMemberConditionArgs) ToPolicyTagIamMemberConditionPtrOutput added in v4.1.0

func (i PolicyTagIamMemberConditionArgs) ToPolicyTagIamMemberConditionPtrOutput() PolicyTagIamMemberConditionPtrOutput

func (PolicyTagIamMemberConditionArgs) ToPolicyTagIamMemberConditionPtrOutputWithContext added in v4.1.0

func (i PolicyTagIamMemberConditionArgs) ToPolicyTagIamMemberConditionPtrOutputWithContext(ctx context.Context) PolicyTagIamMemberConditionPtrOutput

type PolicyTagIamMemberConditionInput added in v4.1.0

type PolicyTagIamMemberConditionInput interface {
	pulumi.Input

	ToPolicyTagIamMemberConditionOutput() PolicyTagIamMemberConditionOutput
	ToPolicyTagIamMemberConditionOutputWithContext(context.Context) PolicyTagIamMemberConditionOutput
}

PolicyTagIamMemberConditionInput is an input type that accepts PolicyTagIamMemberConditionArgs and PolicyTagIamMemberConditionOutput values. You can construct a concrete instance of `PolicyTagIamMemberConditionInput` via:

PolicyTagIamMemberConditionArgs{...}

type PolicyTagIamMemberConditionOutput added in v4.1.0

type PolicyTagIamMemberConditionOutput struct{ *pulumi.OutputState }

func (PolicyTagIamMemberConditionOutput) Description added in v4.1.0

func (PolicyTagIamMemberConditionOutput) ElementType added in v4.1.0

func (PolicyTagIamMemberConditionOutput) Expression added in v4.1.0

func (PolicyTagIamMemberConditionOutput) Title added in v4.1.0

func (PolicyTagIamMemberConditionOutput) ToPolicyTagIamMemberConditionOutput added in v4.1.0

func (o PolicyTagIamMemberConditionOutput) ToPolicyTagIamMemberConditionOutput() PolicyTagIamMemberConditionOutput

func (PolicyTagIamMemberConditionOutput) ToPolicyTagIamMemberConditionOutputWithContext added in v4.1.0

func (o PolicyTagIamMemberConditionOutput) ToPolicyTagIamMemberConditionOutputWithContext(ctx context.Context) PolicyTagIamMemberConditionOutput

func (PolicyTagIamMemberConditionOutput) ToPolicyTagIamMemberConditionPtrOutput added in v4.1.0

func (o PolicyTagIamMemberConditionOutput) ToPolicyTagIamMemberConditionPtrOutput() PolicyTagIamMemberConditionPtrOutput

func (PolicyTagIamMemberConditionOutput) ToPolicyTagIamMemberConditionPtrOutputWithContext added in v4.1.0

func (o PolicyTagIamMemberConditionOutput) ToPolicyTagIamMemberConditionPtrOutputWithContext(ctx context.Context) PolicyTagIamMemberConditionPtrOutput

type PolicyTagIamMemberConditionPtrInput added in v4.1.0

type PolicyTagIamMemberConditionPtrInput interface {
	pulumi.Input

	ToPolicyTagIamMemberConditionPtrOutput() PolicyTagIamMemberConditionPtrOutput
	ToPolicyTagIamMemberConditionPtrOutputWithContext(context.Context) PolicyTagIamMemberConditionPtrOutput
}

PolicyTagIamMemberConditionPtrInput is an input type that accepts PolicyTagIamMemberConditionArgs, PolicyTagIamMemberConditionPtr and PolicyTagIamMemberConditionPtrOutput values. You can construct a concrete instance of `PolicyTagIamMemberConditionPtrInput` via:

        PolicyTagIamMemberConditionArgs{...}

or:

        nil

func PolicyTagIamMemberConditionPtr added in v4.1.0

type PolicyTagIamMemberConditionPtrOutput added in v4.1.0

type PolicyTagIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (PolicyTagIamMemberConditionPtrOutput) Description added in v4.1.0

func (PolicyTagIamMemberConditionPtrOutput) Elem added in v4.1.0

func (PolicyTagIamMemberConditionPtrOutput) ElementType added in v4.1.0

func (PolicyTagIamMemberConditionPtrOutput) Expression added in v4.1.0

func (PolicyTagIamMemberConditionPtrOutput) Title added in v4.1.0

func (PolicyTagIamMemberConditionPtrOutput) ToPolicyTagIamMemberConditionPtrOutput added in v4.1.0

func (o PolicyTagIamMemberConditionPtrOutput) ToPolicyTagIamMemberConditionPtrOutput() PolicyTagIamMemberConditionPtrOutput

func (PolicyTagIamMemberConditionPtrOutput) ToPolicyTagIamMemberConditionPtrOutputWithContext added in v4.1.0

func (o PolicyTagIamMemberConditionPtrOutput) ToPolicyTagIamMemberConditionPtrOutputWithContext(ctx context.Context) PolicyTagIamMemberConditionPtrOutput

type PolicyTagIamMemberInput added in v4.4.0

type PolicyTagIamMemberInput interface {
	pulumi.Input

	ToPolicyTagIamMemberOutput() PolicyTagIamMemberOutput
	ToPolicyTagIamMemberOutputWithContext(ctx context.Context) PolicyTagIamMemberOutput
}

type PolicyTagIamMemberMap added in v4.11.1

type PolicyTagIamMemberMap map[string]PolicyTagIamMemberInput

func (PolicyTagIamMemberMap) ElementType added in v4.11.1

func (PolicyTagIamMemberMap) ElementType() reflect.Type

func (PolicyTagIamMemberMap) ToPolicyTagIamMemberMapOutput added in v4.11.1

func (i PolicyTagIamMemberMap) ToPolicyTagIamMemberMapOutput() PolicyTagIamMemberMapOutput

func (PolicyTagIamMemberMap) ToPolicyTagIamMemberMapOutputWithContext added in v4.11.1

func (i PolicyTagIamMemberMap) ToPolicyTagIamMemberMapOutputWithContext(ctx context.Context) PolicyTagIamMemberMapOutput

type PolicyTagIamMemberMapInput added in v4.11.1

type PolicyTagIamMemberMapInput interface {
	pulumi.Input

	ToPolicyTagIamMemberMapOutput() PolicyTagIamMemberMapOutput
	ToPolicyTagIamMemberMapOutputWithContext(context.Context) PolicyTagIamMemberMapOutput
}

PolicyTagIamMemberMapInput is an input type that accepts PolicyTagIamMemberMap and PolicyTagIamMemberMapOutput values. You can construct a concrete instance of `PolicyTagIamMemberMapInput` via:

PolicyTagIamMemberMap{ "key": PolicyTagIamMemberArgs{...} }

type PolicyTagIamMemberMapOutput added in v4.11.1

type PolicyTagIamMemberMapOutput struct{ *pulumi.OutputState }

func (PolicyTagIamMemberMapOutput) ElementType added in v4.11.1

func (PolicyTagIamMemberMapOutput) MapIndex added in v4.11.1

func (PolicyTagIamMemberMapOutput) ToPolicyTagIamMemberMapOutput added in v4.11.1

func (o PolicyTagIamMemberMapOutput) ToPolicyTagIamMemberMapOutput() PolicyTagIamMemberMapOutput

func (PolicyTagIamMemberMapOutput) ToPolicyTagIamMemberMapOutputWithContext added in v4.11.1

func (o PolicyTagIamMemberMapOutput) ToPolicyTagIamMemberMapOutputWithContext(ctx context.Context) PolicyTagIamMemberMapOutput

type PolicyTagIamMemberOutput added in v4.4.0

type PolicyTagIamMemberOutput struct {
	*pulumi.OutputState
}

func (PolicyTagIamMemberOutput) ElementType added in v4.4.0

func (PolicyTagIamMemberOutput) ElementType() reflect.Type

func (PolicyTagIamMemberOutput) ToPolicyTagIamMemberOutput added in v4.4.0

func (o PolicyTagIamMemberOutput) ToPolicyTagIamMemberOutput() PolicyTagIamMemberOutput

func (PolicyTagIamMemberOutput) ToPolicyTagIamMemberOutputWithContext added in v4.4.0

func (o PolicyTagIamMemberOutput) ToPolicyTagIamMemberOutputWithContext(ctx context.Context) PolicyTagIamMemberOutput

func (PolicyTagIamMemberOutput) ToPolicyTagIamMemberPtrOutput added in v4.11.1

func (o PolicyTagIamMemberOutput) ToPolicyTagIamMemberPtrOutput() PolicyTagIamMemberPtrOutput

func (PolicyTagIamMemberOutput) ToPolicyTagIamMemberPtrOutputWithContext added in v4.11.1

func (o PolicyTagIamMemberOutput) ToPolicyTagIamMemberPtrOutputWithContext(ctx context.Context) PolicyTagIamMemberPtrOutput

type PolicyTagIamMemberPtrInput added in v4.11.1

type PolicyTagIamMemberPtrInput interface {
	pulumi.Input

	ToPolicyTagIamMemberPtrOutput() PolicyTagIamMemberPtrOutput
	ToPolicyTagIamMemberPtrOutputWithContext(ctx context.Context) PolicyTagIamMemberPtrOutput
}

type PolicyTagIamMemberPtrOutput added in v4.11.1

type PolicyTagIamMemberPtrOutput struct {
	*pulumi.OutputState
}

func (PolicyTagIamMemberPtrOutput) ElementType added in v4.11.1

func (PolicyTagIamMemberPtrOutput) ToPolicyTagIamMemberPtrOutput added in v4.11.1

func (o PolicyTagIamMemberPtrOutput) ToPolicyTagIamMemberPtrOutput() PolicyTagIamMemberPtrOutput

func (PolicyTagIamMemberPtrOutput) ToPolicyTagIamMemberPtrOutputWithContext added in v4.11.1

func (o PolicyTagIamMemberPtrOutput) ToPolicyTagIamMemberPtrOutputWithContext(ctx context.Context) PolicyTagIamMemberPtrOutput

type PolicyTagIamMemberState added in v4.1.0

type PolicyTagIamMemberState struct {
	Condition PolicyTagIamMemberConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringPtrInput
	Member pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.PolicyTagIamBinding` 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 (PolicyTagIamMemberState) ElementType added in v4.1.0

func (PolicyTagIamMemberState) ElementType() reflect.Type

type PolicyTagIamPolicy added in v4.1.0

type PolicyTagIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringOutput `pulumi:"policyTag"`
}

Three different resources help you manage your IAM policy for Data catalog PolicyTag. Each of these resources serves a different use case:

* `datacatalog.PolicyTagIamPolicy`: Authoritative. Sets the IAM policy for the policytag and replaces any existing policy already attached. * `datacatalog.PolicyTagIamBinding`: 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 policytag are preserved. * `datacatalog.PolicyTagIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the policytag are preserved.

> **Note:** `datacatalog.PolicyTagIamPolicy` **cannot** be used in conjunction with `datacatalog.PolicyTagIamBinding` and `datacatalog.PolicyTagIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_policy\_tag\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewPolicyTagIamPolicy(ctx, "policy", &datacatalog.PolicyTagIamPolicyArgs{
			PolicyTag:  pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_policy\_tag\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewPolicyTagIamBinding(ctx, "binding", &datacatalog.PolicyTagIamBindingArgs{
			PolicyTag: pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.Name),
			Role:      pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_policy\_tag\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewPolicyTagIamMember(ctx, "member", &datacatalog.PolicyTagIamMemberArgs{
			PolicyTag: pulumi.Any(google_data_catalog_policy_tag.Basic_policy_tag.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* {{policy_tag}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog policytag 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:datacatalog/policyTagIamPolicy:PolicyTagIamPolicy editor "{{policy_tag}} 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:datacatalog/policyTagIamPolicy:PolicyTagIamPolicy editor "{{policy_tag}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/policyTagIamPolicy:PolicyTagIamPolicy editor {{policy_tag}}

```

-> **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 GetPolicyTagIamPolicy added in v4.1.0

func GetPolicyTagIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyTagIamPolicyState, opts ...pulumi.ResourceOption) (*PolicyTagIamPolicy, error)

GetPolicyTagIamPolicy gets an existing PolicyTagIamPolicy 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 NewPolicyTagIamPolicy added in v4.1.0

func NewPolicyTagIamPolicy(ctx *pulumi.Context,
	name string, args *PolicyTagIamPolicyArgs, opts ...pulumi.ResourceOption) (*PolicyTagIamPolicy, error)

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

func (*PolicyTagIamPolicy) ElementType added in v4.4.0

func (*PolicyTagIamPolicy) ElementType() reflect.Type

func (*PolicyTagIamPolicy) ToPolicyTagIamPolicyOutput added in v4.4.0

func (i *PolicyTagIamPolicy) ToPolicyTagIamPolicyOutput() PolicyTagIamPolicyOutput

func (*PolicyTagIamPolicy) ToPolicyTagIamPolicyOutputWithContext added in v4.4.0

func (i *PolicyTagIamPolicy) ToPolicyTagIamPolicyOutputWithContext(ctx context.Context) PolicyTagIamPolicyOutput

func (*PolicyTagIamPolicy) ToPolicyTagIamPolicyPtrOutput added in v4.11.1

func (i *PolicyTagIamPolicy) ToPolicyTagIamPolicyPtrOutput() PolicyTagIamPolicyPtrOutput

func (*PolicyTagIamPolicy) ToPolicyTagIamPolicyPtrOutputWithContext added in v4.11.1

func (i *PolicyTagIamPolicy) ToPolicyTagIamPolicyPtrOutputWithContext(ctx context.Context) PolicyTagIamPolicyPtrOutput

type PolicyTagIamPolicyArgs added in v4.1.0

type PolicyTagIamPolicyArgs struct {
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringInput
}

The set of arguments for constructing a PolicyTagIamPolicy resource.

func (PolicyTagIamPolicyArgs) ElementType added in v4.1.0

func (PolicyTagIamPolicyArgs) ElementType() reflect.Type

type PolicyTagIamPolicyArray added in v4.11.1

type PolicyTagIamPolicyArray []PolicyTagIamPolicyInput

func (PolicyTagIamPolicyArray) ElementType added in v4.11.1

func (PolicyTagIamPolicyArray) ElementType() reflect.Type

func (PolicyTagIamPolicyArray) ToPolicyTagIamPolicyArrayOutput added in v4.11.1

func (i PolicyTagIamPolicyArray) ToPolicyTagIamPolicyArrayOutput() PolicyTagIamPolicyArrayOutput

func (PolicyTagIamPolicyArray) ToPolicyTagIamPolicyArrayOutputWithContext added in v4.11.1

func (i PolicyTagIamPolicyArray) ToPolicyTagIamPolicyArrayOutputWithContext(ctx context.Context) PolicyTagIamPolicyArrayOutput

type PolicyTagIamPolicyArrayInput added in v4.11.1

type PolicyTagIamPolicyArrayInput interface {
	pulumi.Input

	ToPolicyTagIamPolicyArrayOutput() PolicyTagIamPolicyArrayOutput
	ToPolicyTagIamPolicyArrayOutputWithContext(context.Context) PolicyTagIamPolicyArrayOutput
}

PolicyTagIamPolicyArrayInput is an input type that accepts PolicyTagIamPolicyArray and PolicyTagIamPolicyArrayOutput values. You can construct a concrete instance of `PolicyTagIamPolicyArrayInput` via:

PolicyTagIamPolicyArray{ PolicyTagIamPolicyArgs{...} }

type PolicyTagIamPolicyArrayOutput added in v4.11.1

type PolicyTagIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (PolicyTagIamPolicyArrayOutput) ElementType added in v4.11.1

func (PolicyTagIamPolicyArrayOutput) Index added in v4.11.1

func (PolicyTagIamPolicyArrayOutput) ToPolicyTagIamPolicyArrayOutput added in v4.11.1

func (o PolicyTagIamPolicyArrayOutput) ToPolicyTagIamPolicyArrayOutput() PolicyTagIamPolicyArrayOutput

func (PolicyTagIamPolicyArrayOutput) ToPolicyTagIamPolicyArrayOutputWithContext added in v4.11.1

func (o PolicyTagIamPolicyArrayOutput) ToPolicyTagIamPolicyArrayOutputWithContext(ctx context.Context) PolicyTagIamPolicyArrayOutput

type PolicyTagIamPolicyInput added in v4.4.0

type PolicyTagIamPolicyInput interface {
	pulumi.Input

	ToPolicyTagIamPolicyOutput() PolicyTagIamPolicyOutput
	ToPolicyTagIamPolicyOutputWithContext(ctx context.Context) PolicyTagIamPolicyOutput
}

type PolicyTagIamPolicyMap added in v4.11.1

type PolicyTagIamPolicyMap map[string]PolicyTagIamPolicyInput

func (PolicyTagIamPolicyMap) ElementType added in v4.11.1

func (PolicyTagIamPolicyMap) ElementType() reflect.Type

func (PolicyTagIamPolicyMap) ToPolicyTagIamPolicyMapOutput added in v4.11.1

func (i PolicyTagIamPolicyMap) ToPolicyTagIamPolicyMapOutput() PolicyTagIamPolicyMapOutput

func (PolicyTagIamPolicyMap) ToPolicyTagIamPolicyMapOutputWithContext added in v4.11.1

func (i PolicyTagIamPolicyMap) ToPolicyTagIamPolicyMapOutputWithContext(ctx context.Context) PolicyTagIamPolicyMapOutput

type PolicyTagIamPolicyMapInput added in v4.11.1

type PolicyTagIamPolicyMapInput interface {
	pulumi.Input

	ToPolicyTagIamPolicyMapOutput() PolicyTagIamPolicyMapOutput
	ToPolicyTagIamPolicyMapOutputWithContext(context.Context) PolicyTagIamPolicyMapOutput
}

PolicyTagIamPolicyMapInput is an input type that accepts PolicyTagIamPolicyMap and PolicyTagIamPolicyMapOutput values. You can construct a concrete instance of `PolicyTagIamPolicyMapInput` via:

PolicyTagIamPolicyMap{ "key": PolicyTagIamPolicyArgs{...} }

type PolicyTagIamPolicyMapOutput added in v4.11.1

type PolicyTagIamPolicyMapOutput struct{ *pulumi.OutputState }

func (PolicyTagIamPolicyMapOutput) ElementType added in v4.11.1

func (PolicyTagIamPolicyMapOutput) MapIndex added in v4.11.1

func (PolicyTagIamPolicyMapOutput) ToPolicyTagIamPolicyMapOutput added in v4.11.1

func (o PolicyTagIamPolicyMapOutput) ToPolicyTagIamPolicyMapOutput() PolicyTagIamPolicyMapOutput

func (PolicyTagIamPolicyMapOutput) ToPolicyTagIamPolicyMapOutputWithContext added in v4.11.1

func (o PolicyTagIamPolicyMapOutput) ToPolicyTagIamPolicyMapOutputWithContext(ctx context.Context) PolicyTagIamPolicyMapOutput

type PolicyTagIamPolicyOutput added in v4.4.0

type PolicyTagIamPolicyOutput struct {
	*pulumi.OutputState
}

func (PolicyTagIamPolicyOutput) ElementType added in v4.4.0

func (PolicyTagIamPolicyOutput) ElementType() reflect.Type

func (PolicyTagIamPolicyOutput) ToPolicyTagIamPolicyOutput added in v4.4.0

func (o PolicyTagIamPolicyOutput) ToPolicyTagIamPolicyOutput() PolicyTagIamPolicyOutput

func (PolicyTagIamPolicyOutput) ToPolicyTagIamPolicyOutputWithContext added in v4.4.0

func (o PolicyTagIamPolicyOutput) ToPolicyTagIamPolicyOutputWithContext(ctx context.Context) PolicyTagIamPolicyOutput

func (PolicyTagIamPolicyOutput) ToPolicyTagIamPolicyPtrOutput added in v4.11.1

func (o PolicyTagIamPolicyOutput) ToPolicyTagIamPolicyPtrOutput() PolicyTagIamPolicyPtrOutput

func (PolicyTagIamPolicyOutput) ToPolicyTagIamPolicyPtrOutputWithContext added in v4.11.1

func (o PolicyTagIamPolicyOutput) ToPolicyTagIamPolicyPtrOutputWithContext(ctx context.Context) PolicyTagIamPolicyPtrOutput

type PolicyTagIamPolicyPtrInput added in v4.11.1

type PolicyTagIamPolicyPtrInput interface {
	pulumi.Input

	ToPolicyTagIamPolicyPtrOutput() PolicyTagIamPolicyPtrOutput
	ToPolicyTagIamPolicyPtrOutputWithContext(ctx context.Context) PolicyTagIamPolicyPtrOutput
}

type PolicyTagIamPolicyPtrOutput added in v4.11.1

type PolicyTagIamPolicyPtrOutput struct {
	*pulumi.OutputState
}

func (PolicyTagIamPolicyPtrOutput) ElementType added in v4.11.1

func (PolicyTagIamPolicyPtrOutput) ToPolicyTagIamPolicyPtrOutput added in v4.11.1

func (o PolicyTagIamPolicyPtrOutput) ToPolicyTagIamPolicyPtrOutput() PolicyTagIamPolicyPtrOutput

func (PolicyTagIamPolicyPtrOutput) ToPolicyTagIamPolicyPtrOutputWithContext added in v4.11.1

func (o PolicyTagIamPolicyPtrOutput) ToPolicyTagIamPolicyPtrOutputWithContext(ctx context.Context) PolicyTagIamPolicyPtrOutput

type PolicyTagIamPolicyState added in v4.1.0

type PolicyTagIamPolicyState struct {
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	PolicyTag pulumi.StringPtrInput
}

func (PolicyTagIamPolicyState) ElementType added in v4.1.0

func (PolicyTagIamPolicyState) ElementType() reflect.Type

type PolicyTagInput added in v4.4.0

type PolicyTagInput interface {
	pulumi.Input

	ToPolicyTagOutput() PolicyTagOutput
	ToPolicyTagOutputWithContext(ctx context.Context) PolicyTagOutput
}

type PolicyTagMap added in v4.11.1

type PolicyTagMap map[string]PolicyTagInput

func (PolicyTagMap) ElementType added in v4.11.1

func (PolicyTagMap) ElementType() reflect.Type

func (PolicyTagMap) ToPolicyTagMapOutput added in v4.11.1

func (i PolicyTagMap) ToPolicyTagMapOutput() PolicyTagMapOutput

func (PolicyTagMap) ToPolicyTagMapOutputWithContext added in v4.11.1

func (i PolicyTagMap) ToPolicyTagMapOutputWithContext(ctx context.Context) PolicyTagMapOutput

type PolicyTagMapInput added in v4.11.1

type PolicyTagMapInput interface {
	pulumi.Input

	ToPolicyTagMapOutput() PolicyTagMapOutput
	ToPolicyTagMapOutputWithContext(context.Context) PolicyTagMapOutput
}

PolicyTagMapInput is an input type that accepts PolicyTagMap and PolicyTagMapOutput values. You can construct a concrete instance of `PolicyTagMapInput` via:

PolicyTagMap{ "key": PolicyTagArgs{...} }

type PolicyTagMapOutput added in v4.11.1

type PolicyTagMapOutput struct{ *pulumi.OutputState }

func (PolicyTagMapOutput) ElementType added in v4.11.1

func (PolicyTagMapOutput) ElementType() reflect.Type

func (PolicyTagMapOutput) MapIndex added in v4.11.1

func (PolicyTagMapOutput) ToPolicyTagMapOutput added in v4.11.1

func (o PolicyTagMapOutput) ToPolicyTagMapOutput() PolicyTagMapOutput

func (PolicyTagMapOutput) ToPolicyTagMapOutputWithContext added in v4.11.1

func (o PolicyTagMapOutput) ToPolicyTagMapOutputWithContext(ctx context.Context) PolicyTagMapOutput

type PolicyTagOutput added in v4.4.0

type PolicyTagOutput struct {
	*pulumi.OutputState
}

func (PolicyTagOutput) ElementType added in v4.4.0

func (PolicyTagOutput) ElementType() reflect.Type

func (PolicyTagOutput) ToPolicyTagOutput added in v4.4.0

func (o PolicyTagOutput) ToPolicyTagOutput() PolicyTagOutput

func (PolicyTagOutput) ToPolicyTagOutputWithContext added in v4.4.0

func (o PolicyTagOutput) ToPolicyTagOutputWithContext(ctx context.Context) PolicyTagOutput

func (PolicyTagOutput) ToPolicyTagPtrOutput added in v4.11.1

func (o PolicyTagOutput) ToPolicyTagPtrOutput() PolicyTagPtrOutput

func (PolicyTagOutput) ToPolicyTagPtrOutputWithContext added in v4.11.1

func (o PolicyTagOutput) ToPolicyTagPtrOutputWithContext(ctx context.Context) PolicyTagPtrOutput

type PolicyTagPtrInput added in v4.11.1

type PolicyTagPtrInput interface {
	pulumi.Input

	ToPolicyTagPtrOutput() PolicyTagPtrOutput
	ToPolicyTagPtrOutputWithContext(ctx context.Context) PolicyTagPtrOutput
}

type PolicyTagPtrOutput added in v4.11.1

type PolicyTagPtrOutput struct {
	*pulumi.OutputState
}

func (PolicyTagPtrOutput) ElementType added in v4.11.1

func (PolicyTagPtrOutput) ElementType() reflect.Type

func (PolicyTagPtrOutput) ToPolicyTagPtrOutput added in v4.11.1

func (o PolicyTagPtrOutput) ToPolicyTagPtrOutput() PolicyTagPtrOutput

func (PolicyTagPtrOutput) ToPolicyTagPtrOutputWithContext added in v4.11.1

func (o PolicyTagPtrOutput) ToPolicyTagPtrOutputWithContext(ctx context.Context) PolicyTagPtrOutput

type PolicyTagState added in v4.1.0

type PolicyTagState struct {
	// Resource names of child policy tags of this policy tag.
	ChildPolicyTags pulumi.StringArrayInput
	// Description of this policy tag. It must: contain only unicode characters, tabs,
	// newlines, carriage returns and page breaks; and be at most 2000 bytes long when
	// encoded in UTF-8. If not set, defaults to an empty description.
	// If not set, defaults to an empty description.
	Description pulumi.StringPtrInput
	// User defined name of this policy tag. It must: be unique within the parent
	// taxonomy; contain only unicode letters, numbers, underscores, dashes and spaces;
	// not start or end with spaces; and be at most 200 bytes long when encoded in UTF-8.
	DisplayName pulumi.StringPtrInput
	// Resource name of this policy tag, whose format is:
	// "projects/{project}/locations/{region}/taxonomies/{taxonomy}/policyTags/{policytag}"
	Name pulumi.StringPtrInput
	// Resource name of this policy tag's parent policy tag.
	// If empty, it means this policy tag is a top level policy tag.
	// If not set, defaults to an empty string.
	ParentPolicyTag pulumi.StringPtrInput
	// Taxonomy the policy tag is associated with
	Taxonomy pulumi.StringPtrInput
}

func (PolicyTagState) ElementType added in v4.1.0

func (PolicyTagState) ElementType() reflect.Type

type Tag

type Tag struct {
	pulumi.CustomResourceState

	// Resources like Entry can have schemas associated with them. This scope allows users to attach tags to an
	// individual column based on that schema.
	// For attaching a tag to a nested column, use `.` to separate the column names. Example:
	// `outer_column.inner_column`
	Column pulumi.StringPtrOutput `pulumi:"column"`
	// This maps the ID of a tag field to the value of and additional information about that field.
	// Valid field IDs are defined by the tag's template. A tag must have at least 1 field and at most 500 fields.
	// Structure is documented below.
	Fields TagFieldArrayOutput `pulumi:"fields"`
	// The resource name of the tag in URL format. Example:
	// projects/{project_id}/locations/{location}/entrygroups/{entryGroupId}/entries/{entryId}/tags/{tag_id} or
	// projects/{project_id}/locations/{location}/entrygroups/{entryGroupId}/tags/{tag_id} where tag_id is a system-generated
	// identifier. Note that this Tag may not actually be stored in the location in this name.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the parent this tag is attached to. This can be the name of an entry or an entry group. If an entry group, the tag will be attached to
	// all entries in that group.
	Parent pulumi.StringPtrOutput `pulumi:"parent"`
	// The resource name of the tag template that this tag uses. Example:
	// projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}
	// This field cannot be modified after creation.
	Template pulumi.StringOutput `pulumi:"template"`
	// The display name of the tag template.
	TemplateDisplayname pulumi.StringOutput `pulumi:"templateDisplayname"`
}

Tags are used to attach custom metadata to Data Catalog resources. Tags conform to the specifications within their tag template.

See [Data Catalog IAM](https://cloud.google.com/data-catalog/docs/concepts/iam) for information on the permissions needed to create or view tags.

To get more information about Tag, see:

* [API documentation](https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.tags) * How-to Guides

## Example Usage ### Data Catalog Entry Tag Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		entryGroup, err := datacatalog.NewEntryGroup(ctx, "entryGroup", &datacatalog.EntryGroupArgs{
			EntryGroupId: pulumi.String("my_entry_group"),
		})
		if err != nil {
			return err
		}
		entry, err := datacatalog.NewEntry(ctx, "entry", &datacatalog.EntryArgs{
			EntryGroup:          entryGroup.ID(),
			EntryId:             pulumi.String("my_entry"),
			UserSpecifiedType:   pulumi.String("my_custom_type"),
			UserSpecifiedSystem: pulumi.String("SomethingExternal"),
		})
		if err != nil {
			return err
		}
		tagTemplate, err := datacatalog.NewTagTemplate(ctx, "tagTemplate", &datacatalog.TagTemplateArgs{
			TagTemplateId: pulumi.String("my_template"),
			Region:        pulumi.String("us-central1"),
			DisplayName:   pulumi.String("Demo Tag Template"),
			Fields: datacatalog.TagTemplateFieldArray{
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("source"),
					DisplayName: pulumi.String("Source of data asset"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						PrimitiveType: pulumi.String("STRING"),
					},
					IsRequired: pulumi.Bool(true),
				},
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("num_rows"),
					DisplayName: pulumi.String("Number of rows in the data asset"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						PrimitiveType: pulumi.String("DOUBLE"),
					},
				},
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("pii_type"),
					DisplayName: pulumi.String("PII type"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						EnumType: &datacatalog.TagTemplateFieldTypeEnumTypeArgs{
							AllowedValues: datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArray{
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("EMAIL"),
								},
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("SOCIAL SECURITY NUMBER"),
								},
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("NONE"),
								},
							},
						},
					},
				},
			},
			ForceDelete: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewTag(ctx, "basicTag", &datacatalog.TagArgs{
			Parent:   entry.ID(),
			Template: tagTemplate.ID(),
			Fields: datacatalog.TagFieldArray{
				&datacatalog.TagFieldArgs{
					FieldName:   pulumi.String("source"),
					StringValue: pulumi.String("my-string"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Data Catalog Entry Group Tag

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		entryGroup, err := datacatalog.NewEntryGroup(ctx, "entryGroup", &datacatalog.EntryGroupArgs{
			EntryGroupId: pulumi.String("my_entry_group"),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewEntry(ctx, "firstEntry", &datacatalog.EntryArgs{
			EntryGroup:          entryGroup.ID(),
			EntryId:             pulumi.String("first_entry"),
			UserSpecifiedType:   pulumi.String("my_custom_type"),
			UserSpecifiedSystem: pulumi.String("SomethingExternal"),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewEntry(ctx, "secondEntry", &datacatalog.EntryArgs{
			EntryGroup:          entryGroup.ID(),
			EntryId:             pulumi.String("second_entry"),
			UserSpecifiedType:   pulumi.String("another_custom_type"),
			UserSpecifiedSystem: pulumi.String("SomethingElseExternal"),
		})
		if err != nil {
			return err
		}
		tagTemplate, err := datacatalog.NewTagTemplate(ctx, "tagTemplate", &datacatalog.TagTemplateArgs{
			TagTemplateId: pulumi.String("my_template"),
			Region:        pulumi.String("us-central1"),
			DisplayName:   pulumi.String("Demo Tag Template"),
			Fields: datacatalog.TagTemplateFieldArray{
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("source"),
					DisplayName: pulumi.String("Source of data asset"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						PrimitiveType: pulumi.String("STRING"),
					},
					IsRequired: pulumi.Bool(true),
				},
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("num_rows"),
					DisplayName: pulumi.String("Number of rows in the data asset"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						PrimitiveType: pulumi.String("DOUBLE"),
					},
				},
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("pii_type"),
					DisplayName: pulumi.String("PII type"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						EnumType: &datacatalog.TagTemplateFieldTypeEnumTypeArgs{
							AllowedValues: datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArray{
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("EMAIL"),
								},
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("SOCIAL SECURITY NUMBER"),
								},
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("NONE"),
								},
							},
						},
					},
				},
			},
			ForceDelete: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewTag(ctx, "entryGroupTag", &datacatalog.TagArgs{
			Parent:   entryGroup.ID(),
			Template: tagTemplate.ID(),
			Fields: datacatalog.TagFieldArray{
				&datacatalog.TagFieldArgs{
					FieldName:   pulumi.String("source"),
					StringValue: pulumi.String("my-string"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Data Catalog Entry Tag Full

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		entryGroup, err := datacatalog.NewEntryGroup(ctx, "entryGroup", &datacatalog.EntryGroupArgs{
			EntryGroupId: pulumi.String("my_entry_group"),
		})
		if err != nil {
			return err
		}
		entry, err := datacatalog.NewEntry(ctx, "entry", &datacatalog.EntryArgs{
			EntryGroup:          entryGroup.ID(),
			EntryId:             pulumi.String("my_entry"),
			UserSpecifiedType:   pulumi.String("my_custom_type"),
			UserSpecifiedSystem: pulumi.String("SomethingExternal"),
			Schema:              pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"columns\": [\n", "    {\n", "      \"column\": \"first_name\",\n", "      \"description\": \"First name\",\n", "      \"mode\": \"REQUIRED\",\n", "      \"type\": \"STRING\"\n", "    },\n", "    {\n", "      \"column\": \"last_name\",\n", "      \"description\": \"Last name\",\n", "      \"mode\": \"REQUIRED\",\n", "      \"type\": \"STRING\"\n", "    },\n", "    {\n", "      \"column\": \"address\",\n", "      \"description\": \"Address\",\n", "      \"mode\": \"REPEATED\",\n", "      \"subcolumns\": [\n", "        {\n", "          \"column\": \"city\",\n", "          \"description\": \"City\",\n", "          \"mode\": \"NULLABLE\",\n", "          \"type\": \"STRING\"\n", "        },\n", "        {\n", "          \"column\": \"state\",\n", "          \"description\": \"State\",\n", "          \"mode\": \"NULLABLE\",\n", "          \"type\": \"STRING\"\n", "        }\n", "      ],\n", "      \"type\": \"RECORD\"\n", "    }\n", "  ]\n", "}\n")),
		})
		if err != nil {
			return err
		}
		tagTemplate, err := datacatalog.NewTagTemplate(ctx, "tagTemplate", &datacatalog.TagTemplateArgs{
			TagTemplateId: pulumi.String("my_template"),
			Region:        pulumi.String("us-central1"),
			DisplayName:   pulumi.String("Demo Tag Template"),
			Fields: datacatalog.TagTemplateFieldArray{
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("source"),
					DisplayName: pulumi.String("Source of data asset"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						PrimitiveType: pulumi.String("STRING"),
					},
					IsRequired: pulumi.Bool(true),
				},
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("num_rows"),
					DisplayName: pulumi.String("Number of rows in the data asset"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						PrimitiveType: pulumi.String("DOUBLE"),
					},
				},
				&datacatalog.TagTemplateFieldArgs{
					FieldId:     pulumi.String("pii_type"),
					DisplayName: pulumi.String("PII type"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						EnumType: &datacatalog.TagTemplateFieldTypeEnumTypeArgs{
							AllowedValues: datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArray{
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("EMAIL"),
								},
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("SOCIAL SECURITY NUMBER"),
								},
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("NONE"),
								},
							},
						},
					},
				},
			},
			ForceDelete: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewTag(ctx, "basicTag", &datacatalog.TagArgs{
			Parent:   entry.ID(),
			Template: tagTemplate.ID(),
			Fields: datacatalog.TagFieldArray{
				&datacatalog.TagFieldArgs{
					FieldName:   pulumi.String("source"),
					StringValue: pulumi.String("my-string"),
				},
				&datacatalog.TagFieldArgs{
					FieldName:   pulumi.String("num_rows"),
					DoubleValue: pulumi.Float64(5),
				},
				&datacatalog.TagFieldArgs{
					FieldName: pulumi.String("pii_type"),
					EnumValue: pulumi.String("EMAIL"),
				},
			},
			Column: pulumi.String("address"),
		})
		if err != nil {
			return err
		}
		_, err = datacatalog.NewTag(ctx, "second_tag", &datacatalog.TagArgs{
			Parent:   entry.ID(),
			Template: tagTemplate.ID(),
			Fields: datacatalog.TagFieldArray{
				&datacatalog.TagFieldArgs{
					FieldName:   pulumi.String("source"),
					StringValue: pulumi.String("my-string"),
				},
				&datacatalog.TagFieldArgs{
					FieldName: pulumi.String("pii_type"),
					EnumValue: pulumi.String("NONE"),
				},
			},
			Column: pulumi.String("first_name"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Tag can be imported using any of these accepted formats

```sh

$ pulumi import gcp:datacatalog/tag:Tag default {{name}}

```

func GetTag

func GetTag(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TagState, opts ...pulumi.ResourceOption) (*Tag, error)

GetTag gets an existing Tag 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 NewTag

func NewTag(ctx *pulumi.Context,
	name string, args *TagArgs, opts ...pulumi.ResourceOption) (*Tag, error)

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

func (*Tag) ElementType added in v4.4.0

func (*Tag) ElementType() reflect.Type

func (*Tag) ToTagOutput added in v4.4.0

func (i *Tag) ToTagOutput() TagOutput

func (*Tag) ToTagOutputWithContext added in v4.4.0

func (i *Tag) ToTagOutputWithContext(ctx context.Context) TagOutput

func (*Tag) ToTagPtrOutput added in v4.11.1

func (i *Tag) ToTagPtrOutput() TagPtrOutput

func (*Tag) ToTagPtrOutputWithContext added in v4.11.1

func (i *Tag) ToTagPtrOutputWithContext(ctx context.Context) TagPtrOutput

type TagArgs

type TagArgs struct {
	// Resources like Entry can have schemas associated with them. This scope allows users to attach tags to an
	// individual column based on that schema.
	// For attaching a tag to a nested column, use `.` to separate the column names. Example:
	// `outer_column.inner_column`
	Column pulumi.StringPtrInput
	// This maps the ID of a tag field to the value of and additional information about that field.
	// Valid field IDs are defined by the tag's template. A tag must have at least 1 field and at most 500 fields.
	// Structure is documented below.
	Fields TagFieldArrayInput
	// The name of the parent this tag is attached to. This can be the name of an entry or an entry group. If an entry group, the tag will be attached to
	// all entries in that group.
	Parent pulumi.StringPtrInput
	// The resource name of the tag template that this tag uses. Example:
	// projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}
	// This field cannot be modified after creation.
	Template pulumi.StringInput
}

The set of arguments for constructing a Tag resource.

func (TagArgs) ElementType

func (TagArgs) ElementType() reflect.Type

type TagArray added in v4.11.1

type TagArray []TagInput

func (TagArray) ElementType added in v4.11.1

func (TagArray) ElementType() reflect.Type

func (TagArray) ToTagArrayOutput added in v4.11.1

func (i TagArray) ToTagArrayOutput() TagArrayOutput

func (TagArray) ToTagArrayOutputWithContext added in v4.11.1

func (i TagArray) ToTagArrayOutputWithContext(ctx context.Context) TagArrayOutput

type TagArrayInput added in v4.11.1

type TagArrayInput interface {
	pulumi.Input

	ToTagArrayOutput() TagArrayOutput
	ToTagArrayOutputWithContext(context.Context) TagArrayOutput
}

TagArrayInput is an input type that accepts TagArray and TagArrayOutput values. You can construct a concrete instance of `TagArrayInput` via:

TagArray{ TagArgs{...} }

type TagArrayOutput added in v4.11.1

type TagArrayOutput struct{ *pulumi.OutputState }

func (TagArrayOutput) ElementType added in v4.11.1

func (TagArrayOutput) ElementType() reflect.Type

func (TagArrayOutput) Index added in v4.11.1

func (TagArrayOutput) ToTagArrayOutput added in v4.11.1

func (o TagArrayOutput) ToTagArrayOutput() TagArrayOutput

func (TagArrayOutput) ToTagArrayOutputWithContext added in v4.11.1

func (o TagArrayOutput) ToTagArrayOutputWithContext(ctx context.Context) TagArrayOutput

type TagField

type TagField struct {
	// Holds the value for a tag field with boolean type.
	BoolValue *bool `pulumi:"boolValue"`
	// -
	// The display name of this field
	DisplayName *string `pulumi:"displayName"`
	// Holds the value for a tag field with double type.
	DoubleValue *float64 `pulumi:"doubleValue"`
	// Holds the value for a tag field with enum type. This value must be one of the allowed values in the definition of this enum.
	// Structure is documented below.
	EnumValue *string `pulumi:"enumValue"`
	// The identifier for this object. Format specified above.
	FieldName string `pulumi:"fieldName"`
	// -
	// The order of this field with respect to other fields in this tag. For example, a higher value can indicate
	// a more important field. The value can be negative. Multiple fields can have the same order, and field orders
	// within a tag do not have to be sequential.
	Order *int `pulumi:"order"`
	// Holds the value for a tag field with string type.
	StringValue *string `pulumi:"stringValue"`
	// Holds the value for a tag field with timestamp type.
	TimestampValue *string `pulumi:"timestampValue"`
}

type TagFieldArgs

type TagFieldArgs struct {
	// Holds the value for a tag field with boolean type.
	BoolValue pulumi.BoolPtrInput `pulumi:"boolValue"`
	// -
	// The display name of this field
	DisplayName pulumi.StringPtrInput `pulumi:"displayName"`
	// Holds the value for a tag field with double type.
	DoubleValue pulumi.Float64PtrInput `pulumi:"doubleValue"`
	// Holds the value for a tag field with enum type. This value must be one of the allowed values in the definition of this enum.
	// Structure is documented below.
	EnumValue pulumi.StringPtrInput `pulumi:"enumValue"`
	// The identifier for this object. Format specified above.
	FieldName pulumi.StringInput `pulumi:"fieldName"`
	// -
	// The order of this field with respect to other fields in this tag. For example, a higher value can indicate
	// a more important field. The value can be negative. Multiple fields can have the same order, and field orders
	// within a tag do not have to be sequential.
	Order pulumi.IntPtrInput `pulumi:"order"`
	// Holds the value for a tag field with string type.
	StringValue pulumi.StringPtrInput `pulumi:"stringValue"`
	// Holds the value for a tag field with timestamp type.
	TimestampValue pulumi.StringPtrInput `pulumi:"timestampValue"`
}

func (TagFieldArgs) ElementType

func (TagFieldArgs) ElementType() reflect.Type

func (TagFieldArgs) ToTagFieldOutput

func (i TagFieldArgs) ToTagFieldOutput() TagFieldOutput

func (TagFieldArgs) ToTagFieldOutputWithContext

func (i TagFieldArgs) ToTagFieldOutputWithContext(ctx context.Context) TagFieldOutput

type TagFieldArray

type TagFieldArray []TagFieldInput

func (TagFieldArray) ElementType

func (TagFieldArray) ElementType() reflect.Type

func (TagFieldArray) ToTagFieldArrayOutput

func (i TagFieldArray) ToTagFieldArrayOutput() TagFieldArrayOutput

func (TagFieldArray) ToTagFieldArrayOutputWithContext

func (i TagFieldArray) ToTagFieldArrayOutputWithContext(ctx context.Context) TagFieldArrayOutput

type TagFieldArrayInput

type TagFieldArrayInput interface {
	pulumi.Input

	ToTagFieldArrayOutput() TagFieldArrayOutput
	ToTagFieldArrayOutputWithContext(context.Context) TagFieldArrayOutput
}

TagFieldArrayInput is an input type that accepts TagFieldArray and TagFieldArrayOutput values. You can construct a concrete instance of `TagFieldArrayInput` via:

TagFieldArray{ TagFieldArgs{...} }

type TagFieldArrayOutput

type TagFieldArrayOutput struct{ *pulumi.OutputState }

func (TagFieldArrayOutput) ElementType

func (TagFieldArrayOutput) ElementType() reflect.Type

func (TagFieldArrayOutput) Index

func (TagFieldArrayOutput) ToTagFieldArrayOutput

func (o TagFieldArrayOutput) ToTagFieldArrayOutput() TagFieldArrayOutput

func (TagFieldArrayOutput) ToTagFieldArrayOutputWithContext

func (o TagFieldArrayOutput) ToTagFieldArrayOutputWithContext(ctx context.Context) TagFieldArrayOutput

type TagFieldInput

type TagFieldInput interface {
	pulumi.Input

	ToTagFieldOutput() TagFieldOutput
	ToTagFieldOutputWithContext(context.Context) TagFieldOutput
}

TagFieldInput is an input type that accepts TagFieldArgs and TagFieldOutput values. You can construct a concrete instance of `TagFieldInput` via:

TagFieldArgs{...}

type TagFieldOutput

type TagFieldOutput struct{ *pulumi.OutputState }

func (TagFieldOutput) BoolValue

func (o TagFieldOutput) BoolValue() pulumi.BoolPtrOutput

Holds the value for a tag field with boolean type.

func (TagFieldOutput) DisplayName

func (o TagFieldOutput) DisplayName() pulumi.StringPtrOutput

- The display name of this field

func (TagFieldOutput) DoubleValue

func (o TagFieldOutput) DoubleValue() pulumi.Float64PtrOutput

Holds the value for a tag field with double type.

func (TagFieldOutput) ElementType

func (TagFieldOutput) ElementType() reflect.Type

func (TagFieldOutput) EnumValue

func (o TagFieldOutput) EnumValue() pulumi.StringPtrOutput

Holds the value for a tag field with enum type. This value must be one of the allowed values in the definition of this enum. Structure is documented below.

func (TagFieldOutput) FieldName

func (o TagFieldOutput) FieldName() pulumi.StringOutput

The identifier for this object. Format specified above.

func (TagFieldOutput) Order

- The order of this field with respect to other fields in this tag. For example, a higher value can indicate a more important field. The value can be negative. Multiple fields can have the same order, and field orders within a tag do not have to be sequential.

func (TagFieldOutput) StringValue

func (o TagFieldOutput) StringValue() pulumi.StringPtrOutput

Holds the value for a tag field with string type.

func (TagFieldOutput) TimestampValue

func (o TagFieldOutput) TimestampValue() pulumi.StringPtrOutput

Holds the value for a tag field with timestamp type.

func (TagFieldOutput) ToTagFieldOutput

func (o TagFieldOutput) ToTagFieldOutput() TagFieldOutput

func (TagFieldOutput) ToTagFieldOutputWithContext

func (o TagFieldOutput) ToTagFieldOutputWithContext(ctx context.Context) TagFieldOutput

type TagInput added in v4.4.0

type TagInput interface {
	pulumi.Input

	ToTagOutput() TagOutput
	ToTagOutputWithContext(ctx context.Context) TagOutput
}

type TagMap added in v4.11.1

type TagMap map[string]TagInput

func (TagMap) ElementType added in v4.11.1

func (TagMap) ElementType() reflect.Type

func (TagMap) ToTagMapOutput added in v4.11.1

func (i TagMap) ToTagMapOutput() TagMapOutput

func (TagMap) ToTagMapOutputWithContext added in v4.11.1

func (i TagMap) ToTagMapOutputWithContext(ctx context.Context) TagMapOutput

type TagMapInput added in v4.11.1

type TagMapInput interface {
	pulumi.Input

	ToTagMapOutput() TagMapOutput
	ToTagMapOutputWithContext(context.Context) TagMapOutput
}

TagMapInput is an input type that accepts TagMap and TagMapOutput values. You can construct a concrete instance of `TagMapInput` via:

TagMap{ "key": TagArgs{...} }

type TagMapOutput added in v4.11.1

type TagMapOutput struct{ *pulumi.OutputState }

func (TagMapOutput) ElementType added in v4.11.1

func (TagMapOutput) ElementType() reflect.Type

func (TagMapOutput) MapIndex added in v4.11.1

func (o TagMapOutput) MapIndex(k pulumi.StringInput) TagOutput

func (TagMapOutput) ToTagMapOutput added in v4.11.1

func (o TagMapOutput) ToTagMapOutput() TagMapOutput

func (TagMapOutput) ToTagMapOutputWithContext added in v4.11.1

func (o TagMapOutput) ToTagMapOutputWithContext(ctx context.Context) TagMapOutput

type TagOutput added in v4.4.0

type TagOutput struct {
	*pulumi.OutputState
}

func (TagOutput) ElementType added in v4.4.0

func (TagOutput) ElementType() reflect.Type

func (TagOutput) ToTagOutput added in v4.4.0

func (o TagOutput) ToTagOutput() TagOutput

func (TagOutput) ToTagOutputWithContext added in v4.4.0

func (o TagOutput) ToTagOutputWithContext(ctx context.Context) TagOutput

func (TagOutput) ToTagPtrOutput added in v4.11.1

func (o TagOutput) ToTagPtrOutput() TagPtrOutput

func (TagOutput) ToTagPtrOutputWithContext added in v4.11.1

func (o TagOutput) ToTagPtrOutputWithContext(ctx context.Context) TagPtrOutput

type TagPtrInput added in v4.11.1

type TagPtrInput interface {
	pulumi.Input

	ToTagPtrOutput() TagPtrOutput
	ToTagPtrOutputWithContext(ctx context.Context) TagPtrOutput
}

type TagPtrOutput added in v4.11.1

type TagPtrOutput struct {
	*pulumi.OutputState
}

func (TagPtrOutput) ElementType added in v4.11.1

func (TagPtrOutput) ElementType() reflect.Type

func (TagPtrOutput) ToTagPtrOutput added in v4.11.1

func (o TagPtrOutput) ToTagPtrOutput() TagPtrOutput

func (TagPtrOutput) ToTagPtrOutputWithContext added in v4.11.1

func (o TagPtrOutput) ToTagPtrOutputWithContext(ctx context.Context) TagPtrOutput

type TagState

type TagState struct {
	// Resources like Entry can have schemas associated with them. This scope allows users to attach tags to an
	// individual column based on that schema.
	// For attaching a tag to a nested column, use `.` to separate the column names. Example:
	// `outer_column.inner_column`
	Column pulumi.StringPtrInput
	// This maps the ID of a tag field to the value of and additional information about that field.
	// Valid field IDs are defined by the tag's template. A tag must have at least 1 field and at most 500 fields.
	// Structure is documented below.
	Fields TagFieldArrayInput
	// The resource name of the tag in URL format. Example:
	// projects/{project_id}/locations/{location}/entrygroups/{entryGroupId}/entries/{entryId}/tags/{tag_id} or
	// projects/{project_id}/locations/{location}/entrygroups/{entryGroupId}/tags/{tag_id} where tag_id is a system-generated
	// identifier. Note that this Tag may not actually be stored in the location in this name.
	Name pulumi.StringPtrInput
	// The name of the parent this tag is attached to. This can be the name of an entry or an entry group. If an entry group, the tag will be attached to
	// all entries in that group.
	Parent pulumi.StringPtrInput
	// The resource name of the tag template that this tag uses. Example:
	// projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}
	// This field cannot be modified after creation.
	Template pulumi.StringPtrInput
	// The display name of the tag template.
	TemplateDisplayname pulumi.StringPtrInput
}

func (TagState) ElementType

func (TagState) ElementType() reflect.Type

type TagTemplate

type TagTemplate struct {
	pulumi.CustomResourceState

	// The display name for this template.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Set of tag template field IDs and the settings for the field. This set is an exhaustive list of the allowed fields. This set must contain at least one field and at most 500 fields.
	// Structure is documented below.
	Fields TagTemplateFieldArrayOutput `pulumi:"fields"`
	// This confirms the deletion of any possible tags using this template. Must be set to true in order to delete the tag template.
	ForceDelete pulumi.BoolPtrOutput `pulumi:"forceDelete"`
	// -
	// The resource name of the tag template field in URL format. Example: projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}/fields/{field}
	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"`
	// Template location region.
	Region pulumi.StringOutput `pulumi:"region"`
	// The id of the tag template to create.
	TagTemplateId pulumi.StringOutput `pulumi:"tagTemplateId"`
}

A tag template defines a tag, which can have one or more typed fields. The template is used to create and attach the tag to GCP resources.

To get more information about TagTemplate, see:

* [API documentation](https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.tagTemplates) * How-to Guides

## Example Usage ### Data Catalog Tag Template Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewTagTemplate(ctx, "basicTagTemplate", &datacatalog.TagTemplateArgs{
			DisplayName: pulumi.String("Demo Tag Template"),
			Fields: datacatalog.TagTemplateFieldArray{
				&datacatalog.TagTemplateFieldArgs{
					DisplayName: pulumi.String("Source of data asset"),
					FieldId:     pulumi.String("source"),
					IsRequired:  pulumi.Bool(true),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						PrimitiveType: pulumi.String("STRING"),
					},
				},
				&datacatalog.TagTemplateFieldArgs{
					DisplayName: pulumi.String("Number of rows in the data asset"),
					FieldId:     pulumi.String("num_rows"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						PrimitiveType: pulumi.String("DOUBLE"),
					},
				},
				&datacatalog.TagTemplateFieldArgs{
					DisplayName: pulumi.String("PII type"),
					FieldId:     pulumi.String("pii_type"),
					Type: &datacatalog.TagTemplateFieldTypeArgs{
						EnumType: &datacatalog.TagTemplateFieldTypeEnumTypeArgs{
							AllowedValues: datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArray{
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("EMAIL"),
								},
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("SOCIAL SECURITY NUMBER"),
								},
								&datacatalog.TagTemplateFieldTypeEnumTypeAllowedValueArgs{
									DisplayName: pulumi.String("NONE"),
								},
							},
						},
					},
				},
			},
			ForceDelete:   pulumi.Bool(false),
			Region:        pulumi.String("us-central1"),
			TagTemplateId: pulumi.String("my_template"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

TagTemplate can be imported using any of these accepted formats

```sh

$ pulumi import gcp:datacatalog/tagTemplate:TagTemplate default {{name}}

```

func GetTagTemplate

func GetTagTemplate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TagTemplateState, opts ...pulumi.ResourceOption) (*TagTemplate, error)

GetTagTemplate gets an existing TagTemplate 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 NewTagTemplate

func NewTagTemplate(ctx *pulumi.Context,
	name string, args *TagTemplateArgs, opts ...pulumi.ResourceOption) (*TagTemplate, error)

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

func (*TagTemplate) ElementType added in v4.4.0

func (*TagTemplate) ElementType() reflect.Type

func (*TagTemplate) ToTagTemplateOutput added in v4.4.0

func (i *TagTemplate) ToTagTemplateOutput() TagTemplateOutput

func (*TagTemplate) ToTagTemplateOutputWithContext added in v4.4.0

func (i *TagTemplate) ToTagTemplateOutputWithContext(ctx context.Context) TagTemplateOutput

func (*TagTemplate) ToTagTemplatePtrOutput added in v4.11.1

func (i *TagTemplate) ToTagTemplatePtrOutput() TagTemplatePtrOutput

func (*TagTemplate) ToTagTemplatePtrOutputWithContext added in v4.11.1

func (i *TagTemplate) ToTagTemplatePtrOutputWithContext(ctx context.Context) TagTemplatePtrOutput

type TagTemplateArgs

type TagTemplateArgs struct {
	// The display name for this template.
	DisplayName pulumi.StringPtrInput
	// Set of tag template field IDs and the settings for the field. This set is an exhaustive list of the allowed fields. This set must contain at least one field and at most 500 fields.
	// Structure is documented below.
	Fields TagTemplateFieldArrayInput
	// This confirms the deletion of any possible tags using this template. Must be set to true in order to delete the tag template.
	ForceDelete pulumi.BoolPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Template location region.
	Region pulumi.StringPtrInput
	// The id of the tag template to create.
	TagTemplateId pulumi.StringInput
}

The set of arguments for constructing a TagTemplate resource.

func (TagTemplateArgs) ElementType

func (TagTemplateArgs) ElementType() reflect.Type

type TagTemplateArray added in v4.11.1

type TagTemplateArray []TagTemplateInput

func (TagTemplateArray) ElementType added in v4.11.1

func (TagTemplateArray) ElementType() reflect.Type

func (TagTemplateArray) ToTagTemplateArrayOutput added in v4.11.1

func (i TagTemplateArray) ToTagTemplateArrayOutput() TagTemplateArrayOutput

func (TagTemplateArray) ToTagTemplateArrayOutputWithContext added in v4.11.1

func (i TagTemplateArray) ToTagTemplateArrayOutputWithContext(ctx context.Context) TagTemplateArrayOutput

type TagTemplateArrayInput added in v4.11.1

type TagTemplateArrayInput interface {
	pulumi.Input

	ToTagTemplateArrayOutput() TagTemplateArrayOutput
	ToTagTemplateArrayOutputWithContext(context.Context) TagTemplateArrayOutput
}

TagTemplateArrayInput is an input type that accepts TagTemplateArray and TagTemplateArrayOutput values. You can construct a concrete instance of `TagTemplateArrayInput` via:

TagTemplateArray{ TagTemplateArgs{...} }

type TagTemplateArrayOutput added in v4.11.1

type TagTemplateArrayOutput struct{ *pulumi.OutputState }

func (TagTemplateArrayOutput) ElementType added in v4.11.1

func (TagTemplateArrayOutput) ElementType() reflect.Type

func (TagTemplateArrayOutput) Index added in v4.11.1

func (TagTemplateArrayOutput) ToTagTemplateArrayOutput added in v4.11.1

func (o TagTemplateArrayOutput) ToTagTemplateArrayOutput() TagTemplateArrayOutput

func (TagTemplateArrayOutput) ToTagTemplateArrayOutputWithContext added in v4.11.1

func (o TagTemplateArrayOutput) ToTagTemplateArrayOutputWithContext(ctx context.Context) TagTemplateArrayOutput

type TagTemplateField

type TagTemplateField struct {
	// A description for this field.
	Description *string `pulumi:"description"`
	// The display name for this template.
	DisplayName *string `pulumi:"displayName"`
	// The identifier for this object. Format specified above.
	FieldId string `pulumi:"fieldId"`
	// Whether this is a required field. Defaults to false.
	IsRequired *bool `pulumi:"isRequired"`
	// -
	// The resource name of the tag template field in URL format. Example: projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}/fields/{field}
	Name *string `pulumi:"name"`
	// The order of this field with respect to other fields in this tag template.
	// A higher value indicates a more important field. The value can be negative.
	// Multiple fields can have the same order, and field orders within a tag do not have to be sequential.
	Order *int `pulumi:"order"`
	// The type of value this tag field can contain.
	// Structure is documented below.
	Type TagTemplateFieldType `pulumi:"type"`
}

type TagTemplateFieldArgs

type TagTemplateFieldArgs struct {
	// A description for this field.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The display name for this template.
	DisplayName pulumi.StringPtrInput `pulumi:"displayName"`
	// The identifier for this object. Format specified above.
	FieldId pulumi.StringInput `pulumi:"fieldId"`
	// Whether this is a required field. Defaults to false.
	IsRequired pulumi.BoolPtrInput `pulumi:"isRequired"`
	// -
	// The resource name of the tag template field in URL format. Example: projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}/fields/{field}
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The order of this field with respect to other fields in this tag template.
	// A higher value indicates a more important field. The value can be negative.
	// Multiple fields can have the same order, and field orders within a tag do not have to be sequential.
	Order pulumi.IntPtrInput `pulumi:"order"`
	// The type of value this tag field can contain.
	// Structure is documented below.
	Type TagTemplateFieldTypeInput `pulumi:"type"`
}

func (TagTemplateFieldArgs) ElementType

func (TagTemplateFieldArgs) ElementType() reflect.Type

func (TagTemplateFieldArgs) ToTagTemplateFieldOutput

func (i TagTemplateFieldArgs) ToTagTemplateFieldOutput() TagTemplateFieldOutput

func (TagTemplateFieldArgs) ToTagTemplateFieldOutputWithContext

func (i TagTemplateFieldArgs) ToTagTemplateFieldOutputWithContext(ctx context.Context) TagTemplateFieldOutput

type TagTemplateFieldArray

type TagTemplateFieldArray []TagTemplateFieldInput

func (TagTemplateFieldArray) ElementType

func (TagTemplateFieldArray) ElementType() reflect.Type

func (TagTemplateFieldArray) ToTagTemplateFieldArrayOutput

func (i TagTemplateFieldArray) ToTagTemplateFieldArrayOutput() TagTemplateFieldArrayOutput

func (TagTemplateFieldArray) ToTagTemplateFieldArrayOutputWithContext

func (i TagTemplateFieldArray) ToTagTemplateFieldArrayOutputWithContext(ctx context.Context) TagTemplateFieldArrayOutput

type TagTemplateFieldArrayInput

type TagTemplateFieldArrayInput interface {
	pulumi.Input

	ToTagTemplateFieldArrayOutput() TagTemplateFieldArrayOutput
	ToTagTemplateFieldArrayOutputWithContext(context.Context) TagTemplateFieldArrayOutput
}

TagTemplateFieldArrayInput is an input type that accepts TagTemplateFieldArray and TagTemplateFieldArrayOutput values. You can construct a concrete instance of `TagTemplateFieldArrayInput` via:

TagTemplateFieldArray{ TagTemplateFieldArgs{...} }

type TagTemplateFieldArrayOutput

type TagTemplateFieldArrayOutput struct{ *pulumi.OutputState }

func (TagTemplateFieldArrayOutput) ElementType

func (TagTemplateFieldArrayOutput) Index

func (TagTemplateFieldArrayOutput) ToTagTemplateFieldArrayOutput

func (o TagTemplateFieldArrayOutput) ToTagTemplateFieldArrayOutput() TagTemplateFieldArrayOutput

func (TagTemplateFieldArrayOutput) ToTagTemplateFieldArrayOutputWithContext

func (o TagTemplateFieldArrayOutput) ToTagTemplateFieldArrayOutputWithContext(ctx context.Context) TagTemplateFieldArrayOutput

type TagTemplateFieldInput

type TagTemplateFieldInput interface {
	pulumi.Input

	ToTagTemplateFieldOutput() TagTemplateFieldOutput
	ToTagTemplateFieldOutputWithContext(context.Context) TagTemplateFieldOutput
}

TagTemplateFieldInput is an input type that accepts TagTemplateFieldArgs and TagTemplateFieldOutput values. You can construct a concrete instance of `TagTemplateFieldInput` via:

TagTemplateFieldArgs{...}

type TagTemplateFieldOutput

type TagTemplateFieldOutput struct{ *pulumi.OutputState }

func (TagTemplateFieldOutput) Description added in v4.21.0

A description for this field.

func (TagTemplateFieldOutput) DisplayName

The display name for this template.

func (TagTemplateFieldOutput) ElementType

func (TagTemplateFieldOutput) ElementType() reflect.Type

func (TagTemplateFieldOutput) FieldId

The identifier for this object. Format specified above.

func (TagTemplateFieldOutput) IsRequired

Whether this is a required field. Defaults to false.

func (TagTemplateFieldOutput) Name

- The resource name of the tag template field in URL format. Example: projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}/fields/{field}

func (TagTemplateFieldOutput) Order

The order of this field with respect to other fields in this tag template. A higher value indicates a more important field. The value can be negative. Multiple fields can have the same order, and field orders within a tag do not have to be sequential.

func (TagTemplateFieldOutput) ToTagTemplateFieldOutput

func (o TagTemplateFieldOutput) ToTagTemplateFieldOutput() TagTemplateFieldOutput

func (TagTemplateFieldOutput) ToTagTemplateFieldOutputWithContext

func (o TagTemplateFieldOutput) ToTagTemplateFieldOutputWithContext(ctx context.Context) TagTemplateFieldOutput

func (TagTemplateFieldOutput) Type

The type of value this tag field can contain. Structure is documented below.

type TagTemplateFieldType

type TagTemplateFieldType struct {
	// Represents an enum type.
	// Exactly one of `primitiveType` or `enumType` must be set
	// Structure is documented below.
	EnumType *TagTemplateFieldTypeEnumType `pulumi:"enumType"`
	// Represents primitive types - string, bool etc.
	// Exactly one of `primitiveType` or `enumType` must be set
	// Possible values are `DOUBLE`, `STRING`, `BOOL`, and `TIMESTAMP`.
	PrimitiveType *string `pulumi:"primitiveType"`
}

type TagTemplateFieldTypeArgs

type TagTemplateFieldTypeArgs struct {
	// Represents an enum type.
	// Exactly one of `primitiveType` or `enumType` must be set
	// Structure is documented below.
	EnumType TagTemplateFieldTypeEnumTypePtrInput `pulumi:"enumType"`
	// Represents primitive types - string, bool etc.
	// Exactly one of `primitiveType` or `enumType` must be set
	// Possible values are `DOUBLE`, `STRING`, `BOOL`, and `TIMESTAMP`.
	PrimitiveType pulumi.StringPtrInput `pulumi:"primitiveType"`
}

func (TagTemplateFieldTypeArgs) ElementType

func (TagTemplateFieldTypeArgs) ElementType() reflect.Type

func (TagTemplateFieldTypeArgs) ToTagTemplateFieldTypeOutput

func (i TagTemplateFieldTypeArgs) ToTagTemplateFieldTypeOutput() TagTemplateFieldTypeOutput

func (TagTemplateFieldTypeArgs) ToTagTemplateFieldTypeOutputWithContext

func (i TagTemplateFieldTypeArgs) ToTagTemplateFieldTypeOutputWithContext(ctx context.Context) TagTemplateFieldTypeOutput

type TagTemplateFieldTypeEnumType

type TagTemplateFieldTypeEnumType struct {
	// The set of allowed values for this enum. The display names of the
	// values must be case-insensitively unique within this set. Currently,
	// enum values can only be added to the list of allowed values. Deletion
	// and renaming of enum values are not supported.
	// Can have up to 500 allowed values.
	// Structure is documented below.
	AllowedValues []TagTemplateFieldTypeEnumTypeAllowedValue `pulumi:"allowedValues"`
}

type TagTemplateFieldTypeEnumTypeAllowedValue

type TagTemplateFieldTypeEnumTypeAllowedValue struct {
	// The display name for this template.
	DisplayName string `pulumi:"displayName"`
}

type TagTemplateFieldTypeEnumTypeAllowedValueArgs

type TagTemplateFieldTypeEnumTypeAllowedValueArgs struct {
	// The display name for this template.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
}

func (TagTemplateFieldTypeEnumTypeAllowedValueArgs) ElementType

func (TagTemplateFieldTypeEnumTypeAllowedValueArgs) ToTagTemplateFieldTypeEnumTypeAllowedValueOutput

func (i TagTemplateFieldTypeEnumTypeAllowedValueArgs) ToTagTemplateFieldTypeEnumTypeAllowedValueOutput() TagTemplateFieldTypeEnumTypeAllowedValueOutput

func (TagTemplateFieldTypeEnumTypeAllowedValueArgs) ToTagTemplateFieldTypeEnumTypeAllowedValueOutputWithContext

func (i TagTemplateFieldTypeEnumTypeAllowedValueArgs) ToTagTemplateFieldTypeEnumTypeAllowedValueOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypeAllowedValueOutput

type TagTemplateFieldTypeEnumTypeAllowedValueArray

type TagTemplateFieldTypeEnumTypeAllowedValueArray []TagTemplateFieldTypeEnumTypeAllowedValueInput

func (TagTemplateFieldTypeEnumTypeAllowedValueArray) ElementType

func (TagTemplateFieldTypeEnumTypeAllowedValueArray) ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutput

func (i TagTemplateFieldTypeEnumTypeAllowedValueArray) ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutput() TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput

func (TagTemplateFieldTypeEnumTypeAllowedValueArray) ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutputWithContext

func (i TagTemplateFieldTypeEnumTypeAllowedValueArray) ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput

type TagTemplateFieldTypeEnumTypeAllowedValueArrayInput

type TagTemplateFieldTypeEnumTypeAllowedValueArrayInput interface {
	pulumi.Input

	ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutput() TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput
	ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutputWithContext(context.Context) TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput
}

TagTemplateFieldTypeEnumTypeAllowedValueArrayInput is an input type that accepts TagTemplateFieldTypeEnumTypeAllowedValueArray and TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput values. You can construct a concrete instance of `TagTemplateFieldTypeEnumTypeAllowedValueArrayInput` via:

TagTemplateFieldTypeEnumTypeAllowedValueArray{ TagTemplateFieldTypeEnumTypeAllowedValueArgs{...} }

type TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput

type TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput struct{ *pulumi.OutputState }

func (TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput) ElementType

func (TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput) Index

func (TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput) ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutput

func (o TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput) ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutput() TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput

func (TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput) ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutputWithContext

func (o TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput) ToTagTemplateFieldTypeEnumTypeAllowedValueArrayOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypeAllowedValueArrayOutput

type TagTemplateFieldTypeEnumTypeAllowedValueInput

type TagTemplateFieldTypeEnumTypeAllowedValueInput interface {
	pulumi.Input

	ToTagTemplateFieldTypeEnumTypeAllowedValueOutput() TagTemplateFieldTypeEnumTypeAllowedValueOutput
	ToTagTemplateFieldTypeEnumTypeAllowedValueOutputWithContext(context.Context) TagTemplateFieldTypeEnumTypeAllowedValueOutput
}

TagTemplateFieldTypeEnumTypeAllowedValueInput is an input type that accepts TagTemplateFieldTypeEnumTypeAllowedValueArgs and TagTemplateFieldTypeEnumTypeAllowedValueOutput values. You can construct a concrete instance of `TagTemplateFieldTypeEnumTypeAllowedValueInput` via:

TagTemplateFieldTypeEnumTypeAllowedValueArgs{...}

type TagTemplateFieldTypeEnumTypeAllowedValueOutput

type TagTemplateFieldTypeEnumTypeAllowedValueOutput struct{ *pulumi.OutputState }

func (TagTemplateFieldTypeEnumTypeAllowedValueOutput) DisplayName

The display name for this template.

func (TagTemplateFieldTypeEnumTypeAllowedValueOutput) ElementType

func (TagTemplateFieldTypeEnumTypeAllowedValueOutput) ToTagTemplateFieldTypeEnumTypeAllowedValueOutput

func (o TagTemplateFieldTypeEnumTypeAllowedValueOutput) ToTagTemplateFieldTypeEnumTypeAllowedValueOutput() TagTemplateFieldTypeEnumTypeAllowedValueOutput

func (TagTemplateFieldTypeEnumTypeAllowedValueOutput) ToTagTemplateFieldTypeEnumTypeAllowedValueOutputWithContext

func (o TagTemplateFieldTypeEnumTypeAllowedValueOutput) ToTagTemplateFieldTypeEnumTypeAllowedValueOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypeAllowedValueOutput

type TagTemplateFieldTypeEnumTypeArgs

type TagTemplateFieldTypeEnumTypeArgs struct {
	// The set of allowed values for this enum. The display names of the
	// values must be case-insensitively unique within this set. Currently,
	// enum values can only be added to the list of allowed values. Deletion
	// and renaming of enum values are not supported.
	// Can have up to 500 allowed values.
	// Structure is documented below.
	AllowedValues TagTemplateFieldTypeEnumTypeAllowedValueArrayInput `pulumi:"allowedValues"`
}

func (TagTemplateFieldTypeEnumTypeArgs) ElementType

func (TagTemplateFieldTypeEnumTypeArgs) ToTagTemplateFieldTypeEnumTypeOutput

func (i TagTemplateFieldTypeEnumTypeArgs) ToTagTemplateFieldTypeEnumTypeOutput() TagTemplateFieldTypeEnumTypeOutput

func (TagTemplateFieldTypeEnumTypeArgs) ToTagTemplateFieldTypeEnumTypeOutputWithContext

func (i TagTemplateFieldTypeEnumTypeArgs) ToTagTemplateFieldTypeEnumTypeOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypeOutput

func (TagTemplateFieldTypeEnumTypeArgs) ToTagTemplateFieldTypeEnumTypePtrOutput

func (i TagTemplateFieldTypeEnumTypeArgs) ToTagTemplateFieldTypeEnumTypePtrOutput() TagTemplateFieldTypeEnumTypePtrOutput

func (TagTemplateFieldTypeEnumTypeArgs) ToTagTemplateFieldTypeEnumTypePtrOutputWithContext

func (i TagTemplateFieldTypeEnumTypeArgs) ToTagTemplateFieldTypeEnumTypePtrOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypePtrOutput

type TagTemplateFieldTypeEnumTypeInput

type TagTemplateFieldTypeEnumTypeInput interface {
	pulumi.Input

	ToTagTemplateFieldTypeEnumTypeOutput() TagTemplateFieldTypeEnumTypeOutput
	ToTagTemplateFieldTypeEnumTypeOutputWithContext(context.Context) TagTemplateFieldTypeEnumTypeOutput
}

TagTemplateFieldTypeEnumTypeInput is an input type that accepts TagTemplateFieldTypeEnumTypeArgs and TagTemplateFieldTypeEnumTypeOutput values. You can construct a concrete instance of `TagTemplateFieldTypeEnumTypeInput` via:

TagTemplateFieldTypeEnumTypeArgs{...}

type TagTemplateFieldTypeEnumTypeOutput

type TagTemplateFieldTypeEnumTypeOutput struct{ *pulumi.OutputState }

func (TagTemplateFieldTypeEnumTypeOutput) AllowedValues

The set of allowed values for this enum. The display names of the values must be case-insensitively unique within this set. Currently, enum values can only be added to the list of allowed values. Deletion and renaming of enum values are not supported. Can have up to 500 allowed values. Structure is documented below.

func (TagTemplateFieldTypeEnumTypeOutput) ElementType

func (TagTemplateFieldTypeEnumTypeOutput) ToTagTemplateFieldTypeEnumTypeOutput

func (o TagTemplateFieldTypeEnumTypeOutput) ToTagTemplateFieldTypeEnumTypeOutput() TagTemplateFieldTypeEnumTypeOutput

func (TagTemplateFieldTypeEnumTypeOutput) ToTagTemplateFieldTypeEnumTypeOutputWithContext

func (o TagTemplateFieldTypeEnumTypeOutput) ToTagTemplateFieldTypeEnumTypeOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypeOutput

func (TagTemplateFieldTypeEnumTypeOutput) ToTagTemplateFieldTypeEnumTypePtrOutput

func (o TagTemplateFieldTypeEnumTypeOutput) ToTagTemplateFieldTypeEnumTypePtrOutput() TagTemplateFieldTypeEnumTypePtrOutput

func (TagTemplateFieldTypeEnumTypeOutput) ToTagTemplateFieldTypeEnumTypePtrOutputWithContext

func (o TagTemplateFieldTypeEnumTypeOutput) ToTagTemplateFieldTypeEnumTypePtrOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypePtrOutput

type TagTemplateFieldTypeEnumTypePtrInput

type TagTemplateFieldTypeEnumTypePtrInput interface {
	pulumi.Input

	ToTagTemplateFieldTypeEnumTypePtrOutput() TagTemplateFieldTypeEnumTypePtrOutput
	ToTagTemplateFieldTypeEnumTypePtrOutputWithContext(context.Context) TagTemplateFieldTypeEnumTypePtrOutput
}

TagTemplateFieldTypeEnumTypePtrInput is an input type that accepts TagTemplateFieldTypeEnumTypeArgs, TagTemplateFieldTypeEnumTypePtr and TagTemplateFieldTypeEnumTypePtrOutput values. You can construct a concrete instance of `TagTemplateFieldTypeEnumTypePtrInput` via:

        TagTemplateFieldTypeEnumTypeArgs{...}

or:

        nil

type TagTemplateFieldTypeEnumTypePtrOutput

type TagTemplateFieldTypeEnumTypePtrOutput struct{ *pulumi.OutputState }

func (TagTemplateFieldTypeEnumTypePtrOutput) AllowedValues

The set of allowed values for this enum. The display names of the values must be case-insensitively unique within this set. Currently, enum values can only be added to the list of allowed values. Deletion and renaming of enum values are not supported. Can have up to 500 allowed values. Structure is documented below.

func (TagTemplateFieldTypeEnumTypePtrOutput) Elem

func (TagTemplateFieldTypeEnumTypePtrOutput) ElementType

func (TagTemplateFieldTypeEnumTypePtrOutput) ToTagTemplateFieldTypeEnumTypePtrOutput

func (o TagTemplateFieldTypeEnumTypePtrOutput) ToTagTemplateFieldTypeEnumTypePtrOutput() TagTemplateFieldTypeEnumTypePtrOutput

func (TagTemplateFieldTypeEnumTypePtrOutput) ToTagTemplateFieldTypeEnumTypePtrOutputWithContext

func (o TagTemplateFieldTypeEnumTypePtrOutput) ToTagTemplateFieldTypeEnumTypePtrOutputWithContext(ctx context.Context) TagTemplateFieldTypeEnumTypePtrOutput

type TagTemplateFieldTypeInput

type TagTemplateFieldTypeInput interface {
	pulumi.Input

	ToTagTemplateFieldTypeOutput() TagTemplateFieldTypeOutput
	ToTagTemplateFieldTypeOutputWithContext(context.Context) TagTemplateFieldTypeOutput
}

TagTemplateFieldTypeInput is an input type that accepts TagTemplateFieldTypeArgs and TagTemplateFieldTypeOutput values. You can construct a concrete instance of `TagTemplateFieldTypeInput` via:

TagTemplateFieldTypeArgs{...}

type TagTemplateFieldTypeOutput

type TagTemplateFieldTypeOutput struct{ *pulumi.OutputState }

func (TagTemplateFieldTypeOutput) ElementType

func (TagTemplateFieldTypeOutput) ElementType() reflect.Type

func (TagTemplateFieldTypeOutput) EnumType

Represents an enum type. Exactly one of `primitiveType` or `enumType` must be set Structure is documented below.

func (TagTemplateFieldTypeOutput) PrimitiveType

Represents primitive types - string, bool etc. Exactly one of `primitiveType` or `enumType` must be set Possible values are `DOUBLE`, `STRING`, `BOOL`, and `TIMESTAMP`.

func (TagTemplateFieldTypeOutput) ToTagTemplateFieldTypeOutput

func (o TagTemplateFieldTypeOutput) ToTagTemplateFieldTypeOutput() TagTemplateFieldTypeOutput

func (TagTemplateFieldTypeOutput) ToTagTemplateFieldTypeOutputWithContext

func (o TagTemplateFieldTypeOutput) ToTagTemplateFieldTypeOutputWithContext(ctx context.Context) TagTemplateFieldTypeOutput

type TagTemplateIamBinding added in v4.18.0

type TagTemplateIamBinding struct {
	pulumi.CustomResourceState

	Condition   TagTemplateIamBindingConditionPtrOutput `pulumi:"condition"`
	Etag        pulumi.StringOutput                     `pulumi:"etag"`
	Members     pulumi.StringArrayOutput                `pulumi:"members"`
	Project     pulumi.StringOutput                     `pulumi:"project"`
	Region      pulumi.StringOutput                     `pulumi:"region"`
	Role        pulumi.StringOutput                     `pulumi:"role"`
	TagTemplate pulumi.StringOutput                     `pulumi:"tagTemplate"`
}

func GetTagTemplateIamBinding added in v4.18.0

func GetTagTemplateIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TagTemplateIamBindingState, opts ...pulumi.ResourceOption) (*TagTemplateIamBinding, error)

GetTagTemplateIamBinding gets an existing TagTemplateIamBinding 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 NewTagTemplateIamBinding added in v4.18.0

func NewTagTemplateIamBinding(ctx *pulumi.Context,
	name string, args *TagTemplateIamBindingArgs, opts ...pulumi.ResourceOption) (*TagTemplateIamBinding, error)

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

func (*TagTemplateIamBinding) ElementType added in v4.18.0

func (*TagTemplateIamBinding) ElementType() reflect.Type

func (*TagTemplateIamBinding) ToTagTemplateIamBindingOutput added in v4.18.0

func (i *TagTemplateIamBinding) ToTagTemplateIamBindingOutput() TagTemplateIamBindingOutput

func (*TagTemplateIamBinding) ToTagTemplateIamBindingOutputWithContext added in v4.18.0

func (i *TagTemplateIamBinding) ToTagTemplateIamBindingOutputWithContext(ctx context.Context) TagTemplateIamBindingOutput

func (*TagTemplateIamBinding) ToTagTemplateIamBindingPtrOutput added in v4.18.0

func (i *TagTemplateIamBinding) ToTagTemplateIamBindingPtrOutput() TagTemplateIamBindingPtrOutput

func (*TagTemplateIamBinding) ToTagTemplateIamBindingPtrOutputWithContext added in v4.18.0

func (i *TagTemplateIamBinding) ToTagTemplateIamBindingPtrOutputWithContext(ctx context.Context) TagTemplateIamBindingPtrOutput

type TagTemplateIamBindingArgs added in v4.18.0

type TagTemplateIamBindingArgs struct {
	Condition   TagTemplateIamBindingConditionPtrInput
	Members     pulumi.StringArrayInput
	Project     pulumi.StringPtrInput
	Region      pulumi.StringPtrInput
	Role        pulumi.StringInput
	TagTemplate pulumi.StringInput
}

The set of arguments for constructing a TagTemplateIamBinding resource.

func (TagTemplateIamBindingArgs) ElementType added in v4.18.0

func (TagTemplateIamBindingArgs) ElementType() reflect.Type

type TagTemplateIamBindingArray added in v4.18.0

type TagTemplateIamBindingArray []TagTemplateIamBindingInput

func (TagTemplateIamBindingArray) ElementType added in v4.18.0

func (TagTemplateIamBindingArray) ElementType() reflect.Type

func (TagTemplateIamBindingArray) ToTagTemplateIamBindingArrayOutput added in v4.18.0

func (i TagTemplateIamBindingArray) ToTagTemplateIamBindingArrayOutput() TagTemplateIamBindingArrayOutput

func (TagTemplateIamBindingArray) ToTagTemplateIamBindingArrayOutputWithContext added in v4.18.0

func (i TagTemplateIamBindingArray) ToTagTemplateIamBindingArrayOutputWithContext(ctx context.Context) TagTemplateIamBindingArrayOutput

type TagTemplateIamBindingArrayInput added in v4.18.0

type TagTemplateIamBindingArrayInput interface {
	pulumi.Input

	ToTagTemplateIamBindingArrayOutput() TagTemplateIamBindingArrayOutput
	ToTagTemplateIamBindingArrayOutputWithContext(context.Context) TagTemplateIamBindingArrayOutput
}

TagTemplateIamBindingArrayInput is an input type that accepts TagTemplateIamBindingArray and TagTemplateIamBindingArrayOutput values. You can construct a concrete instance of `TagTemplateIamBindingArrayInput` via:

TagTemplateIamBindingArray{ TagTemplateIamBindingArgs{...} }

type TagTemplateIamBindingArrayOutput added in v4.18.0

type TagTemplateIamBindingArrayOutput struct{ *pulumi.OutputState }

func (TagTemplateIamBindingArrayOutput) ElementType added in v4.18.0

func (TagTemplateIamBindingArrayOutput) Index added in v4.18.0

func (TagTemplateIamBindingArrayOutput) ToTagTemplateIamBindingArrayOutput added in v4.18.0

func (o TagTemplateIamBindingArrayOutput) ToTagTemplateIamBindingArrayOutput() TagTemplateIamBindingArrayOutput

func (TagTemplateIamBindingArrayOutput) ToTagTemplateIamBindingArrayOutputWithContext added in v4.18.0

func (o TagTemplateIamBindingArrayOutput) ToTagTemplateIamBindingArrayOutputWithContext(ctx context.Context) TagTemplateIamBindingArrayOutput

type TagTemplateIamBindingCondition added in v4.18.0

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

type TagTemplateIamBindingConditionArgs added in v4.18.0

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

func (TagTemplateIamBindingConditionArgs) ElementType added in v4.18.0

func (TagTemplateIamBindingConditionArgs) ToTagTemplateIamBindingConditionOutput added in v4.18.0

func (i TagTemplateIamBindingConditionArgs) ToTagTemplateIamBindingConditionOutput() TagTemplateIamBindingConditionOutput

func (TagTemplateIamBindingConditionArgs) ToTagTemplateIamBindingConditionOutputWithContext added in v4.18.0

func (i TagTemplateIamBindingConditionArgs) ToTagTemplateIamBindingConditionOutputWithContext(ctx context.Context) TagTemplateIamBindingConditionOutput

func (TagTemplateIamBindingConditionArgs) ToTagTemplateIamBindingConditionPtrOutput added in v4.18.0

func (i TagTemplateIamBindingConditionArgs) ToTagTemplateIamBindingConditionPtrOutput() TagTemplateIamBindingConditionPtrOutput

func (TagTemplateIamBindingConditionArgs) ToTagTemplateIamBindingConditionPtrOutputWithContext added in v4.18.0

func (i TagTemplateIamBindingConditionArgs) ToTagTemplateIamBindingConditionPtrOutputWithContext(ctx context.Context) TagTemplateIamBindingConditionPtrOutput

type TagTemplateIamBindingConditionInput added in v4.18.0

type TagTemplateIamBindingConditionInput interface {
	pulumi.Input

	ToTagTemplateIamBindingConditionOutput() TagTemplateIamBindingConditionOutput
	ToTagTemplateIamBindingConditionOutputWithContext(context.Context) TagTemplateIamBindingConditionOutput
}

TagTemplateIamBindingConditionInput is an input type that accepts TagTemplateIamBindingConditionArgs and TagTemplateIamBindingConditionOutput values. You can construct a concrete instance of `TagTemplateIamBindingConditionInput` via:

TagTemplateIamBindingConditionArgs{...}

type TagTemplateIamBindingConditionOutput added in v4.18.0

type TagTemplateIamBindingConditionOutput struct{ *pulumi.OutputState }

func (TagTemplateIamBindingConditionOutput) Description added in v4.18.0

func (TagTemplateIamBindingConditionOutput) ElementType added in v4.18.0

func (TagTemplateIamBindingConditionOutput) Expression added in v4.18.0

func (TagTemplateIamBindingConditionOutput) Title added in v4.18.0

func (TagTemplateIamBindingConditionOutput) ToTagTemplateIamBindingConditionOutput added in v4.18.0

func (o TagTemplateIamBindingConditionOutput) ToTagTemplateIamBindingConditionOutput() TagTemplateIamBindingConditionOutput

func (TagTemplateIamBindingConditionOutput) ToTagTemplateIamBindingConditionOutputWithContext added in v4.18.0

func (o TagTemplateIamBindingConditionOutput) ToTagTemplateIamBindingConditionOutputWithContext(ctx context.Context) TagTemplateIamBindingConditionOutput

func (TagTemplateIamBindingConditionOutput) ToTagTemplateIamBindingConditionPtrOutput added in v4.18.0

func (o TagTemplateIamBindingConditionOutput) ToTagTemplateIamBindingConditionPtrOutput() TagTemplateIamBindingConditionPtrOutput

func (TagTemplateIamBindingConditionOutput) ToTagTemplateIamBindingConditionPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamBindingConditionOutput) ToTagTemplateIamBindingConditionPtrOutputWithContext(ctx context.Context) TagTemplateIamBindingConditionPtrOutput

type TagTemplateIamBindingConditionPtrInput added in v4.18.0

type TagTemplateIamBindingConditionPtrInput interface {
	pulumi.Input

	ToTagTemplateIamBindingConditionPtrOutput() TagTemplateIamBindingConditionPtrOutput
	ToTagTemplateIamBindingConditionPtrOutputWithContext(context.Context) TagTemplateIamBindingConditionPtrOutput
}

TagTemplateIamBindingConditionPtrInput is an input type that accepts TagTemplateIamBindingConditionArgs, TagTemplateIamBindingConditionPtr and TagTemplateIamBindingConditionPtrOutput values. You can construct a concrete instance of `TagTemplateIamBindingConditionPtrInput` via:

        TagTemplateIamBindingConditionArgs{...}

or:

        nil

type TagTemplateIamBindingConditionPtrOutput added in v4.18.0

type TagTemplateIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (TagTemplateIamBindingConditionPtrOutput) Description added in v4.18.0

func (TagTemplateIamBindingConditionPtrOutput) Elem added in v4.18.0

func (TagTemplateIamBindingConditionPtrOutput) ElementType added in v4.18.0

func (TagTemplateIamBindingConditionPtrOutput) Expression added in v4.18.0

func (TagTemplateIamBindingConditionPtrOutput) Title added in v4.18.0

func (TagTemplateIamBindingConditionPtrOutput) ToTagTemplateIamBindingConditionPtrOutput added in v4.18.0

func (o TagTemplateIamBindingConditionPtrOutput) ToTagTemplateIamBindingConditionPtrOutput() TagTemplateIamBindingConditionPtrOutput

func (TagTemplateIamBindingConditionPtrOutput) ToTagTemplateIamBindingConditionPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamBindingConditionPtrOutput) ToTagTemplateIamBindingConditionPtrOutputWithContext(ctx context.Context) TagTemplateIamBindingConditionPtrOutput

type TagTemplateIamBindingInput added in v4.18.0

type TagTemplateIamBindingInput interface {
	pulumi.Input

	ToTagTemplateIamBindingOutput() TagTemplateIamBindingOutput
	ToTagTemplateIamBindingOutputWithContext(ctx context.Context) TagTemplateIamBindingOutput
}

type TagTemplateIamBindingMap added in v4.18.0

type TagTemplateIamBindingMap map[string]TagTemplateIamBindingInput

func (TagTemplateIamBindingMap) ElementType added in v4.18.0

func (TagTemplateIamBindingMap) ElementType() reflect.Type

func (TagTemplateIamBindingMap) ToTagTemplateIamBindingMapOutput added in v4.18.0

func (i TagTemplateIamBindingMap) ToTagTemplateIamBindingMapOutput() TagTemplateIamBindingMapOutput

func (TagTemplateIamBindingMap) ToTagTemplateIamBindingMapOutputWithContext added in v4.18.0

func (i TagTemplateIamBindingMap) ToTagTemplateIamBindingMapOutputWithContext(ctx context.Context) TagTemplateIamBindingMapOutput

type TagTemplateIamBindingMapInput added in v4.18.0

type TagTemplateIamBindingMapInput interface {
	pulumi.Input

	ToTagTemplateIamBindingMapOutput() TagTemplateIamBindingMapOutput
	ToTagTemplateIamBindingMapOutputWithContext(context.Context) TagTemplateIamBindingMapOutput
}

TagTemplateIamBindingMapInput is an input type that accepts TagTemplateIamBindingMap and TagTemplateIamBindingMapOutput values. You can construct a concrete instance of `TagTemplateIamBindingMapInput` via:

TagTemplateIamBindingMap{ "key": TagTemplateIamBindingArgs{...} }

type TagTemplateIamBindingMapOutput added in v4.18.0

type TagTemplateIamBindingMapOutput struct{ *pulumi.OutputState }

func (TagTemplateIamBindingMapOutput) ElementType added in v4.18.0

func (TagTemplateIamBindingMapOutput) MapIndex added in v4.18.0

func (TagTemplateIamBindingMapOutput) ToTagTemplateIamBindingMapOutput added in v4.18.0

func (o TagTemplateIamBindingMapOutput) ToTagTemplateIamBindingMapOutput() TagTemplateIamBindingMapOutput

func (TagTemplateIamBindingMapOutput) ToTagTemplateIamBindingMapOutputWithContext added in v4.18.0

func (o TagTemplateIamBindingMapOutput) ToTagTemplateIamBindingMapOutputWithContext(ctx context.Context) TagTemplateIamBindingMapOutput

type TagTemplateIamBindingOutput added in v4.18.0

type TagTemplateIamBindingOutput struct {
	*pulumi.OutputState
}

func (TagTemplateIamBindingOutput) ElementType added in v4.18.0

func (TagTemplateIamBindingOutput) ToTagTemplateIamBindingOutput added in v4.18.0

func (o TagTemplateIamBindingOutput) ToTagTemplateIamBindingOutput() TagTemplateIamBindingOutput

func (TagTemplateIamBindingOutput) ToTagTemplateIamBindingOutputWithContext added in v4.18.0

func (o TagTemplateIamBindingOutput) ToTagTemplateIamBindingOutputWithContext(ctx context.Context) TagTemplateIamBindingOutput

func (TagTemplateIamBindingOutput) ToTagTemplateIamBindingPtrOutput added in v4.18.0

func (o TagTemplateIamBindingOutput) ToTagTemplateIamBindingPtrOutput() TagTemplateIamBindingPtrOutput

func (TagTemplateIamBindingOutput) ToTagTemplateIamBindingPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamBindingOutput) ToTagTemplateIamBindingPtrOutputWithContext(ctx context.Context) TagTemplateIamBindingPtrOutput

type TagTemplateIamBindingPtrInput added in v4.18.0

type TagTemplateIamBindingPtrInput interface {
	pulumi.Input

	ToTagTemplateIamBindingPtrOutput() TagTemplateIamBindingPtrOutput
	ToTagTemplateIamBindingPtrOutputWithContext(ctx context.Context) TagTemplateIamBindingPtrOutput
}

type TagTemplateIamBindingPtrOutput added in v4.18.0

type TagTemplateIamBindingPtrOutput struct {
	*pulumi.OutputState
}

func (TagTemplateIamBindingPtrOutput) ElementType added in v4.18.0

func (TagTemplateIamBindingPtrOutput) ToTagTemplateIamBindingPtrOutput added in v4.18.0

func (o TagTemplateIamBindingPtrOutput) ToTagTemplateIamBindingPtrOutput() TagTemplateIamBindingPtrOutput

func (TagTemplateIamBindingPtrOutput) ToTagTemplateIamBindingPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamBindingPtrOutput) ToTagTemplateIamBindingPtrOutputWithContext(ctx context.Context) TagTemplateIamBindingPtrOutput

type TagTemplateIamBindingState added in v4.18.0

type TagTemplateIamBindingState struct {
	Condition   TagTemplateIamBindingConditionPtrInput
	Etag        pulumi.StringPtrInput
	Members     pulumi.StringArrayInput
	Project     pulumi.StringPtrInput
	Region      pulumi.StringPtrInput
	Role        pulumi.StringPtrInput
	TagTemplate pulumi.StringPtrInput
}

func (TagTemplateIamBindingState) ElementType added in v4.18.0

func (TagTemplateIamBindingState) ElementType() reflect.Type

type TagTemplateIamMember added in v4.18.0

type TagTemplateIamMember struct {
	pulumi.CustomResourceState

	Condition   TagTemplateIamMemberConditionPtrOutput `pulumi:"condition"`
	Etag        pulumi.StringOutput                    `pulumi:"etag"`
	Member      pulumi.StringOutput                    `pulumi:"member"`
	Project     pulumi.StringOutput                    `pulumi:"project"`
	Region      pulumi.StringOutput                    `pulumi:"region"`
	Role        pulumi.StringOutput                    `pulumi:"role"`
	TagTemplate pulumi.StringOutput                    `pulumi:"tagTemplate"`
}

func GetTagTemplateIamMember added in v4.18.0

func GetTagTemplateIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TagTemplateIamMemberState, opts ...pulumi.ResourceOption) (*TagTemplateIamMember, error)

GetTagTemplateIamMember gets an existing TagTemplateIamMember 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 NewTagTemplateIamMember added in v4.18.0

func NewTagTemplateIamMember(ctx *pulumi.Context,
	name string, args *TagTemplateIamMemberArgs, opts ...pulumi.ResourceOption) (*TagTemplateIamMember, error)

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

func (*TagTemplateIamMember) ElementType added in v4.18.0

func (*TagTemplateIamMember) ElementType() reflect.Type

func (*TagTemplateIamMember) ToTagTemplateIamMemberOutput added in v4.18.0

func (i *TagTemplateIamMember) ToTagTemplateIamMemberOutput() TagTemplateIamMemberOutput

func (*TagTemplateIamMember) ToTagTemplateIamMemberOutputWithContext added in v4.18.0

func (i *TagTemplateIamMember) ToTagTemplateIamMemberOutputWithContext(ctx context.Context) TagTemplateIamMemberOutput

func (*TagTemplateIamMember) ToTagTemplateIamMemberPtrOutput added in v4.18.0

func (i *TagTemplateIamMember) ToTagTemplateIamMemberPtrOutput() TagTemplateIamMemberPtrOutput

func (*TagTemplateIamMember) ToTagTemplateIamMemberPtrOutputWithContext added in v4.18.0

func (i *TagTemplateIamMember) ToTagTemplateIamMemberPtrOutputWithContext(ctx context.Context) TagTemplateIamMemberPtrOutput

type TagTemplateIamMemberArgs added in v4.18.0

type TagTemplateIamMemberArgs struct {
	Condition   TagTemplateIamMemberConditionPtrInput
	Member      pulumi.StringInput
	Project     pulumi.StringPtrInput
	Region      pulumi.StringPtrInput
	Role        pulumi.StringInput
	TagTemplate pulumi.StringInput
}

The set of arguments for constructing a TagTemplateIamMember resource.

func (TagTemplateIamMemberArgs) ElementType added in v4.18.0

func (TagTemplateIamMemberArgs) ElementType() reflect.Type

type TagTemplateIamMemberArray added in v4.18.0

type TagTemplateIamMemberArray []TagTemplateIamMemberInput

func (TagTemplateIamMemberArray) ElementType added in v4.18.0

func (TagTemplateIamMemberArray) ElementType() reflect.Type

func (TagTemplateIamMemberArray) ToTagTemplateIamMemberArrayOutput added in v4.18.0

func (i TagTemplateIamMemberArray) ToTagTemplateIamMemberArrayOutput() TagTemplateIamMemberArrayOutput

func (TagTemplateIamMemberArray) ToTagTemplateIamMemberArrayOutputWithContext added in v4.18.0

func (i TagTemplateIamMemberArray) ToTagTemplateIamMemberArrayOutputWithContext(ctx context.Context) TagTemplateIamMemberArrayOutput

type TagTemplateIamMemberArrayInput added in v4.18.0

type TagTemplateIamMemberArrayInput interface {
	pulumi.Input

	ToTagTemplateIamMemberArrayOutput() TagTemplateIamMemberArrayOutput
	ToTagTemplateIamMemberArrayOutputWithContext(context.Context) TagTemplateIamMemberArrayOutput
}

TagTemplateIamMemberArrayInput is an input type that accepts TagTemplateIamMemberArray and TagTemplateIamMemberArrayOutput values. You can construct a concrete instance of `TagTemplateIamMemberArrayInput` via:

TagTemplateIamMemberArray{ TagTemplateIamMemberArgs{...} }

type TagTemplateIamMemberArrayOutput added in v4.18.0

type TagTemplateIamMemberArrayOutput struct{ *pulumi.OutputState }

func (TagTemplateIamMemberArrayOutput) ElementType added in v4.18.0

func (TagTemplateIamMemberArrayOutput) Index added in v4.18.0

func (TagTemplateIamMemberArrayOutput) ToTagTemplateIamMemberArrayOutput added in v4.18.0

func (o TagTemplateIamMemberArrayOutput) ToTagTemplateIamMemberArrayOutput() TagTemplateIamMemberArrayOutput

func (TagTemplateIamMemberArrayOutput) ToTagTemplateIamMemberArrayOutputWithContext added in v4.18.0

func (o TagTemplateIamMemberArrayOutput) ToTagTemplateIamMemberArrayOutputWithContext(ctx context.Context) TagTemplateIamMemberArrayOutput

type TagTemplateIamMemberCondition added in v4.18.0

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

type TagTemplateIamMemberConditionArgs added in v4.18.0

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

func (TagTemplateIamMemberConditionArgs) ElementType added in v4.18.0

func (TagTemplateIamMemberConditionArgs) ToTagTemplateIamMemberConditionOutput added in v4.18.0

func (i TagTemplateIamMemberConditionArgs) ToTagTemplateIamMemberConditionOutput() TagTemplateIamMemberConditionOutput

func (TagTemplateIamMemberConditionArgs) ToTagTemplateIamMemberConditionOutputWithContext added in v4.18.0

func (i TagTemplateIamMemberConditionArgs) ToTagTemplateIamMemberConditionOutputWithContext(ctx context.Context) TagTemplateIamMemberConditionOutput

func (TagTemplateIamMemberConditionArgs) ToTagTemplateIamMemberConditionPtrOutput added in v4.18.0

func (i TagTemplateIamMemberConditionArgs) ToTagTemplateIamMemberConditionPtrOutput() TagTemplateIamMemberConditionPtrOutput

func (TagTemplateIamMemberConditionArgs) ToTagTemplateIamMemberConditionPtrOutputWithContext added in v4.18.0

func (i TagTemplateIamMemberConditionArgs) ToTagTemplateIamMemberConditionPtrOutputWithContext(ctx context.Context) TagTemplateIamMemberConditionPtrOutput

type TagTemplateIamMemberConditionInput added in v4.18.0

type TagTemplateIamMemberConditionInput interface {
	pulumi.Input

	ToTagTemplateIamMemberConditionOutput() TagTemplateIamMemberConditionOutput
	ToTagTemplateIamMemberConditionOutputWithContext(context.Context) TagTemplateIamMemberConditionOutput
}

TagTemplateIamMemberConditionInput is an input type that accepts TagTemplateIamMemberConditionArgs and TagTemplateIamMemberConditionOutput values. You can construct a concrete instance of `TagTemplateIamMemberConditionInput` via:

TagTemplateIamMemberConditionArgs{...}

type TagTemplateIamMemberConditionOutput added in v4.18.0

type TagTemplateIamMemberConditionOutput struct{ *pulumi.OutputState }

func (TagTemplateIamMemberConditionOutput) Description added in v4.18.0

func (TagTemplateIamMemberConditionOutput) ElementType added in v4.18.0

func (TagTemplateIamMemberConditionOutput) Expression added in v4.18.0

func (TagTemplateIamMemberConditionOutput) Title added in v4.18.0

func (TagTemplateIamMemberConditionOutput) ToTagTemplateIamMemberConditionOutput added in v4.18.0

func (o TagTemplateIamMemberConditionOutput) ToTagTemplateIamMemberConditionOutput() TagTemplateIamMemberConditionOutput

func (TagTemplateIamMemberConditionOutput) ToTagTemplateIamMemberConditionOutputWithContext added in v4.18.0

func (o TagTemplateIamMemberConditionOutput) ToTagTemplateIamMemberConditionOutputWithContext(ctx context.Context) TagTemplateIamMemberConditionOutput

func (TagTemplateIamMemberConditionOutput) ToTagTemplateIamMemberConditionPtrOutput added in v4.18.0

func (o TagTemplateIamMemberConditionOutput) ToTagTemplateIamMemberConditionPtrOutput() TagTemplateIamMemberConditionPtrOutput

func (TagTemplateIamMemberConditionOutput) ToTagTemplateIamMemberConditionPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamMemberConditionOutput) ToTagTemplateIamMemberConditionPtrOutputWithContext(ctx context.Context) TagTemplateIamMemberConditionPtrOutput

type TagTemplateIamMemberConditionPtrInput added in v4.18.0

type TagTemplateIamMemberConditionPtrInput interface {
	pulumi.Input

	ToTagTemplateIamMemberConditionPtrOutput() TagTemplateIamMemberConditionPtrOutput
	ToTagTemplateIamMemberConditionPtrOutputWithContext(context.Context) TagTemplateIamMemberConditionPtrOutput
}

TagTemplateIamMemberConditionPtrInput is an input type that accepts TagTemplateIamMemberConditionArgs, TagTemplateIamMemberConditionPtr and TagTemplateIamMemberConditionPtrOutput values. You can construct a concrete instance of `TagTemplateIamMemberConditionPtrInput` via:

        TagTemplateIamMemberConditionArgs{...}

or:

        nil

type TagTemplateIamMemberConditionPtrOutput added in v4.18.0

type TagTemplateIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (TagTemplateIamMemberConditionPtrOutput) Description added in v4.18.0

func (TagTemplateIamMemberConditionPtrOutput) Elem added in v4.18.0

func (TagTemplateIamMemberConditionPtrOutput) ElementType added in v4.18.0

func (TagTemplateIamMemberConditionPtrOutput) Expression added in v4.18.0

func (TagTemplateIamMemberConditionPtrOutput) Title added in v4.18.0

func (TagTemplateIamMemberConditionPtrOutput) ToTagTemplateIamMemberConditionPtrOutput added in v4.18.0

func (o TagTemplateIamMemberConditionPtrOutput) ToTagTemplateIamMemberConditionPtrOutput() TagTemplateIamMemberConditionPtrOutput

func (TagTemplateIamMemberConditionPtrOutput) ToTagTemplateIamMemberConditionPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamMemberConditionPtrOutput) ToTagTemplateIamMemberConditionPtrOutputWithContext(ctx context.Context) TagTemplateIamMemberConditionPtrOutput

type TagTemplateIamMemberInput added in v4.18.0

type TagTemplateIamMemberInput interface {
	pulumi.Input

	ToTagTemplateIamMemberOutput() TagTemplateIamMemberOutput
	ToTagTemplateIamMemberOutputWithContext(ctx context.Context) TagTemplateIamMemberOutput
}

type TagTemplateIamMemberMap added in v4.18.0

type TagTemplateIamMemberMap map[string]TagTemplateIamMemberInput

func (TagTemplateIamMemberMap) ElementType added in v4.18.0

func (TagTemplateIamMemberMap) ElementType() reflect.Type

func (TagTemplateIamMemberMap) ToTagTemplateIamMemberMapOutput added in v4.18.0

func (i TagTemplateIamMemberMap) ToTagTemplateIamMemberMapOutput() TagTemplateIamMemberMapOutput

func (TagTemplateIamMemberMap) ToTagTemplateIamMemberMapOutputWithContext added in v4.18.0

func (i TagTemplateIamMemberMap) ToTagTemplateIamMemberMapOutputWithContext(ctx context.Context) TagTemplateIamMemberMapOutput

type TagTemplateIamMemberMapInput added in v4.18.0

type TagTemplateIamMemberMapInput interface {
	pulumi.Input

	ToTagTemplateIamMemberMapOutput() TagTemplateIamMemberMapOutput
	ToTagTemplateIamMemberMapOutputWithContext(context.Context) TagTemplateIamMemberMapOutput
}

TagTemplateIamMemberMapInput is an input type that accepts TagTemplateIamMemberMap and TagTemplateIamMemberMapOutput values. You can construct a concrete instance of `TagTemplateIamMemberMapInput` via:

TagTemplateIamMemberMap{ "key": TagTemplateIamMemberArgs{...} }

type TagTemplateIamMemberMapOutput added in v4.18.0

type TagTemplateIamMemberMapOutput struct{ *pulumi.OutputState }

func (TagTemplateIamMemberMapOutput) ElementType added in v4.18.0

func (TagTemplateIamMemberMapOutput) MapIndex added in v4.18.0

func (TagTemplateIamMemberMapOutput) ToTagTemplateIamMemberMapOutput added in v4.18.0

func (o TagTemplateIamMemberMapOutput) ToTagTemplateIamMemberMapOutput() TagTemplateIamMemberMapOutput

func (TagTemplateIamMemberMapOutput) ToTagTemplateIamMemberMapOutputWithContext added in v4.18.0

func (o TagTemplateIamMemberMapOutput) ToTagTemplateIamMemberMapOutputWithContext(ctx context.Context) TagTemplateIamMemberMapOutput

type TagTemplateIamMemberOutput added in v4.18.0

type TagTemplateIamMemberOutput struct {
	*pulumi.OutputState
}

func (TagTemplateIamMemberOutput) ElementType added in v4.18.0

func (TagTemplateIamMemberOutput) ElementType() reflect.Type

func (TagTemplateIamMemberOutput) ToTagTemplateIamMemberOutput added in v4.18.0

func (o TagTemplateIamMemberOutput) ToTagTemplateIamMemberOutput() TagTemplateIamMemberOutput

func (TagTemplateIamMemberOutput) ToTagTemplateIamMemberOutputWithContext added in v4.18.0

func (o TagTemplateIamMemberOutput) ToTagTemplateIamMemberOutputWithContext(ctx context.Context) TagTemplateIamMemberOutput

func (TagTemplateIamMemberOutput) ToTagTemplateIamMemberPtrOutput added in v4.18.0

func (o TagTemplateIamMemberOutput) ToTagTemplateIamMemberPtrOutput() TagTemplateIamMemberPtrOutput

func (TagTemplateIamMemberOutput) ToTagTemplateIamMemberPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamMemberOutput) ToTagTemplateIamMemberPtrOutputWithContext(ctx context.Context) TagTemplateIamMemberPtrOutput

type TagTemplateIamMemberPtrInput added in v4.18.0

type TagTemplateIamMemberPtrInput interface {
	pulumi.Input

	ToTagTemplateIamMemberPtrOutput() TagTemplateIamMemberPtrOutput
	ToTagTemplateIamMemberPtrOutputWithContext(ctx context.Context) TagTemplateIamMemberPtrOutput
}

type TagTemplateIamMemberPtrOutput added in v4.18.0

type TagTemplateIamMemberPtrOutput struct {
	*pulumi.OutputState
}

func (TagTemplateIamMemberPtrOutput) ElementType added in v4.18.0

func (TagTemplateIamMemberPtrOutput) ToTagTemplateIamMemberPtrOutput added in v4.18.0

func (o TagTemplateIamMemberPtrOutput) ToTagTemplateIamMemberPtrOutput() TagTemplateIamMemberPtrOutput

func (TagTemplateIamMemberPtrOutput) ToTagTemplateIamMemberPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamMemberPtrOutput) ToTagTemplateIamMemberPtrOutputWithContext(ctx context.Context) TagTemplateIamMemberPtrOutput

type TagTemplateIamMemberState added in v4.18.0

type TagTemplateIamMemberState struct {
	Condition   TagTemplateIamMemberConditionPtrInput
	Etag        pulumi.StringPtrInput
	Member      pulumi.StringPtrInput
	Project     pulumi.StringPtrInput
	Region      pulumi.StringPtrInput
	Role        pulumi.StringPtrInput
	TagTemplate pulumi.StringPtrInput
}

func (TagTemplateIamMemberState) ElementType added in v4.18.0

func (TagTemplateIamMemberState) ElementType() reflect.Type

type TagTemplateIamPolicy added in v4.18.0

type TagTemplateIamPolicy struct {
	pulumi.CustomResourceState

	Etag        pulumi.StringOutput `pulumi:"etag"`
	PolicyData  pulumi.StringOutput `pulumi:"policyData"`
	Project     pulumi.StringOutput `pulumi:"project"`
	Region      pulumi.StringOutput `pulumi:"region"`
	TagTemplate pulumi.StringOutput `pulumi:"tagTemplate"`
}

func GetTagTemplateIamPolicy added in v4.18.0

func GetTagTemplateIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TagTemplateIamPolicyState, opts ...pulumi.ResourceOption) (*TagTemplateIamPolicy, error)

GetTagTemplateIamPolicy gets an existing TagTemplateIamPolicy 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 NewTagTemplateIamPolicy added in v4.18.0

func NewTagTemplateIamPolicy(ctx *pulumi.Context,
	name string, args *TagTemplateIamPolicyArgs, opts ...pulumi.ResourceOption) (*TagTemplateIamPolicy, error)

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

func (*TagTemplateIamPolicy) ElementType added in v4.18.0

func (*TagTemplateIamPolicy) ElementType() reflect.Type

func (*TagTemplateIamPolicy) ToTagTemplateIamPolicyOutput added in v4.18.0

func (i *TagTemplateIamPolicy) ToTagTemplateIamPolicyOutput() TagTemplateIamPolicyOutput

func (*TagTemplateIamPolicy) ToTagTemplateIamPolicyOutputWithContext added in v4.18.0

func (i *TagTemplateIamPolicy) ToTagTemplateIamPolicyOutputWithContext(ctx context.Context) TagTemplateIamPolicyOutput

func (*TagTemplateIamPolicy) ToTagTemplateIamPolicyPtrOutput added in v4.18.0

func (i *TagTemplateIamPolicy) ToTagTemplateIamPolicyPtrOutput() TagTemplateIamPolicyPtrOutput

func (*TagTemplateIamPolicy) ToTagTemplateIamPolicyPtrOutputWithContext added in v4.18.0

func (i *TagTemplateIamPolicy) ToTagTemplateIamPolicyPtrOutputWithContext(ctx context.Context) TagTemplateIamPolicyPtrOutput

type TagTemplateIamPolicyArgs added in v4.18.0

type TagTemplateIamPolicyArgs struct {
	PolicyData  pulumi.StringInput
	Project     pulumi.StringPtrInput
	Region      pulumi.StringPtrInput
	TagTemplate pulumi.StringInput
}

The set of arguments for constructing a TagTemplateIamPolicy resource.

func (TagTemplateIamPolicyArgs) ElementType added in v4.18.0

func (TagTemplateIamPolicyArgs) ElementType() reflect.Type

type TagTemplateIamPolicyArray added in v4.18.0

type TagTemplateIamPolicyArray []TagTemplateIamPolicyInput

func (TagTemplateIamPolicyArray) ElementType added in v4.18.0

func (TagTemplateIamPolicyArray) ElementType() reflect.Type

func (TagTemplateIamPolicyArray) ToTagTemplateIamPolicyArrayOutput added in v4.18.0

func (i TagTemplateIamPolicyArray) ToTagTemplateIamPolicyArrayOutput() TagTemplateIamPolicyArrayOutput

func (TagTemplateIamPolicyArray) ToTagTemplateIamPolicyArrayOutputWithContext added in v4.18.0

func (i TagTemplateIamPolicyArray) ToTagTemplateIamPolicyArrayOutputWithContext(ctx context.Context) TagTemplateIamPolicyArrayOutput

type TagTemplateIamPolicyArrayInput added in v4.18.0

type TagTemplateIamPolicyArrayInput interface {
	pulumi.Input

	ToTagTemplateIamPolicyArrayOutput() TagTemplateIamPolicyArrayOutput
	ToTagTemplateIamPolicyArrayOutputWithContext(context.Context) TagTemplateIamPolicyArrayOutput
}

TagTemplateIamPolicyArrayInput is an input type that accepts TagTemplateIamPolicyArray and TagTemplateIamPolicyArrayOutput values. You can construct a concrete instance of `TagTemplateIamPolicyArrayInput` via:

TagTemplateIamPolicyArray{ TagTemplateIamPolicyArgs{...} }

type TagTemplateIamPolicyArrayOutput added in v4.18.0

type TagTemplateIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (TagTemplateIamPolicyArrayOutput) ElementType added in v4.18.0

func (TagTemplateIamPolicyArrayOutput) Index added in v4.18.0

func (TagTemplateIamPolicyArrayOutput) ToTagTemplateIamPolicyArrayOutput added in v4.18.0

func (o TagTemplateIamPolicyArrayOutput) ToTagTemplateIamPolicyArrayOutput() TagTemplateIamPolicyArrayOutput

func (TagTemplateIamPolicyArrayOutput) ToTagTemplateIamPolicyArrayOutputWithContext added in v4.18.0

func (o TagTemplateIamPolicyArrayOutput) ToTagTemplateIamPolicyArrayOutputWithContext(ctx context.Context) TagTemplateIamPolicyArrayOutput

type TagTemplateIamPolicyInput added in v4.18.0

type TagTemplateIamPolicyInput interface {
	pulumi.Input

	ToTagTemplateIamPolicyOutput() TagTemplateIamPolicyOutput
	ToTagTemplateIamPolicyOutputWithContext(ctx context.Context) TagTemplateIamPolicyOutput
}

type TagTemplateIamPolicyMap added in v4.18.0

type TagTemplateIamPolicyMap map[string]TagTemplateIamPolicyInput

func (TagTemplateIamPolicyMap) ElementType added in v4.18.0

func (TagTemplateIamPolicyMap) ElementType() reflect.Type

func (TagTemplateIamPolicyMap) ToTagTemplateIamPolicyMapOutput added in v4.18.0

func (i TagTemplateIamPolicyMap) ToTagTemplateIamPolicyMapOutput() TagTemplateIamPolicyMapOutput

func (TagTemplateIamPolicyMap) ToTagTemplateIamPolicyMapOutputWithContext added in v4.18.0

func (i TagTemplateIamPolicyMap) ToTagTemplateIamPolicyMapOutputWithContext(ctx context.Context) TagTemplateIamPolicyMapOutput

type TagTemplateIamPolicyMapInput added in v4.18.0

type TagTemplateIamPolicyMapInput interface {
	pulumi.Input

	ToTagTemplateIamPolicyMapOutput() TagTemplateIamPolicyMapOutput
	ToTagTemplateIamPolicyMapOutputWithContext(context.Context) TagTemplateIamPolicyMapOutput
}

TagTemplateIamPolicyMapInput is an input type that accepts TagTemplateIamPolicyMap and TagTemplateIamPolicyMapOutput values. You can construct a concrete instance of `TagTemplateIamPolicyMapInput` via:

TagTemplateIamPolicyMap{ "key": TagTemplateIamPolicyArgs{...} }

type TagTemplateIamPolicyMapOutput added in v4.18.0

type TagTemplateIamPolicyMapOutput struct{ *pulumi.OutputState }

func (TagTemplateIamPolicyMapOutput) ElementType added in v4.18.0

func (TagTemplateIamPolicyMapOutput) MapIndex added in v4.18.0

func (TagTemplateIamPolicyMapOutput) ToTagTemplateIamPolicyMapOutput added in v4.18.0

func (o TagTemplateIamPolicyMapOutput) ToTagTemplateIamPolicyMapOutput() TagTemplateIamPolicyMapOutput

func (TagTemplateIamPolicyMapOutput) ToTagTemplateIamPolicyMapOutputWithContext added in v4.18.0

func (o TagTemplateIamPolicyMapOutput) ToTagTemplateIamPolicyMapOutputWithContext(ctx context.Context) TagTemplateIamPolicyMapOutput

type TagTemplateIamPolicyOutput added in v4.18.0

type TagTemplateIamPolicyOutput struct {
	*pulumi.OutputState
}

func (TagTemplateIamPolicyOutput) ElementType added in v4.18.0

func (TagTemplateIamPolicyOutput) ElementType() reflect.Type

func (TagTemplateIamPolicyOutput) ToTagTemplateIamPolicyOutput added in v4.18.0

func (o TagTemplateIamPolicyOutput) ToTagTemplateIamPolicyOutput() TagTemplateIamPolicyOutput

func (TagTemplateIamPolicyOutput) ToTagTemplateIamPolicyOutputWithContext added in v4.18.0

func (o TagTemplateIamPolicyOutput) ToTagTemplateIamPolicyOutputWithContext(ctx context.Context) TagTemplateIamPolicyOutput

func (TagTemplateIamPolicyOutput) ToTagTemplateIamPolicyPtrOutput added in v4.18.0

func (o TagTemplateIamPolicyOutput) ToTagTemplateIamPolicyPtrOutput() TagTemplateIamPolicyPtrOutput

func (TagTemplateIamPolicyOutput) ToTagTemplateIamPolicyPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamPolicyOutput) ToTagTemplateIamPolicyPtrOutputWithContext(ctx context.Context) TagTemplateIamPolicyPtrOutput

type TagTemplateIamPolicyPtrInput added in v4.18.0

type TagTemplateIamPolicyPtrInput interface {
	pulumi.Input

	ToTagTemplateIamPolicyPtrOutput() TagTemplateIamPolicyPtrOutput
	ToTagTemplateIamPolicyPtrOutputWithContext(ctx context.Context) TagTemplateIamPolicyPtrOutput
}

type TagTemplateIamPolicyPtrOutput added in v4.18.0

type TagTemplateIamPolicyPtrOutput struct {
	*pulumi.OutputState
}

func (TagTemplateIamPolicyPtrOutput) ElementType added in v4.18.0

func (TagTemplateIamPolicyPtrOutput) ToTagTemplateIamPolicyPtrOutput added in v4.18.0

func (o TagTemplateIamPolicyPtrOutput) ToTagTemplateIamPolicyPtrOutput() TagTemplateIamPolicyPtrOutput

func (TagTemplateIamPolicyPtrOutput) ToTagTemplateIamPolicyPtrOutputWithContext added in v4.18.0

func (o TagTemplateIamPolicyPtrOutput) ToTagTemplateIamPolicyPtrOutputWithContext(ctx context.Context) TagTemplateIamPolicyPtrOutput

type TagTemplateIamPolicyState added in v4.18.0

type TagTemplateIamPolicyState struct {
	Etag        pulumi.StringPtrInput
	PolicyData  pulumi.StringPtrInput
	Project     pulumi.StringPtrInput
	Region      pulumi.StringPtrInput
	TagTemplate pulumi.StringPtrInput
}

func (TagTemplateIamPolicyState) ElementType added in v4.18.0

func (TagTemplateIamPolicyState) ElementType() reflect.Type

type TagTemplateInput added in v4.4.0

type TagTemplateInput interface {
	pulumi.Input

	ToTagTemplateOutput() TagTemplateOutput
	ToTagTemplateOutputWithContext(ctx context.Context) TagTemplateOutput
}

type TagTemplateMap added in v4.11.1

type TagTemplateMap map[string]TagTemplateInput

func (TagTemplateMap) ElementType added in v4.11.1

func (TagTemplateMap) ElementType() reflect.Type

func (TagTemplateMap) ToTagTemplateMapOutput added in v4.11.1

func (i TagTemplateMap) ToTagTemplateMapOutput() TagTemplateMapOutput

func (TagTemplateMap) ToTagTemplateMapOutputWithContext added in v4.11.1

func (i TagTemplateMap) ToTagTemplateMapOutputWithContext(ctx context.Context) TagTemplateMapOutput

type TagTemplateMapInput added in v4.11.1

type TagTemplateMapInput interface {
	pulumi.Input

	ToTagTemplateMapOutput() TagTemplateMapOutput
	ToTagTemplateMapOutputWithContext(context.Context) TagTemplateMapOutput
}

TagTemplateMapInput is an input type that accepts TagTemplateMap and TagTemplateMapOutput values. You can construct a concrete instance of `TagTemplateMapInput` via:

TagTemplateMap{ "key": TagTemplateArgs{...} }

type TagTemplateMapOutput added in v4.11.1

type TagTemplateMapOutput struct{ *pulumi.OutputState }

func (TagTemplateMapOutput) ElementType added in v4.11.1

func (TagTemplateMapOutput) ElementType() reflect.Type

func (TagTemplateMapOutput) MapIndex added in v4.11.1

func (TagTemplateMapOutput) ToTagTemplateMapOutput added in v4.11.1

func (o TagTemplateMapOutput) ToTagTemplateMapOutput() TagTemplateMapOutput

func (TagTemplateMapOutput) ToTagTemplateMapOutputWithContext added in v4.11.1

func (o TagTemplateMapOutput) ToTagTemplateMapOutputWithContext(ctx context.Context) TagTemplateMapOutput

type TagTemplateOutput added in v4.4.0

type TagTemplateOutput struct {
	*pulumi.OutputState
}

func (TagTemplateOutput) ElementType added in v4.4.0

func (TagTemplateOutput) ElementType() reflect.Type

func (TagTemplateOutput) ToTagTemplateOutput added in v4.4.0

func (o TagTemplateOutput) ToTagTemplateOutput() TagTemplateOutput

func (TagTemplateOutput) ToTagTemplateOutputWithContext added in v4.4.0

func (o TagTemplateOutput) ToTagTemplateOutputWithContext(ctx context.Context) TagTemplateOutput

func (TagTemplateOutput) ToTagTemplatePtrOutput added in v4.11.1

func (o TagTemplateOutput) ToTagTemplatePtrOutput() TagTemplatePtrOutput

func (TagTemplateOutput) ToTagTemplatePtrOutputWithContext added in v4.11.1

func (o TagTemplateOutput) ToTagTemplatePtrOutputWithContext(ctx context.Context) TagTemplatePtrOutput

type TagTemplatePtrInput added in v4.11.1

type TagTemplatePtrInput interface {
	pulumi.Input

	ToTagTemplatePtrOutput() TagTemplatePtrOutput
	ToTagTemplatePtrOutputWithContext(ctx context.Context) TagTemplatePtrOutput
}

type TagTemplatePtrOutput added in v4.11.1

type TagTemplatePtrOutput struct {
	*pulumi.OutputState
}

func (TagTemplatePtrOutput) ElementType added in v4.11.1

func (TagTemplatePtrOutput) ElementType() reflect.Type

func (TagTemplatePtrOutput) ToTagTemplatePtrOutput added in v4.11.1

func (o TagTemplatePtrOutput) ToTagTemplatePtrOutput() TagTemplatePtrOutput

func (TagTemplatePtrOutput) ToTagTemplatePtrOutputWithContext added in v4.11.1

func (o TagTemplatePtrOutput) ToTagTemplatePtrOutputWithContext(ctx context.Context) TagTemplatePtrOutput

type TagTemplateState

type TagTemplateState struct {
	// The display name for this template.
	DisplayName pulumi.StringPtrInput
	// Set of tag template field IDs and the settings for the field. This set is an exhaustive list of the allowed fields. This set must contain at least one field and at most 500 fields.
	// Structure is documented below.
	Fields TagTemplateFieldArrayInput
	// This confirms the deletion of any possible tags using this template. Must be set to true in order to delete the tag template.
	ForceDelete pulumi.BoolPtrInput
	// -
	// The resource name of the tag template field in URL format. Example: projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}/fields/{field}
	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
	// Template location region.
	Region pulumi.StringPtrInput
	// The id of the tag template to create.
	TagTemplateId pulumi.StringPtrInput
}

func (TagTemplateState) ElementType

func (TagTemplateState) ElementType() reflect.Type

type Taxonomy added in v4.1.0

type Taxonomy struct {
	pulumi.CustomResourceState

	// A list of policy types that are activated for this taxonomy. If not set,
	// defaults to an empty list.
	// Each value may be one of `POLICY_TYPE_UNSPECIFIED` and `FINE_GRAINED_ACCESS_CONTROL`.
	ActivatedPolicyTypes pulumi.StringArrayOutput `pulumi:"activatedPolicyTypes"`
	// Description of this taxonomy. It must: contain only unicode characters,
	// tabs, newlines, carriage returns and page breaks; and be at most 2000 bytes
	// long when encoded in UTF-8. If not set, defaults to an empty description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// User defined name of this taxonomy.
	// It must: contain only unicode letters, numbers, underscores, dashes
	// and spaces; not start or end with spaces; and be at most 200 bytes
	// long when encoded in UTF-8.
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// Resource name of this taxonomy, whose format is: "projects/{project}/locations/{region}/taxonomies/{taxonomy}".
	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"`
	// Taxonomy location region.
	Region pulumi.StringOutput `pulumi:"region"`
}

A collection of policy tags that classify data along a common axis.

To get more information about Taxonomy, see:

* [API documentation](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.taxonomies) * How-to Guides

## Example Usage ### Data Catalog Taxonomy Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewTaxonomy(ctx, "basicTaxonomy", &datacatalog.TaxonomyArgs{
			Region:      pulumi.String("us"),
			DisplayName: pulumi.String("my_display_name"),
			Description: pulumi.String("A collection of policy tags"),
			ActivatedPolicyTypes: pulumi.StringArray{
				pulumi.String("FINE_GRAINED_ACCESS_CONTROL"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Taxonomy can be imported using any of these accepted formats

```sh

$ pulumi import gcp:datacatalog/taxonomy:Taxonomy default {{name}}

```

func GetTaxonomy added in v4.1.0

func GetTaxonomy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TaxonomyState, opts ...pulumi.ResourceOption) (*Taxonomy, error)

GetTaxonomy gets an existing Taxonomy 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 NewTaxonomy added in v4.1.0

func NewTaxonomy(ctx *pulumi.Context,
	name string, args *TaxonomyArgs, opts ...pulumi.ResourceOption) (*Taxonomy, error)

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

func (*Taxonomy) ElementType added in v4.4.0

func (*Taxonomy) ElementType() reflect.Type

func (*Taxonomy) ToTaxonomyOutput added in v4.4.0

func (i *Taxonomy) ToTaxonomyOutput() TaxonomyOutput

func (*Taxonomy) ToTaxonomyOutputWithContext added in v4.4.0

func (i *Taxonomy) ToTaxonomyOutputWithContext(ctx context.Context) TaxonomyOutput

func (*Taxonomy) ToTaxonomyPtrOutput added in v4.11.1

func (i *Taxonomy) ToTaxonomyPtrOutput() TaxonomyPtrOutput

func (*Taxonomy) ToTaxonomyPtrOutputWithContext added in v4.11.1

func (i *Taxonomy) ToTaxonomyPtrOutputWithContext(ctx context.Context) TaxonomyPtrOutput

type TaxonomyArgs added in v4.1.0

type TaxonomyArgs struct {
	// A list of policy types that are activated for this taxonomy. If not set,
	// defaults to an empty list.
	// Each value may be one of `POLICY_TYPE_UNSPECIFIED` and `FINE_GRAINED_ACCESS_CONTROL`.
	ActivatedPolicyTypes pulumi.StringArrayInput
	// Description of this taxonomy. It must: contain only unicode characters,
	// tabs, newlines, carriage returns and page breaks; and be at most 2000 bytes
	// long when encoded in UTF-8. If not set, defaults to an empty description.
	Description pulumi.StringPtrInput
	// User defined name of this taxonomy.
	// It must: contain only unicode letters, numbers, underscores, dashes
	// and spaces; not start or end with spaces; and be at most 200 bytes
	// long when encoded in UTF-8.
	DisplayName 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
	// Taxonomy location region.
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a Taxonomy resource.

func (TaxonomyArgs) ElementType added in v4.1.0

func (TaxonomyArgs) ElementType() reflect.Type

type TaxonomyArray added in v4.11.1

type TaxonomyArray []TaxonomyInput

func (TaxonomyArray) ElementType added in v4.11.1

func (TaxonomyArray) ElementType() reflect.Type

func (TaxonomyArray) ToTaxonomyArrayOutput added in v4.11.1

func (i TaxonomyArray) ToTaxonomyArrayOutput() TaxonomyArrayOutput

func (TaxonomyArray) ToTaxonomyArrayOutputWithContext added in v4.11.1

func (i TaxonomyArray) ToTaxonomyArrayOutputWithContext(ctx context.Context) TaxonomyArrayOutput

type TaxonomyArrayInput added in v4.11.1

type TaxonomyArrayInput interface {
	pulumi.Input

	ToTaxonomyArrayOutput() TaxonomyArrayOutput
	ToTaxonomyArrayOutputWithContext(context.Context) TaxonomyArrayOutput
}

TaxonomyArrayInput is an input type that accepts TaxonomyArray and TaxonomyArrayOutput values. You can construct a concrete instance of `TaxonomyArrayInput` via:

TaxonomyArray{ TaxonomyArgs{...} }

type TaxonomyArrayOutput added in v4.11.1

type TaxonomyArrayOutput struct{ *pulumi.OutputState }

func (TaxonomyArrayOutput) ElementType added in v4.11.1

func (TaxonomyArrayOutput) ElementType() reflect.Type

func (TaxonomyArrayOutput) Index added in v4.11.1

func (TaxonomyArrayOutput) ToTaxonomyArrayOutput added in v4.11.1

func (o TaxonomyArrayOutput) ToTaxonomyArrayOutput() TaxonomyArrayOutput

func (TaxonomyArrayOutput) ToTaxonomyArrayOutputWithContext added in v4.11.1

func (o TaxonomyArrayOutput) ToTaxonomyArrayOutputWithContext(ctx context.Context) TaxonomyArrayOutput

type TaxonomyIamBinding added in v4.1.0

type TaxonomyIamBinding struct {
	pulumi.CustomResourceState

	Condition TaxonomyIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	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.
	Project pulumi.StringOutput `pulumi:"project"`
	Region  pulumi.StringOutput `pulumi:"region"`
	// The role that should be applied. Only one
	// `datacatalog.TaxonomyIamBinding` 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"`
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringOutput `pulumi:"taxonomy"`
}

Three different resources help you manage your IAM policy for Data catalog Taxonomy. Each of these resources serves a different use case:

* `datacatalog.TaxonomyIamPolicy`: Authoritative. Sets the IAM policy for the taxonomy and replaces any existing policy already attached. * `datacatalog.TaxonomyIamBinding`: 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 taxonomy are preserved. * `datacatalog.TaxonomyIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the taxonomy are preserved.

> **Note:** `datacatalog.TaxonomyIamPolicy` **cannot** be used in conjunction with `datacatalog.TaxonomyIamBinding` and `datacatalog.TaxonomyIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_taxonomy\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewTaxonomyIamPolicy(ctx, "policy", &datacatalog.TaxonomyIamPolicyArgs{
			Taxonomy:   pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_taxonomy\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewTaxonomyIamBinding(ctx, "binding", &datacatalog.TaxonomyIamBindingArgs{
			Taxonomy: pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.Name),
			Role:     pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_taxonomy\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewTaxonomyIamMember(ctx, "member", &datacatalog.TaxonomyIamMemberArgs{
			Taxonomy: pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.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}}/locations/{{region}}/taxonomies/{{taxonomy}} * {{project}}/{{region}}/{{taxonomy}} * {{region}}/{{taxonomy}} * {{taxonomy}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog taxonomy 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:datacatalog/taxonomyIamBinding:TaxonomyIamBinding editor "projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}} 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:datacatalog/taxonomyIamBinding:TaxonomyIamBinding editor "projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/taxonomyIamBinding:TaxonomyIamBinding editor projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}}

```

-> **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 GetTaxonomyIamBinding added in v4.1.0

func GetTaxonomyIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TaxonomyIamBindingState, opts ...pulumi.ResourceOption) (*TaxonomyIamBinding, error)

GetTaxonomyIamBinding gets an existing TaxonomyIamBinding 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 NewTaxonomyIamBinding added in v4.1.0

func NewTaxonomyIamBinding(ctx *pulumi.Context,
	name string, args *TaxonomyIamBindingArgs, opts ...pulumi.ResourceOption) (*TaxonomyIamBinding, error)

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

func (*TaxonomyIamBinding) ElementType added in v4.4.0

func (*TaxonomyIamBinding) ElementType() reflect.Type

func (*TaxonomyIamBinding) ToTaxonomyIamBindingOutput added in v4.4.0

func (i *TaxonomyIamBinding) ToTaxonomyIamBindingOutput() TaxonomyIamBindingOutput

func (*TaxonomyIamBinding) ToTaxonomyIamBindingOutputWithContext added in v4.4.0

func (i *TaxonomyIamBinding) ToTaxonomyIamBindingOutputWithContext(ctx context.Context) TaxonomyIamBindingOutput

func (*TaxonomyIamBinding) ToTaxonomyIamBindingPtrOutput added in v4.11.1

func (i *TaxonomyIamBinding) ToTaxonomyIamBindingPtrOutput() TaxonomyIamBindingPtrOutput

func (*TaxonomyIamBinding) ToTaxonomyIamBindingPtrOutputWithContext added in v4.11.1

func (i *TaxonomyIamBinding) ToTaxonomyIamBindingPtrOutputWithContext(ctx context.Context) TaxonomyIamBindingPtrOutput

type TaxonomyIamBindingArgs added in v4.1.0

type TaxonomyIamBindingArgs struct {
	Condition TaxonomyIamBindingConditionPtrInput
	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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.TaxonomyIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringInput
}

The set of arguments for constructing a TaxonomyIamBinding resource.

func (TaxonomyIamBindingArgs) ElementType added in v4.1.0

func (TaxonomyIamBindingArgs) ElementType() reflect.Type

type TaxonomyIamBindingArray added in v4.11.1

type TaxonomyIamBindingArray []TaxonomyIamBindingInput

func (TaxonomyIamBindingArray) ElementType added in v4.11.1

func (TaxonomyIamBindingArray) ElementType() reflect.Type

func (TaxonomyIamBindingArray) ToTaxonomyIamBindingArrayOutput added in v4.11.1

func (i TaxonomyIamBindingArray) ToTaxonomyIamBindingArrayOutput() TaxonomyIamBindingArrayOutput

func (TaxonomyIamBindingArray) ToTaxonomyIamBindingArrayOutputWithContext added in v4.11.1

func (i TaxonomyIamBindingArray) ToTaxonomyIamBindingArrayOutputWithContext(ctx context.Context) TaxonomyIamBindingArrayOutput

type TaxonomyIamBindingArrayInput added in v4.11.1

type TaxonomyIamBindingArrayInput interface {
	pulumi.Input

	ToTaxonomyIamBindingArrayOutput() TaxonomyIamBindingArrayOutput
	ToTaxonomyIamBindingArrayOutputWithContext(context.Context) TaxonomyIamBindingArrayOutput
}

TaxonomyIamBindingArrayInput is an input type that accepts TaxonomyIamBindingArray and TaxonomyIamBindingArrayOutput values. You can construct a concrete instance of `TaxonomyIamBindingArrayInput` via:

TaxonomyIamBindingArray{ TaxonomyIamBindingArgs{...} }

type TaxonomyIamBindingArrayOutput added in v4.11.1

type TaxonomyIamBindingArrayOutput struct{ *pulumi.OutputState }

func (TaxonomyIamBindingArrayOutput) ElementType added in v4.11.1

func (TaxonomyIamBindingArrayOutput) Index added in v4.11.1

func (TaxonomyIamBindingArrayOutput) ToTaxonomyIamBindingArrayOutput added in v4.11.1

func (o TaxonomyIamBindingArrayOutput) ToTaxonomyIamBindingArrayOutput() TaxonomyIamBindingArrayOutput

func (TaxonomyIamBindingArrayOutput) ToTaxonomyIamBindingArrayOutputWithContext added in v4.11.1

func (o TaxonomyIamBindingArrayOutput) ToTaxonomyIamBindingArrayOutputWithContext(ctx context.Context) TaxonomyIamBindingArrayOutput

type TaxonomyIamBindingCondition added in v4.1.0

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

type TaxonomyIamBindingConditionArgs added in v4.1.0

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

func (TaxonomyIamBindingConditionArgs) ElementType added in v4.1.0

func (TaxonomyIamBindingConditionArgs) ToTaxonomyIamBindingConditionOutput added in v4.1.0

func (i TaxonomyIamBindingConditionArgs) ToTaxonomyIamBindingConditionOutput() TaxonomyIamBindingConditionOutput

func (TaxonomyIamBindingConditionArgs) ToTaxonomyIamBindingConditionOutputWithContext added in v4.1.0

func (i TaxonomyIamBindingConditionArgs) ToTaxonomyIamBindingConditionOutputWithContext(ctx context.Context) TaxonomyIamBindingConditionOutput

func (TaxonomyIamBindingConditionArgs) ToTaxonomyIamBindingConditionPtrOutput added in v4.1.0

func (i TaxonomyIamBindingConditionArgs) ToTaxonomyIamBindingConditionPtrOutput() TaxonomyIamBindingConditionPtrOutput

func (TaxonomyIamBindingConditionArgs) ToTaxonomyIamBindingConditionPtrOutputWithContext added in v4.1.0

func (i TaxonomyIamBindingConditionArgs) ToTaxonomyIamBindingConditionPtrOutputWithContext(ctx context.Context) TaxonomyIamBindingConditionPtrOutput

type TaxonomyIamBindingConditionInput added in v4.1.0

type TaxonomyIamBindingConditionInput interface {
	pulumi.Input

	ToTaxonomyIamBindingConditionOutput() TaxonomyIamBindingConditionOutput
	ToTaxonomyIamBindingConditionOutputWithContext(context.Context) TaxonomyIamBindingConditionOutput
}

TaxonomyIamBindingConditionInput is an input type that accepts TaxonomyIamBindingConditionArgs and TaxonomyIamBindingConditionOutput values. You can construct a concrete instance of `TaxonomyIamBindingConditionInput` via:

TaxonomyIamBindingConditionArgs{...}

type TaxonomyIamBindingConditionOutput added in v4.1.0

type TaxonomyIamBindingConditionOutput struct{ *pulumi.OutputState }

func (TaxonomyIamBindingConditionOutput) Description added in v4.1.0

func (TaxonomyIamBindingConditionOutput) ElementType added in v4.1.0

func (TaxonomyIamBindingConditionOutput) Expression added in v4.1.0

func (TaxonomyIamBindingConditionOutput) Title added in v4.1.0

func (TaxonomyIamBindingConditionOutput) ToTaxonomyIamBindingConditionOutput added in v4.1.0

func (o TaxonomyIamBindingConditionOutput) ToTaxonomyIamBindingConditionOutput() TaxonomyIamBindingConditionOutput

func (TaxonomyIamBindingConditionOutput) ToTaxonomyIamBindingConditionOutputWithContext added in v4.1.0

func (o TaxonomyIamBindingConditionOutput) ToTaxonomyIamBindingConditionOutputWithContext(ctx context.Context) TaxonomyIamBindingConditionOutput

func (TaxonomyIamBindingConditionOutput) ToTaxonomyIamBindingConditionPtrOutput added in v4.1.0

func (o TaxonomyIamBindingConditionOutput) ToTaxonomyIamBindingConditionPtrOutput() TaxonomyIamBindingConditionPtrOutput

func (TaxonomyIamBindingConditionOutput) ToTaxonomyIamBindingConditionPtrOutputWithContext added in v4.1.0

func (o TaxonomyIamBindingConditionOutput) ToTaxonomyIamBindingConditionPtrOutputWithContext(ctx context.Context) TaxonomyIamBindingConditionPtrOutput

type TaxonomyIamBindingConditionPtrInput added in v4.1.0

type TaxonomyIamBindingConditionPtrInput interface {
	pulumi.Input

	ToTaxonomyIamBindingConditionPtrOutput() TaxonomyIamBindingConditionPtrOutput
	ToTaxonomyIamBindingConditionPtrOutputWithContext(context.Context) TaxonomyIamBindingConditionPtrOutput
}

TaxonomyIamBindingConditionPtrInput is an input type that accepts TaxonomyIamBindingConditionArgs, TaxonomyIamBindingConditionPtr and TaxonomyIamBindingConditionPtrOutput values. You can construct a concrete instance of `TaxonomyIamBindingConditionPtrInput` via:

        TaxonomyIamBindingConditionArgs{...}

or:

        nil

func TaxonomyIamBindingConditionPtr added in v4.1.0

type TaxonomyIamBindingConditionPtrOutput added in v4.1.0

type TaxonomyIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (TaxonomyIamBindingConditionPtrOutput) Description added in v4.1.0

func (TaxonomyIamBindingConditionPtrOutput) Elem added in v4.1.0

func (TaxonomyIamBindingConditionPtrOutput) ElementType added in v4.1.0

func (TaxonomyIamBindingConditionPtrOutput) Expression added in v4.1.0

func (TaxonomyIamBindingConditionPtrOutput) Title added in v4.1.0

func (TaxonomyIamBindingConditionPtrOutput) ToTaxonomyIamBindingConditionPtrOutput added in v4.1.0

func (o TaxonomyIamBindingConditionPtrOutput) ToTaxonomyIamBindingConditionPtrOutput() TaxonomyIamBindingConditionPtrOutput

func (TaxonomyIamBindingConditionPtrOutput) ToTaxonomyIamBindingConditionPtrOutputWithContext added in v4.1.0

func (o TaxonomyIamBindingConditionPtrOutput) ToTaxonomyIamBindingConditionPtrOutputWithContext(ctx context.Context) TaxonomyIamBindingConditionPtrOutput

type TaxonomyIamBindingInput added in v4.4.0

type TaxonomyIamBindingInput interface {
	pulumi.Input

	ToTaxonomyIamBindingOutput() TaxonomyIamBindingOutput
	ToTaxonomyIamBindingOutputWithContext(ctx context.Context) TaxonomyIamBindingOutput
}

type TaxonomyIamBindingMap added in v4.11.1

type TaxonomyIamBindingMap map[string]TaxonomyIamBindingInput

func (TaxonomyIamBindingMap) ElementType added in v4.11.1

func (TaxonomyIamBindingMap) ElementType() reflect.Type

func (TaxonomyIamBindingMap) ToTaxonomyIamBindingMapOutput added in v4.11.1

func (i TaxonomyIamBindingMap) ToTaxonomyIamBindingMapOutput() TaxonomyIamBindingMapOutput

func (TaxonomyIamBindingMap) ToTaxonomyIamBindingMapOutputWithContext added in v4.11.1

func (i TaxonomyIamBindingMap) ToTaxonomyIamBindingMapOutputWithContext(ctx context.Context) TaxonomyIamBindingMapOutput

type TaxonomyIamBindingMapInput added in v4.11.1

type TaxonomyIamBindingMapInput interface {
	pulumi.Input

	ToTaxonomyIamBindingMapOutput() TaxonomyIamBindingMapOutput
	ToTaxonomyIamBindingMapOutputWithContext(context.Context) TaxonomyIamBindingMapOutput
}

TaxonomyIamBindingMapInput is an input type that accepts TaxonomyIamBindingMap and TaxonomyIamBindingMapOutput values. You can construct a concrete instance of `TaxonomyIamBindingMapInput` via:

TaxonomyIamBindingMap{ "key": TaxonomyIamBindingArgs{...} }

type TaxonomyIamBindingMapOutput added in v4.11.1

type TaxonomyIamBindingMapOutput struct{ *pulumi.OutputState }

func (TaxonomyIamBindingMapOutput) ElementType added in v4.11.1

func (TaxonomyIamBindingMapOutput) MapIndex added in v4.11.1

func (TaxonomyIamBindingMapOutput) ToTaxonomyIamBindingMapOutput added in v4.11.1

func (o TaxonomyIamBindingMapOutput) ToTaxonomyIamBindingMapOutput() TaxonomyIamBindingMapOutput

func (TaxonomyIamBindingMapOutput) ToTaxonomyIamBindingMapOutputWithContext added in v4.11.1

func (o TaxonomyIamBindingMapOutput) ToTaxonomyIamBindingMapOutputWithContext(ctx context.Context) TaxonomyIamBindingMapOutput

type TaxonomyIamBindingOutput added in v4.4.0

type TaxonomyIamBindingOutput struct {
	*pulumi.OutputState
}

func (TaxonomyIamBindingOutput) ElementType added in v4.4.0

func (TaxonomyIamBindingOutput) ElementType() reflect.Type

func (TaxonomyIamBindingOutput) ToTaxonomyIamBindingOutput added in v4.4.0

func (o TaxonomyIamBindingOutput) ToTaxonomyIamBindingOutput() TaxonomyIamBindingOutput

func (TaxonomyIamBindingOutput) ToTaxonomyIamBindingOutputWithContext added in v4.4.0

func (o TaxonomyIamBindingOutput) ToTaxonomyIamBindingOutputWithContext(ctx context.Context) TaxonomyIamBindingOutput

func (TaxonomyIamBindingOutput) ToTaxonomyIamBindingPtrOutput added in v4.11.1

func (o TaxonomyIamBindingOutput) ToTaxonomyIamBindingPtrOutput() TaxonomyIamBindingPtrOutput

func (TaxonomyIamBindingOutput) ToTaxonomyIamBindingPtrOutputWithContext added in v4.11.1

func (o TaxonomyIamBindingOutput) ToTaxonomyIamBindingPtrOutputWithContext(ctx context.Context) TaxonomyIamBindingPtrOutput

type TaxonomyIamBindingPtrInput added in v4.11.1

type TaxonomyIamBindingPtrInput interface {
	pulumi.Input

	ToTaxonomyIamBindingPtrOutput() TaxonomyIamBindingPtrOutput
	ToTaxonomyIamBindingPtrOutputWithContext(ctx context.Context) TaxonomyIamBindingPtrOutput
}

type TaxonomyIamBindingPtrOutput added in v4.11.1

type TaxonomyIamBindingPtrOutput struct {
	*pulumi.OutputState
}

func (TaxonomyIamBindingPtrOutput) ElementType added in v4.11.1

func (TaxonomyIamBindingPtrOutput) ToTaxonomyIamBindingPtrOutput added in v4.11.1

func (o TaxonomyIamBindingPtrOutput) ToTaxonomyIamBindingPtrOutput() TaxonomyIamBindingPtrOutput

func (TaxonomyIamBindingPtrOutput) ToTaxonomyIamBindingPtrOutputWithContext added in v4.11.1

func (o TaxonomyIamBindingPtrOutput) ToTaxonomyIamBindingPtrOutputWithContext(ctx context.Context) TaxonomyIamBindingPtrOutput

type TaxonomyIamBindingState added in v4.1.0

type TaxonomyIamBindingState struct {
	Condition TaxonomyIamBindingConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag    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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.TaxonomyIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringPtrInput
}

func (TaxonomyIamBindingState) ElementType added in v4.1.0

func (TaxonomyIamBindingState) ElementType() reflect.Type

type TaxonomyIamMember added in v4.1.0

type TaxonomyIamMember struct {
	pulumi.CustomResourceState

	Condition TaxonomyIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	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.
	Project pulumi.StringOutput `pulumi:"project"`
	Region  pulumi.StringOutput `pulumi:"region"`
	// The role that should be applied. Only one
	// `datacatalog.TaxonomyIamBinding` 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"`
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringOutput `pulumi:"taxonomy"`
}

Three different resources help you manage your IAM policy for Data catalog Taxonomy. Each of these resources serves a different use case:

* `datacatalog.TaxonomyIamPolicy`: Authoritative. Sets the IAM policy for the taxonomy and replaces any existing policy already attached. * `datacatalog.TaxonomyIamBinding`: 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 taxonomy are preserved. * `datacatalog.TaxonomyIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the taxonomy are preserved.

> **Note:** `datacatalog.TaxonomyIamPolicy` **cannot** be used in conjunction with `datacatalog.TaxonomyIamBinding` and `datacatalog.TaxonomyIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_taxonomy\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewTaxonomyIamPolicy(ctx, "policy", &datacatalog.TaxonomyIamPolicyArgs{
			Taxonomy:   pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_taxonomy\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewTaxonomyIamBinding(ctx, "binding", &datacatalog.TaxonomyIamBindingArgs{
			Taxonomy: pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.Name),
			Role:     pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_taxonomy\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewTaxonomyIamMember(ctx, "member", &datacatalog.TaxonomyIamMemberArgs{
			Taxonomy: pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.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}}/locations/{{region}}/taxonomies/{{taxonomy}} * {{project}}/{{region}}/{{taxonomy}} * {{region}}/{{taxonomy}} * {{taxonomy}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog taxonomy 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:datacatalog/taxonomyIamMember:TaxonomyIamMember editor "projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}} 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:datacatalog/taxonomyIamMember:TaxonomyIamMember editor "projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/taxonomyIamMember:TaxonomyIamMember editor projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}}

```

-> **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 GetTaxonomyIamMember added in v4.1.0

func GetTaxonomyIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TaxonomyIamMemberState, opts ...pulumi.ResourceOption) (*TaxonomyIamMember, error)

GetTaxonomyIamMember gets an existing TaxonomyIamMember 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 NewTaxonomyIamMember added in v4.1.0

func NewTaxonomyIamMember(ctx *pulumi.Context,
	name string, args *TaxonomyIamMemberArgs, opts ...pulumi.ResourceOption) (*TaxonomyIamMember, error)

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

func (*TaxonomyIamMember) ElementType added in v4.4.0

func (*TaxonomyIamMember) ElementType() reflect.Type

func (*TaxonomyIamMember) ToTaxonomyIamMemberOutput added in v4.4.0

func (i *TaxonomyIamMember) ToTaxonomyIamMemberOutput() TaxonomyIamMemberOutput

func (*TaxonomyIamMember) ToTaxonomyIamMemberOutputWithContext added in v4.4.0

func (i *TaxonomyIamMember) ToTaxonomyIamMemberOutputWithContext(ctx context.Context) TaxonomyIamMemberOutput

func (*TaxonomyIamMember) ToTaxonomyIamMemberPtrOutput added in v4.11.1

func (i *TaxonomyIamMember) ToTaxonomyIamMemberPtrOutput() TaxonomyIamMemberPtrOutput

func (*TaxonomyIamMember) ToTaxonomyIamMemberPtrOutputWithContext added in v4.11.1

func (i *TaxonomyIamMember) ToTaxonomyIamMemberPtrOutputWithContext(ctx context.Context) TaxonomyIamMemberPtrOutput

type TaxonomyIamMemberArgs added in v4.1.0

type TaxonomyIamMemberArgs struct {
	Condition TaxonomyIamMemberConditionPtrInput
	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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.TaxonomyIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringInput
}

The set of arguments for constructing a TaxonomyIamMember resource.

func (TaxonomyIamMemberArgs) ElementType added in v4.1.0

func (TaxonomyIamMemberArgs) ElementType() reflect.Type

type TaxonomyIamMemberArray added in v4.11.1

type TaxonomyIamMemberArray []TaxonomyIamMemberInput

func (TaxonomyIamMemberArray) ElementType added in v4.11.1

func (TaxonomyIamMemberArray) ElementType() reflect.Type

func (TaxonomyIamMemberArray) ToTaxonomyIamMemberArrayOutput added in v4.11.1

func (i TaxonomyIamMemberArray) ToTaxonomyIamMemberArrayOutput() TaxonomyIamMemberArrayOutput

func (TaxonomyIamMemberArray) ToTaxonomyIamMemberArrayOutputWithContext added in v4.11.1

func (i TaxonomyIamMemberArray) ToTaxonomyIamMemberArrayOutputWithContext(ctx context.Context) TaxonomyIamMemberArrayOutput

type TaxonomyIamMemberArrayInput added in v4.11.1

type TaxonomyIamMemberArrayInput interface {
	pulumi.Input

	ToTaxonomyIamMemberArrayOutput() TaxonomyIamMemberArrayOutput
	ToTaxonomyIamMemberArrayOutputWithContext(context.Context) TaxonomyIamMemberArrayOutput
}

TaxonomyIamMemberArrayInput is an input type that accepts TaxonomyIamMemberArray and TaxonomyIamMemberArrayOutput values. You can construct a concrete instance of `TaxonomyIamMemberArrayInput` via:

TaxonomyIamMemberArray{ TaxonomyIamMemberArgs{...} }

type TaxonomyIamMemberArrayOutput added in v4.11.1

type TaxonomyIamMemberArrayOutput struct{ *pulumi.OutputState }

func (TaxonomyIamMemberArrayOutput) ElementType added in v4.11.1

func (TaxonomyIamMemberArrayOutput) Index added in v4.11.1

func (TaxonomyIamMemberArrayOutput) ToTaxonomyIamMemberArrayOutput added in v4.11.1

func (o TaxonomyIamMemberArrayOutput) ToTaxonomyIamMemberArrayOutput() TaxonomyIamMemberArrayOutput

func (TaxonomyIamMemberArrayOutput) ToTaxonomyIamMemberArrayOutputWithContext added in v4.11.1

func (o TaxonomyIamMemberArrayOutput) ToTaxonomyIamMemberArrayOutputWithContext(ctx context.Context) TaxonomyIamMemberArrayOutput

type TaxonomyIamMemberCondition added in v4.1.0

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

type TaxonomyIamMemberConditionArgs added in v4.1.0

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

func (TaxonomyIamMemberConditionArgs) ElementType added in v4.1.0

func (TaxonomyIamMemberConditionArgs) ToTaxonomyIamMemberConditionOutput added in v4.1.0

func (i TaxonomyIamMemberConditionArgs) ToTaxonomyIamMemberConditionOutput() TaxonomyIamMemberConditionOutput

func (TaxonomyIamMemberConditionArgs) ToTaxonomyIamMemberConditionOutputWithContext added in v4.1.0

func (i TaxonomyIamMemberConditionArgs) ToTaxonomyIamMemberConditionOutputWithContext(ctx context.Context) TaxonomyIamMemberConditionOutput

func (TaxonomyIamMemberConditionArgs) ToTaxonomyIamMemberConditionPtrOutput added in v4.1.0

func (i TaxonomyIamMemberConditionArgs) ToTaxonomyIamMemberConditionPtrOutput() TaxonomyIamMemberConditionPtrOutput

func (TaxonomyIamMemberConditionArgs) ToTaxonomyIamMemberConditionPtrOutputWithContext added in v4.1.0

func (i TaxonomyIamMemberConditionArgs) ToTaxonomyIamMemberConditionPtrOutputWithContext(ctx context.Context) TaxonomyIamMemberConditionPtrOutput

type TaxonomyIamMemberConditionInput added in v4.1.0

type TaxonomyIamMemberConditionInput interface {
	pulumi.Input

	ToTaxonomyIamMemberConditionOutput() TaxonomyIamMemberConditionOutput
	ToTaxonomyIamMemberConditionOutputWithContext(context.Context) TaxonomyIamMemberConditionOutput
}

TaxonomyIamMemberConditionInput is an input type that accepts TaxonomyIamMemberConditionArgs and TaxonomyIamMemberConditionOutput values. You can construct a concrete instance of `TaxonomyIamMemberConditionInput` via:

TaxonomyIamMemberConditionArgs{...}

type TaxonomyIamMemberConditionOutput added in v4.1.0

type TaxonomyIamMemberConditionOutput struct{ *pulumi.OutputState }

func (TaxonomyIamMemberConditionOutput) Description added in v4.1.0

func (TaxonomyIamMemberConditionOutput) ElementType added in v4.1.0

func (TaxonomyIamMemberConditionOutput) Expression added in v4.1.0

func (TaxonomyIamMemberConditionOutput) Title added in v4.1.0

func (TaxonomyIamMemberConditionOutput) ToTaxonomyIamMemberConditionOutput added in v4.1.0

func (o TaxonomyIamMemberConditionOutput) ToTaxonomyIamMemberConditionOutput() TaxonomyIamMemberConditionOutput

func (TaxonomyIamMemberConditionOutput) ToTaxonomyIamMemberConditionOutputWithContext added in v4.1.0

func (o TaxonomyIamMemberConditionOutput) ToTaxonomyIamMemberConditionOutputWithContext(ctx context.Context) TaxonomyIamMemberConditionOutput

func (TaxonomyIamMemberConditionOutput) ToTaxonomyIamMemberConditionPtrOutput added in v4.1.0

func (o TaxonomyIamMemberConditionOutput) ToTaxonomyIamMemberConditionPtrOutput() TaxonomyIamMemberConditionPtrOutput

func (TaxonomyIamMemberConditionOutput) ToTaxonomyIamMemberConditionPtrOutputWithContext added in v4.1.0

func (o TaxonomyIamMemberConditionOutput) ToTaxonomyIamMemberConditionPtrOutputWithContext(ctx context.Context) TaxonomyIamMemberConditionPtrOutput

type TaxonomyIamMemberConditionPtrInput added in v4.1.0

type TaxonomyIamMemberConditionPtrInput interface {
	pulumi.Input

	ToTaxonomyIamMemberConditionPtrOutput() TaxonomyIamMemberConditionPtrOutput
	ToTaxonomyIamMemberConditionPtrOutputWithContext(context.Context) TaxonomyIamMemberConditionPtrOutput
}

TaxonomyIamMemberConditionPtrInput is an input type that accepts TaxonomyIamMemberConditionArgs, TaxonomyIamMemberConditionPtr and TaxonomyIamMemberConditionPtrOutput values. You can construct a concrete instance of `TaxonomyIamMemberConditionPtrInput` via:

        TaxonomyIamMemberConditionArgs{...}

or:

        nil

func TaxonomyIamMemberConditionPtr added in v4.1.0

type TaxonomyIamMemberConditionPtrOutput added in v4.1.0

type TaxonomyIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (TaxonomyIamMemberConditionPtrOutput) Description added in v4.1.0

func (TaxonomyIamMemberConditionPtrOutput) Elem added in v4.1.0

func (TaxonomyIamMemberConditionPtrOutput) ElementType added in v4.1.0

func (TaxonomyIamMemberConditionPtrOutput) Expression added in v4.1.0

func (TaxonomyIamMemberConditionPtrOutput) Title added in v4.1.0

func (TaxonomyIamMemberConditionPtrOutput) ToTaxonomyIamMemberConditionPtrOutput added in v4.1.0

func (o TaxonomyIamMemberConditionPtrOutput) ToTaxonomyIamMemberConditionPtrOutput() TaxonomyIamMemberConditionPtrOutput

func (TaxonomyIamMemberConditionPtrOutput) ToTaxonomyIamMemberConditionPtrOutputWithContext added in v4.1.0

func (o TaxonomyIamMemberConditionPtrOutput) ToTaxonomyIamMemberConditionPtrOutputWithContext(ctx context.Context) TaxonomyIamMemberConditionPtrOutput

type TaxonomyIamMemberInput added in v4.4.0

type TaxonomyIamMemberInput interface {
	pulumi.Input

	ToTaxonomyIamMemberOutput() TaxonomyIamMemberOutput
	ToTaxonomyIamMemberOutputWithContext(ctx context.Context) TaxonomyIamMemberOutput
}

type TaxonomyIamMemberMap added in v4.11.1

type TaxonomyIamMemberMap map[string]TaxonomyIamMemberInput

func (TaxonomyIamMemberMap) ElementType added in v4.11.1

func (TaxonomyIamMemberMap) ElementType() reflect.Type

func (TaxonomyIamMemberMap) ToTaxonomyIamMemberMapOutput added in v4.11.1

func (i TaxonomyIamMemberMap) ToTaxonomyIamMemberMapOutput() TaxonomyIamMemberMapOutput

func (TaxonomyIamMemberMap) ToTaxonomyIamMemberMapOutputWithContext added in v4.11.1

func (i TaxonomyIamMemberMap) ToTaxonomyIamMemberMapOutputWithContext(ctx context.Context) TaxonomyIamMemberMapOutput

type TaxonomyIamMemberMapInput added in v4.11.1

type TaxonomyIamMemberMapInput interface {
	pulumi.Input

	ToTaxonomyIamMemberMapOutput() TaxonomyIamMemberMapOutput
	ToTaxonomyIamMemberMapOutputWithContext(context.Context) TaxonomyIamMemberMapOutput
}

TaxonomyIamMemberMapInput is an input type that accepts TaxonomyIamMemberMap and TaxonomyIamMemberMapOutput values. You can construct a concrete instance of `TaxonomyIamMemberMapInput` via:

TaxonomyIamMemberMap{ "key": TaxonomyIamMemberArgs{...} }

type TaxonomyIamMemberMapOutput added in v4.11.1

type TaxonomyIamMemberMapOutput struct{ *pulumi.OutputState }

func (TaxonomyIamMemberMapOutput) ElementType added in v4.11.1

func (TaxonomyIamMemberMapOutput) ElementType() reflect.Type

func (TaxonomyIamMemberMapOutput) MapIndex added in v4.11.1

func (TaxonomyIamMemberMapOutput) ToTaxonomyIamMemberMapOutput added in v4.11.1

func (o TaxonomyIamMemberMapOutput) ToTaxonomyIamMemberMapOutput() TaxonomyIamMemberMapOutput

func (TaxonomyIamMemberMapOutput) ToTaxonomyIamMemberMapOutputWithContext added in v4.11.1

func (o TaxonomyIamMemberMapOutput) ToTaxonomyIamMemberMapOutputWithContext(ctx context.Context) TaxonomyIamMemberMapOutput

type TaxonomyIamMemberOutput added in v4.4.0

type TaxonomyIamMemberOutput struct {
	*pulumi.OutputState
}

func (TaxonomyIamMemberOutput) ElementType added in v4.4.0

func (TaxonomyIamMemberOutput) ElementType() reflect.Type

func (TaxonomyIamMemberOutput) ToTaxonomyIamMemberOutput added in v4.4.0

func (o TaxonomyIamMemberOutput) ToTaxonomyIamMemberOutput() TaxonomyIamMemberOutput

func (TaxonomyIamMemberOutput) ToTaxonomyIamMemberOutputWithContext added in v4.4.0

func (o TaxonomyIamMemberOutput) ToTaxonomyIamMemberOutputWithContext(ctx context.Context) TaxonomyIamMemberOutput

func (TaxonomyIamMemberOutput) ToTaxonomyIamMemberPtrOutput added in v4.11.1

func (o TaxonomyIamMemberOutput) ToTaxonomyIamMemberPtrOutput() TaxonomyIamMemberPtrOutput

func (TaxonomyIamMemberOutput) ToTaxonomyIamMemberPtrOutputWithContext added in v4.11.1

func (o TaxonomyIamMemberOutput) ToTaxonomyIamMemberPtrOutputWithContext(ctx context.Context) TaxonomyIamMemberPtrOutput

type TaxonomyIamMemberPtrInput added in v4.11.1

type TaxonomyIamMemberPtrInput interface {
	pulumi.Input

	ToTaxonomyIamMemberPtrOutput() TaxonomyIamMemberPtrOutput
	ToTaxonomyIamMemberPtrOutputWithContext(ctx context.Context) TaxonomyIamMemberPtrOutput
}

type TaxonomyIamMemberPtrOutput added in v4.11.1

type TaxonomyIamMemberPtrOutput struct {
	*pulumi.OutputState
}

func (TaxonomyIamMemberPtrOutput) ElementType added in v4.11.1

func (TaxonomyIamMemberPtrOutput) ElementType() reflect.Type

func (TaxonomyIamMemberPtrOutput) ToTaxonomyIamMemberPtrOutput added in v4.11.1

func (o TaxonomyIamMemberPtrOutput) ToTaxonomyIamMemberPtrOutput() TaxonomyIamMemberPtrOutput

func (TaxonomyIamMemberPtrOutput) ToTaxonomyIamMemberPtrOutputWithContext added in v4.11.1

func (o TaxonomyIamMemberPtrOutput) ToTaxonomyIamMemberPtrOutputWithContext(ctx context.Context) TaxonomyIamMemberPtrOutput

type TaxonomyIamMemberState added in v4.1.0

type TaxonomyIamMemberState struct {
	Condition TaxonomyIamMemberConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag   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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `datacatalog.TaxonomyIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringPtrInput
}

func (TaxonomyIamMemberState) ElementType added in v4.1.0

func (TaxonomyIamMemberState) ElementType() reflect.Type

type TaxonomyIamPolicy added in v4.1.0

type TaxonomyIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// 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.
	Project pulumi.StringOutput `pulumi:"project"`
	Region  pulumi.StringOutput `pulumi:"region"`
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringOutput `pulumi:"taxonomy"`
}

Three different resources help you manage your IAM policy for Data catalog Taxonomy. Each of these resources serves a different use case:

* `datacatalog.TaxonomyIamPolicy`: Authoritative. Sets the IAM policy for the taxonomy and replaces any existing policy already attached. * `datacatalog.TaxonomyIamBinding`: 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 taxonomy are preserved. * `datacatalog.TaxonomyIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the taxonomy are preserved.

> **Note:** `datacatalog.TaxonomyIamPolicy` **cannot** be used in conjunction with `datacatalog.TaxonomyIamBinding` and `datacatalog.TaxonomyIamMember` or they will fight over what your policy should be.

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

## google\_data\_catalog\_taxonomy\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = datacatalog.NewTaxonomyIamPolicy(ctx, "policy", &datacatalog.TaxonomyIamPolicyArgs{
			Taxonomy:   pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.Name),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_taxonomy\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewTaxonomyIamBinding(ctx, "binding", &datacatalog.TaxonomyIamBindingArgs{
			Taxonomy: pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.Name),
			Role:     pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_data\_catalog\_taxonomy\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/datacatalog"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := datacatalog.NewTaxonomyIamMember(ctx, "member", &datacatalog.TaxonomyIamMemberArgs{
			Taxonomy: pulumi.Any(google_data_catalog_taxonomy.Basic_taxonomy.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}}/locations/{{region}}/taxonomies/{{taxonomy}} * {{project}}/{{region}}/{{taxonomy}} * {{region}}/{{taxonomy}} * {{taxonomy}} Any variables not passed in the import command will be taken from the provider configuration. Data catalog taxonomy 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:datacatalog/taxonomyIamPolicy:TaxonomyIamPolicy editor "projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}} 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:datacatalog/taxonomyIamPolicy:TaxonomyIamPolicy editor "projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}} roles/viewer"

```

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

```sh

$ pulumi import gcp:datacatalog/taxonomyIamPolicy:TaxonomyIamPolicy editor projects/{{project}}/locations/{{region}}/taxonomies/{{taxonomy}}

```

-> **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 GetTaxonomyIamPolicy added in v4.1.0

func GetTaxonomyIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TaxonomyIamPolicyState, opts ...pulumi.ResourceOption) (*TaxonomyIamPolicy, error)

GetTaxonomyIamPolicy gets an existing TaxonomyIamPolicy 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 NewTaxonomyIamPolicy added in v4.1.0

func NewTaxonomyIamPolicy(ctx *pulumi.Context,
	name string, args *TaxonomyIamPolicyArgs, opts ...pulumi.ResourceOption) (*TaxonomyIamPolicy, error)

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

func (*TaxonomyIamPolicy) ElementType added in v4.4.0

func (*TaxonomyIamPolicy) ElementType() reflect.Type

func (*TaxonomyIamPolicy) ToTaxonomyIamPolicyOutput added in v4.4.0

func (i *TaxonomyIamPolicy) ToTaxonomyIamPolicyOutput() TaxonomyIamPolicyOutput

func (*TaxonomyIamPolicy) ToTaxonomyIamPolicyOutputWithContext added in v4.4.0

func (i *TaxonomyIamPolicy) ToTaxonomyIamPolicyOutputWithContext(ctx context.Context) TaxonomyIamPolicyOutput

func (*TaxonomyIamPolicy) ToTaxonomyIamPolicyPtrOutput added in v4.11.1

func (i *TaxonomyIamPolicy) ToTaxonomyIamPolicyPtrOutput() TaxonomyIamPolicyPtrOutput

func (*TaxonomyIamPolicy) ToTaxonomyIamPolicyPtrOutputWithContext added in v4.11.1

func (i *TaxonomyIamPolicy) ToTaxonomyIamPolicyPtrOutputWithContext(ctx context.Context) TaxonomyIamPolicyPtrOutput

type TaxonomyIamPolicyArgs added in v4.1.0

type TaxonomyIamPolicyArgs struct {
	// 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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringInput
}

The set of arguments for constructing a TaxonomyIamPolicy resource.

func (TaxonomyIamPolicyArgs) ElementType added in v4.1.0

func (TaxonomyIamPolicyArgs) ElementType() reflect.Type

type TaxonomyIamPolicyArray added in v4.11.1

type TaxonomyIamPolicyArray []TaxonomyIamPolicyInput

func (TaxonomyIamPolicyArray) ElementType added in v4.11.1

func (TaxonomyIamPolicyArray) ElementType() reflect.Type

func (TaxonomyIamPolicyArray) ToTaxonomyIamPolicyArrayOutput added in v4.11.1

func (i TaxonomyIamPolicyArray) ToTaxonomyIamPolicyArrayOutput() TaxonomyIamPolicyArrayOutput

func (TaxonomyIamPolicyArray) ToTaxonomyIamPolicyArrayOutputWithContext added in v4.11.1

func (i TaxonomyIamPolicyArray) ToTaxonomyIamPolicyArrayOutputWithContext(ctx context.Context) TaxonomyIamPolicyArrayOutput

type TaxonomyIamPolicyArrayInput added in v4.11.1

type TaxonomyIamPolicyArrayInput interface {
	pulumi.Input

	ToTaxonomyIamPolicyArrayOutput() TaxonomyIamPolicyArrayOutput
	ToTaxonomyIamPolicyArrayOutputWithContext(context.Context) TaxonomyIamPolicyArrayOutput
}

TaxonomyIamPolicyArrayInput is an input type that accepts TaxonomyIamPolicyArray and TaxonomyIamPolicyArrayOutput values. You can construct a concrete instance of `TaxonomyIamPolicyArrayInput` via:

TaxonomyIamPolicyArray{ TaxonomyIamPolicyArgs{...} }

type TaxonomyIamPolicyArrayOutput added in v4.11.1

type TaxonomyIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (TaxonomyIamPolicyArrayOutput) ElementType added in v4.11.1

func (TaxonomyIamPolicyArrayOutput) Index added in v4.11.1

func (TaxonomyIamPolicyArrayOutput) ToTaxonomyIamPolicyArrayOutput added in v4.11.1

func (o TaxonomyIamPolicyArrayOutput) ToTaxonomyIamPolicyArrayOutput() TaxonomyIamPolicyArrayOutput

func (TaxonomyIamPolicyArrayOutput) ToTaxonomyIamPolicyArrayOutputWithContext added in v4.11.1

func (o TaxonomyIamPolicyArrayOutput) ToTaxonomyIamPolicyArrayOutputWithContext(ctx context.Context) TaxonomyIamPolicyArrayOutput

type TaxonomyIamPolicyInput added in v4.4.0

type TaxonomyIamPolicyInput interface {
	pulumi.Input

	ToTaxonomyIamPolicyOutput() TaxonomyIamPolicyOutput
	ToTaxonomyIamPolicyOutputWithContext(ctx context.Context) TaxonomyIamPolicyOutput
}

type TaxonomyIamPolicyMap added in v4.11.1

type TaxonomyIamPolicyMap map[string]TaxonomyIamPolicyInput

func (TaxonomyIamPolicyMap) ElementType added in v4.11.1

func (TaxonomyIamPolicyMap) ElementType() reflect.Type

func (TaxonomyIamPolicyMap) ToTaxonomyIamPolicyMapOutput added in v4.11.1

func (i TaxonomyIamPolicyMap) ToTaxonomyIamPolicyMapOutput() TaxonomyIamPolicyMapOutput

func (TaxonomyIamPolicyMap) ToTaxonomyIamPolicyMapOutputWithContext added in v4.11.1

func (i TaxonomyIamPolicyMap) ToTaxonomyIamPolicyMapOutputWithContext(ctx context.Context) TaxonomyIamPolicyMapOutput

type TaxonomyIamPolicyMapInput added in v4.11.1

type TaxonomyIamPolicyMapInput interface {
	pulumi.Input

	ToTaxonomyIamPolicyMapOutput() TaxonomyIamPolicyMapOutput
	ToTaxonomyIamPolicyMapOutputWithContext(context.Context) TaxonomyIamPolicyMapOutput
}

TaxonomyIamPolicyMapInput is an input type that accepts TaxonomyIamPolicyMap and TaxonomyIamPolicyMapOutput values. You can construct a concrete instance of `TaxonomyIamPolicyMapInput` via:

TaxonomyIamPolicyMap{ "key": TaxonomyIamPolicyArgs{...} }

type TaxonomyIamPolicyMapOutput added in v4.11.1

type TaxonomyIamPolicyMapOutput struct{ *pulumi.OutputState }

func (TaxonomyIamPolicyMapOutput) ElementType added in v4.11.1

func (TaxonomyIamPolicyMapOutput) ElementType() reflect.Type

func (TaxonomyIamPolicyMapOutput) MapIndex added in v4.11.1

func (TaxonomyIamPolicyMapOutput) ToTaxonomyIamPolicyMapOutput added in v4.11.1

func (o TaxonomyIamPolicyMapOutput) ToTaxonomyIamPolicyMapOutput() TaxonomyIamPolicyMapOutput

func (TaxonomyIamPolicyMapOutput) ToTaxonomyIamPolicyMapOutputWithContext added in v4.11.1

func (o TaxonomyIamPolicyMapOutput) ToTaxonomyIamPolicyMapOutputWithContext(ctx context.Context) TaxonomyIamPolicyMapOutput

type TaxonomyIamPolicyOutput added in v4.4.0

type TaxonomyIamPolicyOutput struct {
	*pulumi.OutputState
}

func (TaxonomyIamPolicyOutput) ElementType added in v4.4.0

func (TaxonomyIamPolicyOutput) ElementType() reflect.Type

func (TaxonomyIamPolicyOutput) ToTaxonomyIamPolicyOutput added in v4.4.0

func (o TaxonomyIamPolicyOutput) ToTaxonomyIamPolicyOutput() TaxonomyIamPolicyOutput

func (TaxonomyIamPolicyOutput) ToTaxonomyIamPolicyOutputWithContext added in v4.4.0

func (o TaxonomyIamPolicyOutput) ToTaxonomyIamPolicyOutputWithContext(ctx context.Context) TaxonomyIamPolicyOutput

func (TaxonomyIamPolicyOutput) ToTaxonomyIamPolicyPtrOutput added in v4.11.1

func (o TaxonomyIamPolicyOutput) ToTaxonomyIamPolicyPtrOutput() TaxonomyIamPolicyPtrOutput

func (TaxonomyIamPolicyOutput) ToTaxonomyIamPolicyPtrOutputWithContext added in v4.11.1

func (o TaxonomyIamPolicyOutput) ToTaxonomyIamPolicyPtrOutputWithContext(ctx context.Context) TaxonomyIamPolicyPtrOutput

type TaxonomyIamPolicyPtrInput added in v4.11.1

type TaxonomyIamPolicyPtrInput interface {
	pulumi.Input

	ToTaxonomyIamPolicyPtrOutput() TaxonomyIamPolicyPtrOutput
	ToTaxonomyIamPolicyPtrOutputWithContext(ctx context.Context) TaxonomyIamPolicyPtrOutput
}

type TaxonomyIamPolicyPtrOutput added in v4.11.1

type TaxonomyIamPolicyPtrOutput struct {
	*pulumi.OutputState
}

func (TaxonomyIamPolicyPtrOutput) ElementType added in v4.11.1

func (TaxonomyIamPolicyPtrOutput) ElementType() reflect.Type

func (TaxonomyIamPolicyPtrOutput) ToTaxonomyIamPolicyPtrOutput added in v4.11.1

func (o TaxonomyIamPolicyPtrOutput) ToTaxonomyIamPolicyPtrOutput() TaxonomyIamPolicyPtrOutput

func (TaxonomyIamPolicyPtrOutput) ToTaxonomyIamPolicyPtrOutputWithContext added in v4.11.1

func (o TaxonomyIamPolicyPtrOutput) ToTaxonomyIamPolicyPtrOutputWithContext(ctx context.Context) TaxonomyIamPolicyPtrOutput

type TaxonomyIamPolicyState added in v4.1.0

type TaxonomyIamPolicyState struct {
	// (Computed) The etag of the IAM policy.
	Etag 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.
	Project pulumi.StringPtrInput
	Region  pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	Taxonomy pulumi.StringPtrInput
}

func (TaxonomyIamPolicyState) ElementType added in v4.1.0

func (TaxonomyIamPolicyState) ElementType() reflect.Type

type TaxonomyInput added in v4.4.0

type TaxonomyInput interface {
	pulumi.Input

	ToTaxonomyOutput() TaxonomyOutput
	ToTaxonomyOutputWithContext(ctx context.Context) TaxonomyOutput
}

type TaxonomyMap added in v4.11.1

type TaxonomyMap map[string]TaxonomyInput

func (TaxonomyMap) ElementType added in v4.11.1

func (TaxonomyMap) ElementType() reflect.Type

func (TaxonomyMap) ToTaxonomyMapOutput added in v4.11.1

func (i TaxonomyMap) ToTaxonomyMapOutput() TaxonomyMapOutput

func (TaxonomyMap) ToTaxonomyMapOutputWithContext added in v4.11.1

func (i TaxonomyMap) ToTaxonomyMapOutputWithContext(ctx context.Context) TaxonomyMapOutput

type TaxonomyMapInput added in v4.11.1

type TaxonomyMapInput interface {
	pulumi.Input

	ToTaxonomyMapOutput() TaxonomyMapOutput
	ToTaxonomyMapOutputWithContext(context.Context) TaxonomyMapOutput
}

TaxonomyMapInput is an input type that accepts TaxonomyMap and TaxonomyMapOutput values. You can construct a concrete instance of `TaxonomyMapInput` via:

TaxonomyMap{ "key": TaxonomyArgs{...} }

type TaxonomyMapOutput added in v4.11.1

type TaxonomyMapOutput struct{ *pulumi.OutputState }

func (TaxonomyMapOutput) ElementType added in v4.11.1

func (TaxonomyMapOutput) ElementType() reflect.Type

func (TaxonomyMapOutput) MapIndex added in v4.11.1

func (TaxonomyMapOutput) ToTaxonomyMapOutput added in v4.11.1

func (o TaxonomyMapOutput) ToTaxonomyMapOutput() TaxonomyMapOutput

func (TaxonomyMapOutput) ToTaxonomyMapOutputWithContext added in v4.11.1

func (o TaxonomyMapOutput) ToTaxonomyMapOutputWithContext(ctx context.Context) TaxonomyMapOutput

type TaxonomyOutput added in v4.4.0

type TaxonomyOutput struct {
	*pulumi.OutputState
}

func (TaxonomyOutput) ElementType added in v4.4.0

func (TaxonomyOutput) ElementType() reflect.Type

func (TaxonomyOutput) ToTaxonomyOutput added in v4.4.0

func (o TaxonomyOutput) ToTaxonomyOutput() TaxonomyOutput

func (TaxonomyOutput) ToTaxonomyOutputWithContext added in v4.4.0

func (o TaxonomyOutput) ToTaxonomyOutputWithContext(ctx context.Context) TaxonomyOutput

func (TaxonomyOutput) ToTaxonomyPtrOutput added in v4.11.1

func (o TaxonomyOutput) ToTaxonomyPtrOutput() TaxonomyPtrOutput

func (TaxonomyOutput) ToTaxonomyPtrOutputWithContext added in v4.11.1

func (o TaxonomyOutput) ToTaxonomyPtrOutputWithContext(ctx context.Context) TaxonomyPtrOutput

type TaxonomyPtrInput added in v4.11.1

type TaxonomyPtrInput interface {
	pulumi.Input

	ToTaxonomyPtrOutput() TaxonomyPtrOutput
	ToTaxonomyPtrOutputWithContext(ctx context.Context) TaxonomyPtrOutput
}

type TaxonomyPtrOutput added in v4.11.1

type TaxonomyPtrOutput struct {
	*pulumi.OutputState
}

func (TaxonomyPtrOutput) ElementType added in v4.11.1

func (TaxonomyPtrOutput) ElementType() reflect.Type

func (TaxonomyPtrOutput) ToTaxonomyPtrOutput added in v4.11.1

func (o TaxonomyPtrOutput) ToTaxonomyPtrOutput() TaxonomyPtrOutput

func (TaxonomyPtrOutput) ToTaxonomyPtrOutputWithContext added in v4.11.1

func (o TaxonomyPtrOutput) ToTaxonomyPtrOutputWithContext(ctx context.Context) TaxonomyPtrOutput

type TaxonomyState added in v4.1.0

type TaxonomyState struct {
	// A list of policy types that are activated for this taxonomy. If not set,
	// defaults to an empty list.
	// Each value may be one of `POLICY_TYPE_UNSPECIFIED` and `FINE_GRAINED_ACCESS_CONTROL`.
	ActivatedPolicyTypes pulumi.StringArrayInput
	// Description of this taxonomy. It must: contain only unicode characters,
	// tabs, newlines, carriage returns and page breaks; and be at most 2000 bytes
	// long when encoded in UTF-8. If not set, defaults to an empty description.
	Description pulumi.StringPtrInput
	// User defined name of this taxonomy.
	// It must: contain only unicode letters, numbers, underscores, dashes
	// and spaces; not start or end with spaces; and be at most 200 bytes
	// long when encoded in UTF-8.
	DisplayName pulumi.StringPtrInput
	// Resource name of this taxonomy, whose format is: "projects/{project}/locations/{region}/taxonomies/{taxonomy}".
	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
	// Taxonomy location region.
	Region pulumi.StringPtrInput
}

func (TaxonomyState) ElementType added in v4.1.0

func (TaxonomyState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL