gkehub

package
v7.0.0-rc.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Feature

type Feature struct {
	pulumi.CustomResourceState

	// Output only. When the Feature resource was created.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Output only. When the Feature resource was deleted.
	DeleteTime pulumi.StringOutput `pulumi:"deleteTime"`
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapOutput `pulumi:"effectiveLabels"`
	// GCP labels for this Feature.
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The location for the resource
	//
	// ***
	Location pulumi.StringOutput `pulumi:"location"`
	// The full, unique name of this Feature resource
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapOutput `pulumi:"pulumiLabels"`
	// State of the Feature resource itself.
	// Structure is documented below.
	ResourceStates FeatureResourceStateArrayOutput `pulumi:"resourceStates"`
	// Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused.
	// Structure is documented below.
	Spec FeatureSpecPtrOutput `pulumi:"spec"`
	// (Output)
	// Output only. The "running state" of the Feature in this Hub.
	// Structure is documented below.
	States FeatureStateTypeArrayOutput `pulumi:"states"`
	// (Output)
	// The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
}

Feature represents the settings and status of any Hub Feature.

To get more information about Feature, see:

* [API documentation](https://cloud.google.com/anthos/fleet-management/docs/reference/rest/v1/projects.locations.features) * How-to Guides

## Example Usage ### Gkehub Feature Multi Cluster Ingress

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cluster, err := container.NewCluster(ctx, "cluster", &container.ClusterArgs{
			Location:         pulumi.String("us-central1-a"),
			InitialNodeCount: pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		membership, err := gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
			MembershipId: pulumi.String("my-membership"),
			Endpoint: &gkehub.MembershipEndpointArgs{
				GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
					ResourceLink: cluster.ID().ApplyT(func(id string) (string, error) {
						return fmt.Sprintf("//container.googleapis.com/%v", id), nil
					}).(pulumi.StringOutput),
				},
			},
			Description: pulumi.String("Membership"),
		})
		if err != nil {
			return err
		}
		_, err = gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Multiclusteringress: &gkehub.FeatureSpecMulticlusteringressArgs{
					ConfigMembership: membership.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Gkehub Feature Multi Cluster Service Discovery

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
			Location: pulumi.String("global"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Gkehub Feature Anthos Service Mesh

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Enable Fleet Observability For Default Logs With Copy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Fleetobservability: &gkehub.FeatureSpecFleetobservabilityArgs{
					LoggingConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigArgs{
						DefaultConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs{
							Mode: pulumi.String("COPY"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Enable Fleet Observability For Scope Logs With Move

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Fleetobservability: &gkehub.FeatureSpecFleetobservabilityArgs{
					LoggingConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigArgs{
						FleetScopeLogsConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs{
							Mode: pulumi.String("MOVE"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Enable Fleet Observability For Both Default And Scope Logs

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
			Spec: &gkehub.FeatureSpecArgs{
				Fleetobservability: &gkehub.FeatureSpecFleetobservabilityArgs{
					LoggingConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigArgs{
						DefaultConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs{
							Mode: pulumi.String("COPY"),
						},
						FleetScopeLogsConfig: &gkehub.FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs{
							Mode: pulumi.String("MOVE"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Feature can be imported using any of these accepted formats

```sh

$ pulumi import gcp:gkehub/feature:Feature default projects/{{project}}/locations/{{location}}/features/{{name}}

```

```sh

$ pulumi import gcp:gkehub/feature:Feature default {{project}}/{{location}}/{{name}}

```

```sh

$ pulumi import gcp:gkehub/feature:Feature default {{location}}/{{name}}

```

func GetFeature

func GetFeature(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FeatureState, opts ...pulumi.ResourceOption) (*Feature, error)

GetFeature gets an existing Feature 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 NewFeature

func NewFeature(ctx *pulumi.Context,
	name string, args *FeatureArgs, opts ...pulumi.ResourceOption) (*Feature, error)

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

func (*Feature) ElementType

func (*Feature) ElementType() reflect.Type

func (*Feature) ToFeatureOutput

func (i *Feature) ToFeatureOutput() FeatureOutput

func (*Feature) ToFeatureOutputWithContext

func (i *Feature) ToFeatureOutputWithContext(ctx context.Context) FeatureOutput

func (*Feature) ToOutput

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

type FeatureArgs

type FeatureArgs struct {
	// GCP labels for this Feature.
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The location for the resource
	//
	// ***
	Location pulumi.StringInput
	// The full, unique name of this Feature resource
	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
	// Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused.
	// Structure is documented below.
	Spec FeatureSpecPtrInput
}

The set of arguments for constructing a Feature resource.

func (FeatureArgs) ElementType

func (FeatureArgs) ElementType() reflect.Type

type FeatureArray

type FeatureArray []FeatureInput

func (FeatureArray) ElementType

func (FeatureArray) ElementType() reflect.Type

func (FeatureArray) ToFeatureArrayOutput

func (i FeatureArray) ToFeatureArrayOutput() FeatureArrayOutput

func (FeatureArray) ToFeatureArrayOutputWithContext

func (i FeatureArray) ToFeatureArrayOutputWithContext(ctx context.Context) FeatureArrayOutput

func (FeatureArray) ToOutput

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

type FeatureArrayInput

type FeatureArrayInput interface {
	pulumi.Input

	ToFeatureArrayOutput() FeatureArrayOutput
	ToFeatureArrayOutputWithContext(context.Context) FeatureArrayOutput
}

FeatureArrayInput is an input type that accepts FeatureArray and FeatureArrayOutput values. You can construct a concrete instance of `FeatureArrayInput` via:

FeatureArray{ FeatureArgs{...} }

type FeatureArrayOutput

type FeatureArrayOutput struct{ *pulumi.OutputState }

func (FeatureArrayOutput) ElementType

func (FeatureArrayOutput) ElementType() reflect.Type

func (FeatureArrayOutput) Index

func (FeatureArrayOutput) ToFeatureArrayOutput

func (o FeatureArrayOutput) ToFeatureArrayOutput() FeatureArrayOutput

func (FeatureArrayOutput) ToFeatureArrayOutputWithContext

func (o FeatureArrayOutput) ToFeatureArrayOutputWithContext(ctx context.Context) FeatureArrayOutput

func (FeatureArrayOutput) ToOutput

type FeatureIamBinding

type FeatureIamBinding struct {
	pulumi.CustomResourceState

	Condition FeatureIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The location for the resource Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringOutput      `pulumi:"location"`
	Members  pulumi.StringArrayOutput `pulumi:"members"`
	// Used to find the parent resource to bind the IAM policy to
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `gkehub.FeatureIamBinding` 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 GKEHub Feature. Each of these resources serves a different use case:

* `gkehub.FeatureIamPolicy`: Authoritative. Sets the IAM policy for the feature and replaces any existing policy already attached. * `gkehub.FeatureIamBinding`: 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 feature are preserved. * `gkehub.FeatureIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the feature are preserved.

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

* `gkehub.FeatureIamPolicy`: Retrieves the IAM policy for the feature

> **Note:** `gkehub.FeatureIamPolicy` **cannot** be used in conjunction with `gkehub.FeatureIamBinding` and `gkehub.FeatureIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_feature\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewFeatureIamPolicy(ctx, "policy", &gkehub.FeatureIamPolicyArgs{
			Project:    pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location:   pulumi.Any(google_gke_hub_feature.Feature.Location),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_feature\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeatureIamBinding(ctx, "binding", &gkehub.FeatureIamBindingArgs{
			Project:  pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location: pulumi.Any(google_gke_hub_feature.Feature.Location),
			Role:     pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_feature\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeatureIamMember(ctx, "member", &gkehub.FeatureIamMemberArgs{
			Project:  pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location: pulumi.Any(google_gke_hub_feature.Feature.Location),
			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/{{location}}/features/{{name}} * {{project}}/{{location}}/{{name}} * {{location}}/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub feature 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:gkehub/featureIamBinding:FeatureIamBinding editor "projects/{{project}}/locations/{{location}}/features/{{feature}} 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:gkehub/featureIamBinding:FeatureIamBinding editor "projects/{{project}}/locations/{{location}}/features/{{feature}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/featureIamBinding:FeatureIamBinding editor projects/{{project}}/locations/{{location}}/features/{{feature}}

```

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

func GetFeatureIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FeatureIamBindingState, opts ...pulumi.ResourceOption) (*FeatureIamBinding, error)

GetFeatureIamBinding gets an existing FeatureIamBinding 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 NewFeatureIamBinding

func NewFeatureIamBinding(ctx *pulumi.Context,
	name string, args *FeatureIamBindingArgs, opts ...pulumi.ResourceOption) (*FeatureIamBinding, error)

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

func (*FeatureIamBinding) ElementType

func (*FeatureIamBinding) ElementType() reflect.Type

func (*FeatureIamBinding) ToFeatureIamBindingOutput

func (i *FeatureIamBinding) ToFeatureIamBindingOutput() FeatureIamBindingOutput

func (*FeatureIamBinding) ToFeatureIamBindingOutputWithContext

func (i *FeatureIamBinding) ToFeatureIamBindingOutputWithContext(ctx context.Context) FeatureIamBindingOutput

func (*FeatureIamBinding) ToOutput

type FeatureIamBindingArgs

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

func (FeatureIamBindingArgs) ElementType

func (FeatureIamBindingArgs) ElementType() reflect.Type

type FeatureIamBindingArray

type FeatureIamBindingArray []FeatureIamBindingInput

func (FeatureIamBindingArray) ElementType

func (FeatureIamBindingArray) ElementType() reflect.Type

func (FeatureIamBindingArray) ToFeatureIamBindingArrayOutput

func (i FeatureIamBindingArray) ToFeatureIamBindingArrayOutput() FeatureIamBindingArrayOutput

func (FeatureIamBindingArray) ToFeatureIamBindingArrayOutputWithContext

func (i FeatureIamBindingArray) ToFeatureIamBindingArrayOutputWithContext(ctx context.Context) FeatureIamBindingArrayOutput

func (FeatureIamBindingArray) ToOutput

type FeatureIamBindingArrayInput

type FeatureIamBindingArrayInput interface {
	pulumi.Input

	ToFeatureIamBindingArrayOutput() FeatureIamBindingArrayOutput
	ToFeatureIamBindingArrayOutputWithContext(context.Context) FeatureIamBindingArrayOutput
}

FeatureIamBindingArrayInput is an input type that accepts FeatureIamBindingArray and FeatureIamBindingArrayOutput values. You can construct a concrete instance of `FeatureIamBindingArrayInput` via:

FeatureIamBindingArray{ FeatureIamBindingArgs{...} }

type FeatureIamBindingArrayOutput

type FeatureIamBindingArrayOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingArrayOutput) ElementType

func (FeatureIamBindingArrayOutput) Index

func (FeatureIamBindingArrayOutput) ToFeatureIamBindingArrayOutput

func (o FeatureIamBindingArrayOutput) ToFeatureIamBindingArrayOutput() FeatureIamBindingArrayOutput

func (FeatureIamBindingArrayOutput) ToFeatureIamBindingArrayOutputWithContext

func (o FeatureIamBindingArrayOutput) ToFeatureIamBindingArrayOutputWithContext(ctx context.Context) FeatureIamBindingArrayOutput

func (FeatureIamBindingArrayOutput) ToOutput

type FeatureIamBindingCondition

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

type FeatureIamBindingConditionArgs

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

func (FeatureIamBindingConditionArgs) ElementType

func (FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionOutput

func (i FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionOutput() FeatureIamBindingConditionOutput

func (FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionOutputWithContext

func (i FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionOutputWithContext(ctx context.Context) FeatureIamBindingConditionOutput

func (FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionPtrOutput

func (i FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionPtrOutput() FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionPtrOutputWithContext

func (i FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionPtrOutputWithContext(ctx context.Context) FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionArgs) ToOutput

type FeatureIamBindingConditionInput

type FeatureIamBindingConditionInput interface {
	pulumi.Input

	ToFeatureIamBindingConditionOutput() FeatureIamBindingConditionOutput
	ToFeatureIamBindingConditionOutputWithContext(context.Context) FeatureIamBindingConditionOutput
}

FeatureIamBindingConditionInput is an input type that accepts FeatureIamBindingConditionArgs and FeatureIamBindingConditionOutput values. You can construct a concrete instance of `FeatureIamBindingConditionInput` via:

FeatureIamBindingConditionArgs{...}

type FeatureIamBindingConditionOutput

type FeatureIamBindingConditionOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingConditionOutput) Description

func (FeatureIamBindingConditionOutput) ElementType

func (FeatureIamBindingConditionOutput) Expression

func (FeatureIamBindingConditionOutput) Title

func (FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionOutput

func (o FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionOutput() FeatureIamBindingConditionOutput

func (FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionOutputWithContext

func (o FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionOutputWithContext(ctx context.Context) FeatureIamBindingConditionOutput

func (FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionPtrOutput

func (o FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionPtrOutput() FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionPtrOutputWithContext

func (o FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionPtrOutputWithContext(ctx context.Context) FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionOutput) ToOutput

type FeatureIamBindingConditionPtrInput

type FeatureIamBindingConditionPtrInput interface {
	pulumi.Input

	ToFeatureIamBindingConditionPtrOutput() FeatureIamBindingConditionPtrOutput
	ToFeatureIamBindingConditionPtrOutputWithContext(context.Context) FeatureIamBindingConditionPtrOutput
}

FeatureIamBindingConditionPtrInput is an input type that accepts FeatureIamBindingConditionArgs, FeatureIamBindingConditionPtr and FeatureIamBindingConditionPtrOutput values. You can construct a concrete instance of `FeatureIamBindingConditionPtrInput` via:

        FeatureIamBindingConditionArgs{...}

or:

        nil

type FeatureIamBindingConditionPtrOutput

type FeatureIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingConditionPtrOutput) Description

func (FeatureIamBindingConditionPtrOutput) Elem

func (FeatureIamBindingConditionPtrOutput) ElementType

func (FeatureIamBindingConditionPtrOutput) Expression

func (FeatureIamBindingConditionPtrOutput) Title

func (FeatureIamBindingConditionPtrOutput) ToFeatureIamBindingConditionPtrOutput

func (o FeatureIamBindingConditionPtrOutput) ToFeatureIamBindingConditionPtrOutput() FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionPtrOutput) ToFeatureIamBindingConditionPtrOutputWithContext

func (o FeatureIamBindingConditionPtrOutput) ToFeatureIamBindingConditionPtrOutputWithContext(ctx context.Context) FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionPtrOutput) ToOutput

type FeatureIamBindingInput

type FeatureIamBindingInput interface {
	pulumi.Input

	ToFeatureIamBindingOutput() FeatureIamBindingOutput
	ToFeatureIamBindingOutputWithContext(ctx context.Context) FeatureIamBindingOutput
}

type FeatureIamBindingMap

type FeatureIamBindingMap map[string]FeatureIamBindingInput

func (FeatureIamBindingMap) ElementType

func (FeatureIamBindingMap) ElementType() reflect.Type

func (FeatureIamBindingMap) ToFeatureIamBindingMapOutput

func (i FeatureIamBindingMap) ToFeatureIamBindingMapOutput() FeatureIamBindingMapOutput

func (FeatureIamBindingMap) ToFeatureIamBindingMapOutputWithContext

func (i FeatureIamBindingMap) ToFeatureIamBindingMapOutputWithContext(ctx context.Context) FeatureIamBindingMapOutput

func (FeatureIamBindingMap) ToOutput

type FeatureIamBindingMapInput

type FeatureIamBindingMapInput interface {
	pulumi.Input

	ToFeatureIamBindingMapOutput() FeatureIamBindingMapOutput
	ToFeatureIamBindingMapOutputWithContext(context.Context) FeatureIamBindingMapOutput
}

FeatureIamBindingMapInput is an input type that accepts FeatureIamBindingMap and FeatureIamBindingMapOutput values. You can construct a concrete instance of `FeatureIamBindingMapInput` via:

FeatureIamBindingMap{ "key": FeatureIamBindingArgs{...} }

type FeatureIamBindingMapOutput

type FeatureIamBindingMapOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingMapOutput) ElementType

func (FeatureIamBindingMapOutput) ElementType() reflect.Type

func (FeatureIamBindingMapOutput) MapIndex

func (FeatureIamBindingMapOutput) ToFeatureIamBindingMapOutput

func (o FeatureIamBindingMapOutput) ToFeatureIamBindingMapOutput() FeatureIamBindingMapOutput

func (FeatureIamBindingMapOutput) ToFeatureIamBindingMapOutputWithContext

func (o FeatureIamBindingMapOutput) ToFeatureIamBindingMapOutputWithContext(ctx context.Context) FeatureIamBindingMapOutput

func (FeatureIamBindingMapOutput) ToOutput

type FeatureIamBindingOutput

type FeatureIamBindingOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingOutput) Condition

func (FeatureIamBindingOutput) ElementType

func (FeatureIamBindingOutput) ElementType() reflect.Type

func (FeatureIamBindingOutput) Etag

(Computed) The etag of the IAM policy.

func (FeatureIamBindingOutput) Location

The location for the resource Used to find the parent resource to bind the IAM policy to

func (FeatureIamBindingOutput) Members

func (FeatureIamBindingOutput) Name

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

func (FeatureIamBindingOutput) Project

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

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

func (FeatureIamBindingOutput) Role

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

func (FeatureIamBindingOutput) ToFeatureIamBindingOutput

func (o FeatureIamBindingOutput) ToFeatureIamBindingOutput() FeatureIamBindingOutput

func (FeatureIamBindingOutput) ToFeatureIamBindingOutputWithContext

func (o FeatureIamBindingOutput) ToFeatureIamBindingOutputWithContext(ctx context.Context) FeatureIamBindingOutput

func (FeatureIamBindingOutput) ToOutput

type FeatureIamBindingState

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

func (FeatureIamBindingState) ElementType() reflect.Type

type FeatureIamMember

type FeatureIamMember struct {
	pulumi.CustomResourceState

	Condition FeatureIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The location for the resource Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringOutput `pulumi:"location"`
	Member   pulumi.StringOutput `pulumi:"member"`
	// Used to find the parent resource to bind the IAM policy to
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `gkehub.FeatureIamBinding` 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 GKEHub Feature. Each of these resources serves a different use case:

* `gkehub.FeatureIamPolicy`: Authoritative. Sets the IAM policy for the feature and replaces any existing policy already attached. * `gkehub.FeatureIamBinding`: 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 feature are preserved. * `gkehub.FeatureIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the feature are preserved.

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

* `gkehub.FeatureIamPolicy`: Retrieves the IAM policy for the feature

> **Note:** `gkehub.FeatureIamPolicy` **cannot** be used in conjunction with `gkehub.FeatureIamBinding` and `gkehub.FeatureIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_feature\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewFeatureIamPolicy(ctx, "policy", &gkehub.FeatureIamPolicyArgs{
			Project:    pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location:   pulumi.Any(google_gke_hub_feature.Feature.Location),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_feature\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeatureIamBinding(ctx, "binding", &gkehub.FeatureIamBindingArgs{
			Project:  pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location: pulumi.Any(google_gke_hub_feature.Feature.Location),
			Role:     pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_feature\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeatureIamMember(ctx, "member", &gkehub.FeatureIamMemberArgs{
			Project:  pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location: pulumi.Any(google_gke_hub_feature.Feature.Location),
			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/{{location}}/features/{{name}} * {{project}}/{{location}}/{{name}} * {{location}}/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub feature 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:gkehub/featureIamMember:FeatureIamMember editor "projects/{{project}}/locations/{{location}}/features/{{feature}} 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:gkehub/featureIamMember:FeatureIamMember editor "projects/{{project}}/locations/{{location}}/features/{{feature}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/featureIamMember:FeatureIamMember editor projects/{{project}}/locations/{{location}}/features/{{feature}}

```

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

func GetFeatureIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FeatureIamMemberState, opts ...pulumi.ResourceOption) (*FeatureIamMember, error)

GetFeatureIamMember gets an existing FeatureIamMember 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 NewFeatureIamMember

func NewFeatureIamMember(ctx *pulumi.Context,
	name string, args *FeatureIamMemberArgs, opts ...pulumi.ResourceOption) (*FeatureIamMember, error)

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

func (*FeatureIamMember) ElementType

func (*FeatureIamMember) ElementType() reflect.Type

func (*FeatureIamMember) ToFeatureIamMemberOutput

func (i *FeatureIamMember) ToFeatureIamMemberOutput() FeatureIamMemberOutput

func (*FeatureIamMember) ToFeatureIamMemberOutputWithContext

func (i *FeatureIamMember) ToFeatureIamMemberOutputWithContext(ctx context.Context) FeatureIamMemberOutput

func (*FeatureIamMember) ToOutput

type FeatureIamMemberArgs

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

func (FeatureIamMemberArgs) ElementType

func (FeatureIamMemberArgs) ElementType() reflect.Type

type FeatureIamMemberArray

type FeatureIamMemberArray []FeatureIamMemberInput

func (FeatureIamMemberArray) ElementType

func (FeatureIamMemberArray) ElementType() reflect.Type

func (FeatureIamMemberArray) ToFeatureIamMemberArrayOutput

func (i FeatureIamMemberArray) ToFeatureIamMemberArrayOutput() FeatureIamMemberArrayOutput

func (FeatureIamMemberArray) ToFeatureIamMemberArrayOutputWithContext

func (i FeatureIamMemberArray) ToFeatureIamMemberArrayOutputWithContext(ctx context.Context) FeatureIamMemberArrayOutput

func (FeatureIamMemberArray) ToOutput

type FeatureIamMemberArrayInput

type FeatureIamMemberArrayInput interface {
	pulumi.Input

	ToFeatureIamMemberArrayOutput() FeatureIamMemberArrayOutput
	ToFeatureIamMemberArrayOutputWithContext(context.Context) FeatureIamMemberArrayOutput
}

FeatureIamMemberArrayInput is an input type that accepts FeatureIamMemberArray and FeatureIamMemberArrayOutput values. You can construct a concrete instance of `FeatureIamMemberArrayInput` via:

FeatureIamMemberArray{ FeatureIamMemberArgs{...} }

type FeatureIamMemberArrayOutput

type FeatureIamMemberArrayOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberArrayOutput) ElementType

func (FeatureIamMemberArrayOutput) Index

func (FeatureIamMemberArrayOutput) ToFeatureIamMemberArrayOutput

func (o FeatureIamMemberArrayOutput) ToFeatureIamMemberArrayOutput() FeatureIamMemberArrayOutput

func (FeatureIamMemberArrayOutput) ToFeatureIamMemberArrayOutputWithContext

func (o FeatureIamMemberArrayOutput) ToFeatureIamMemberArrayOutputWithContext(ctx context.Context) FeatureIamMemberArrayOutput

func (FeatureIamMemberArrayOutput) ToOutput

type FeatureIamMemberCondition

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

type FeatureIamMemberConditionArgs

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

func (FeatureIamMemberConditionArgs) ElementType

func (FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionOutput

func (i FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionOutput() FeatureIamMemberConditionOutput

func (FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionOutputWithContext

func (i FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionOutputWithContext(ctx context.Context) FeatureIamMemberConditionOutput

func (FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionPtrOutput

func (i FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionPtrOutput() FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionPtrOutputWithContext

func (i FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionPtrOutputWithContext(ctx context.Context) FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionArgs) ToOutput

type FeatureIamMemberConditionInput

type FeatureIamMemberConditionInput interface {
	pulumi.Input

	ToFeatureIamMemberConditionOutput() FeatureIamMemberConditionOutput
	ToFeatureIamMemberConditionOutputWithContext(context.Context) FeatureIamMemberConditionOutput
}

FeatureIamMemberConditionInput is an input type that accepts FeatureIamMemberConditionArgs and FeatureIamMemberConditionOutput values. You can construct a concrete instance of `FeatureIamMemberConditionInput` via:

FeatureIamMemberConditionArgs{...}

type FeatureIamMemberConditionOutput

type FeatureIamMemberConditionOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberConditionOutput) Description

func (FeatureIamMemberConditionOutput) ElementType

func (FeatureIamMemberConditionOutput) Expression

func (FeatureIamMemberConditionOutput) Title

func (FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionOutput

func (o FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionOutput() FeatureIamMemberConditionOutput

func (FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionOutputWithContext

func (o FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionOutputWithContext(ctx context.Context) FeatureIamMemberConditionOutput

func (FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionPtrOutput

func (o FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionPtrOutput() FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionPtrOutputWithContext

func (o FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionPtrOutputWithContext(ctx context.Context) FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionOutput) ToOutput

type FeatureIamMemberConditionPtrInput

type FeatureIamMemberConditionPtrInput interface {
	pulumi.Input

	ToFeatureIamMemberConditionPtrOutput() FeatureIamMemberConditionPtrOutput
	ToFeatureIamMemberConditionPtrOutputWithContext(context.Context) FeatureIamMemberConditionPtrOutput
}

FeatureIamMemberConditionPtrInput is an input type that accepts FeatureIamMemberConditionArgs, FeatureIamMemberConditionPtr and FeatureIamMemberConditionPtrOutput values. You can construct a concrete instance of `FeatureIamMemberConditionPtrInput` via:

        FeatureIamMemberConditionArgs{...}

or:

        nil

type FeatureIamMemberConditionPtrOutput

type FeatureIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberConditionPtrOutput) Description

func (FeatureIamMemberConditionPtrOutput) Elem

func (FeatureIamMemberConditionPtrOutput) ElementType

func (FeatureIamMemberConditionPtrOutput) Expression

func (FeatureIamMemberConditionPtrOutput) Title

func (FeatureIamMemberConditionPtrOutput) ToFeatureIamMemberConditionPtrOutput

func (o FeatureIamMemberConditionPtrOutput) ToFeatureIamMemberConditionPtrOutput() FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionPtrOutput) ToFeatureIamMemberConditionPtrOutputWithContext

func (o FeatureIamMemberConditionPtrOutput) ToFeatureIamMemberConditionPtrOutputWithContext(ctx context.Context) FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionPtrOutput) ToOutput

type FeatureIamMemberInput

type FeatureIamMemberInput interface {
	pulumi.Input

	ToFeatureIamMemberOutput() FeatureIamMemberOutput
	ToFeatureIamMemberOutputWithContext(ctx context.Context) FeatureIamMemberOutput
}

type FeatureIamMemberMap

type FeatureIamMemberMap map[string]FeatureIamMemberInput

func (FeatureIamMemberMap) ElementType

func (FeatureIamMemberMap) ElementType() reflect.Type

func (FeatureIamMemberMap) ToFeatureIamMemberMapOutput

func (i FeatureIamMemberMap) ToFeatureIamMemberMapOutput() FeatureIamMemberMapOutput

func (FeatureIamMemberMap) ToFeatureIamMemberMapOutputWithContext

func (i FeatureIamMemberMap) ToFeatureIamMemberMapOutputWithContext(ctx context.Context) FeatureIamMemberMapOutput

func (FeatureIamMemberMap) ToOutput

type FeatureIamMemberMapInput

type FeatureIamMemberMapInput interface {
	pulumi.Input

	ToFeatureIamMemberMapOutput() FeatureIamMemberMapOutput
	ToFeatureIamMemberMapOutputWithContext(context.Context) FeatureIamMemberMapOutput
}

FeatureIamMemberMapInput is an input type that accepts FeatureIamMemberMap and FeatureIamMemberMapOutput values. You can construct a concrete instance of `FeatureIamMemberMapInput` via:

FeatureIamMemberMap{ "key": FeatureIamMemberArgs{...} }

type FeatureIamMemberMapOutput

type FeatureIamMemberMapOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberMapOutput) ElementType

func (FeatureIamMemberMapOutput) ElementType() reflect.Type

func (FeatureIamMemberMapOutput) MapIndex

func (FeatureIamMemberMapOutput) ToFeatureIamMemberMapOutput

func (o FeatureIamMemberMapOutput) ToFeatureIamMemberMapOutput() FeatureIamMemberMapOutput

func (FeatureIamMemberMapOutput) ToFeatureIamMemberMapOutputWithContext

func (o FeatureIamMemberMapOutput) ToFeatureIamMemberMapOutputWithContext(ctx context.Context) FeatureIamMemberMapOutput

func (FeatureIamMemberMapOutput) ToOutput

type FeatureIamMemberOutput

type FeatureIamMemberOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberOutput) Condition

func (FeatureIamMemberOutput) ElementType

func (FeatureIamMemberOutput) ElementType() reflect.Type

func (FeatureIamMemberOutput) Etag

(Computed) The etag of the IAM policy.

func (FeatureIamMemberOutput) Location

The location for the resource Used to find the parent resource to bind the IAM policy to

func (FeatureIamMemberOutput) Member

func (FeatureIamMemberOutput) Name

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

func (FeatureIamMemberOutput) Project

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

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

func (FeatureIamMemberOutput) Role

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

func (FeatureIamMemberOutput) ToFeatureIamMemberOutput

func (o FeatureIamMemberOutput) ToFeatureIamMemberOutput() FeatureIamMemberOutput

func (FeatureIamMemberOutput) ToFeatureIamMemberOutputWithContext

func (o FeatureIamMemberOutput) ToFeatureIamMemberOutputWithContext(ctx context.Context) FeatureIamMemberOutput

func (FeatureIamMemberOutput) ToOutput

type FeatureIamMemberState

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

func (FeatureIamMemberState) ElementType() reflect.Type

type FeatureIamPolicy

type FeatureIamPolicy struct {
	pulumi.CustomResourceState

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

Three different resources help you manage your IAM policy for GKEHub Feature. Each of these resources serves a different use case:

* `gkehub.FeatureIamPolicy`: Authoritative. Sets the IAM policy for the feature and replaces any existing policy already attached. * `gkehub.FeatureIamBinding`: 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 feature are preserved. * `gkehub.FeatureIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the feature are preserved.

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

* `gkehub.FeatureIamPolicy`: Retrieves the IAM policy for the feature

> **Note:** `gkehub.FeatureIamPolicy` **cannot** be used in conjunction with `gkehub.FeatureIamBinding` and `gkehub.FeatureIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_feature\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewFeatureIamPolicy(ctx, "policy", &gkehub.FeatureIamPolicyArgs{
			Project:    pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location:   pulumi.Any(google_gke_hub_feature.Feature.Location),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_feature\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeatureIamBinding(ctx, "binding", &gkehub.FeatureIamBindingArgs{
			Project:  pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location: pulumi.Any(google_gke_hub_feature.Feature.Location),
			Role:     pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_feature\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeatureIamMember(ctx, "member", &gkehub.FeatureIamMemberArgs{
			Project:  pulumi.Any(google_gke_hub_feature.Feature.Project),
			Location: pulumi.Any(google_gke_hub_feature.Feature.Location),
			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/{{location}}/features/{{name}} * {{project}}/{{location}}/{{name}} * {{location}}/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub feature 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:gkehub/featureIamPolicy:FeatureIamPolicy editor "projects/{{project}}/locations/{{location}}/features/{{feature}} 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:gkehub/featureIamPolicy:FeatureIamPolicy editor "projects/{{project}}/locations/{{location}}/features/{{feature}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/featureIamPolicy:FeatureIamPolicy editor projects/{{project}}/locations/{{location}}/features/{{feature}}

```

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

func GetFeatureIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FeatureIamPolicyState, opts ...pulumi.ResourceOption) (*FeatureIamPolicy, error)

GetFeatureIamPolicy gets an existing FeatureIamPolicy 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 NewFeatureIamPolicy

func NewFeatureIamPolicy(ctx *pulumi.Context,
	name string, args *FeatureIamPolicyArgs, opts ...pulumi.ResourceOption) (*FeatureIamPolicy, error)

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

func (*FeatureIamPolicy) ElementType

func (*FeatureIamPolicy) ElementType() reflect.Type

func (*FeatureIamPolicy) ToFeatureIamPolicyOutput

func (i *FeatureIamPolicy) ToFeatureIamPolicyOutput() FeatureIamPolicyOutput

func (*FeatureIamPolicy) ToFeatureIamPolicyOutputWithContext

func (i *FeatureIamPolicy) ToFeatureIamPolicyOutputWithContext(ctx context.Context) FeatureIamPolicyOutput

func (*FeatureIamPolicy) ToOutput

type FeatureIamPolicyArgs

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

The set of arguments for constructing a FeatureIamPolicy resource.

func (FeatureIamPolicyArgs) ElementType

func (FeatureIamPolicyArgs) ElementType() reflect.Type

type FeatureIamPolicyArray

type FeatureIamPolicyArray []FeatureIamPolicyInput

func (FeatureIamPolicyArray) ElementType

func (FeatureIamPolicyArray) ElementType() reflect.Type

func (FeatureIamPolicyArray) ToFeatureIamPolicyArrayOutput

func (i FeatureIamPolicyArray) ToFeatureIamPolicyArrayOutput() FeatureIamPolicyArrayOutput

func (FeatureIamPolicyArray) ToFeatureIamPolicyArrayOutputWithContext

func (i FeatureIamPolicyArray) ToFeatureIamPolicyArrayOutputWithContext(ctx context.Context) FeatureIamPolicyArrayOutput

func (FeatureIamPolicyArray) ToOutput

type FeatureIamPolicyArrayInput

type FeatureIamPolicyArrayInput interface {
	pulumi.Input

	ToFeatureIamPolicyArrayOutput() FeatureIamPolicyArrayOutput
	ToFeatureIamPolicyArrayOutputWithContext(context.Context) FeatureIamPolicyArrayOutput
}

FeatureIamPolicyArrayInput is an input type that accepts FeatureIamPolicyArray and FeatureIamPolicyArrayOutput values. You can construct a concrete instance of `FeatureIamPolicyArrayInput` via:

FeatureIamPolicyArray{ FeatureIamPolicyArgs{...} }

type FeatureIamPolicyArrayOutput

type FeatureIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (FeatureIamPolicyArrayOutput) ElementType

func (FeatureIamPolicyArrayOutput) Index

func (FeatureIamPolicyArrayOutput) ToFeatureIamPolicyArrayOutput

func (o FeatureIamPolicyArrayOutput) ToFeatureIamPolicyArrayOutput() FeatureIamPolicyArrayOutput

func (FeatureIamPolicyArrayOutput) ToFeatureIamPolicyArrayOutputWithContext

func (o FeatureIamPolicyArrayOutput) ToFeatureIamPolicyArrayOutputWithContext(ctx context.Context) FeatureIamPolicyArrayOutput

func (FeatureIamPolicyArrayOutput) ToOutput

type FeatureIamPolicyInput

type FeatureIamPolicyInput interface {
	pulumi.Input

	ToFeatureIamPolicyOutput() FeatureIamPolicyOutput
	ToFeatureIamPolicyOutputWithContext(ctx context.Context) FeatureIamPolicyOutput
}

type FeatureIamPolicyMap

type FeatureIamPolicyMap map[string]FeatureIamPolicyInput

func (FeatureIamPolicyMap) ElementType

func (FeatureIamPolicyMap) ElementType() reflect.Type

func (FeatureIamPolicyMap) ToFeatureIamPolicyMapOutput

func (i FeatureIamPolicyMap) ToFeatureIamPolicyMapOutput() FeatureIamPolicyMapOutput

func (FeatureIamPolicyMap) ToFeatureIamPolicyMapOutputWithContext

func (i FeatureIamPolicyMap) ToFeatureIamPolicyMapOutputWithContext(ctx context.Context) FeatureIamPolicyMapOutput

func (FeatureIamPolicyMap) ToOutput

type FeatureIamPolicyMapInput

type FeatureIamPolicyMapInput interface {
	pulumi.Input

	ToFeatureIamPolicyMapOutput() FeatureIamPolicyMapOutput
	ToFeatureIamPolicyMapOutputWithContext(context.Context) FeatureIamPolicyMapOutput
}

FeatureIamPolicyMapInput is an input type that accepts FeatureIamPolicyMap and FeatureIamPolicyMapOutput values. You can construct a concrete instance of `FeatureIamPolicyMapInput` via:

FeatureIamPolicyMap{ "key": FeatureIamPolicyArgs{...} }

type FeatureIamPolicyMapOutput

type FeatureIamPolicyMapOutput struct{ *pulumi.OutputState }

func (FeatureIamPolicyMapOutput) ElementType

func (FeatureIamPolicyMapOutput) ElementType() reflect.Type

func (FeatureIamPolicyMapOutput) MapIndex

func (FeatureIamPolicyMapOutput) ToFeatureIamPolicyMapOutput

func (o FeatureIamPolicyMapOutput) ToFeatureIamPolicyMapOutput() FeatureIamPolicyMapOutput

func (FeatureIamPolicyMapOutput) ToFeatureIamPolicyMapOutputWithContext

func (o FeatureIamPolicyMapOutput) ToFeatureIamPolicyMapOutputWithContext(ctx context.Context) FeatureIamPolicyMapOutput

func (FeatureIamPolicyMapOutput) ToOutput

type FeatureIamPolicyOutput

type FeatureIamPolicyOutput struct{ *pulumi.OutputState }

func (FeatureIamPolicyOutput) ElementType

func (FeatureIamPolicyOutput) ElementType() reflect.Type

func (FeatureIamPolicyOutput) Etag

(Computed) The etag of the IAM policy.

func (FeatureIamPolicyOutput) Location

The location for the resource Used to find the parent resource to bind the IAM policy to

func (FeatureIamPolicyOutput) Name

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

func (FeatureIamPolicyOutput) PolicyData

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

func (FeatureIamPolicyOutput) Project

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

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

func (FeatureIamPolicyOutput) ToFeatureIamPolicyOutput

func (o FeatureIamPolicyOutput) ToFeatureIamPolicyOutput() FeatureIamPolicyOutput

func (FeatureIamPolicyOutput) ToFeatureIamPolicyOutputWithContext

func (o FeatureIamPolicyOutput) ToFeatureIamPolicyOutputWithContext(ctx context.Context) FeatureIamPolicyOutput

func (FeatureIamPolicyOutput) ToOutput

type FeatureIamPolicyState

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

func (FeatureIamPolicyState) ElementType

func (FeatureIamPolicyState) ElementType() reflect.Type

type FeatureInput

type FeatureInput interface {
	pulumi.Input

	ToFeatureOutput() FeatureOutput
	ToFeatureOutputWithContext(ctx context.Context) FeatureOutput
}

type FeatureMap

type FeatureMap map[string]FeatureInput

func (FeatureMap) ElementType

func (FeatureMap) ElementType() reflect.Type

func (FeatureMap) ToFeatureMapOutput

func (i FeatureMap) ToFeatureMapOutput() FeatureMapOutput

func (FeatureMap) ToFeatureMapOutputWithContext

func (i FeatureMap) ToFeatureMapOutputWithContext(ctx context.Context) FeatureMapOutput

func (FeatureMap) ToOutput

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

type FeatureMapInput

type FeatureMapInput interface {
	pulumi.Input

	ToFeatureMapOutput() FeatureMapOutput
	ToFeatureMapOutputWithContext(context.Context) FeatureMapOutput
}

FeatureMapInput is an input type that accepts FeatureMap and FeatureMapOutput values. You can construct a concrete instance of `FeatureMapInput` via:

FeatureMap{ "key": FeatureArgs{...} }

type FeatureMapOutput

type FeatureMapOutput struct{ *pulumi.OutputState }

func (FeatureMapOutput) ElementType

func (FeatureMapOutput) ElementType() reflect.Type

func (FeatureMapOutput) MapIndex

func (FeatureMapOutput) ToFeatureMapOutput

func (o FeatureMapOutput) ToFeatureMapOutput() FeatureMapOutput

func (FeatureMapOutput) ToFeatureMapOutputWithContext

func (o FeatureMapOutput) ToFeatureMapOutputWithContext(ctx context.Context) FeatureMapOutput

func (FeatureMapOutput) ToOutput

type FeatureMembership

type FeatureMembership struct {
	pulumi.CustomResourceState

	// Config Management-specific spec. Structure is documented below.
	Configmanagement FeatureMembershipConfigmanagementPtrOutput `pulumi:"configmanagement"`
	// The name of the feature
	Feature pulumi.StringOutput `pulumi:"feature"`
	// The location of the feature
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the membership
	Membership pulumi.StringOutput `pulumi:"membership"`
	// Service mesh specific spec. Structure is documented below.
	Mesh FeatureMembershipMeshPtrOutput `pulumi:"mesh"`
	// The project of the feature
	Project pulumi.StringOutput `pulumi:"project"`
}

## Example Usage ### Config Management

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cluster, err := container.NewCluster(ctx, "cluster", &container.ClusterArgs{
			Location:         pulumi.String("us-central1-a"),
			InitialNodeCount: pulumi.Int(1),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		membership, err := gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
			MembershipId: pulumi.String("my-membership"),
			Endpoint: &gkehub.MembershipEndpointArgs{
				GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
					ResourceLink: cluster.ID().ApplyT(func(id string) (string, error) {
						return fmt.Sprintf("//container.googleapis.com/%v", id), nil
					}).(pulumi.StringOutput),
				},
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		feature, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = gkehub.NewFeatureMembership(ctx, "featureMember", &gkehub.FeatureMembershipArgs{
			Location:   pulumi.String("global"),
			Feature:    feature.Name,
			Membership: membership.MembershipId,
			Configmanagement: &gkehub.FeatureMembershipConfigmanagementArgs{
				Version: pulumi.String("1.6.2"),
				ConfigSync: &gkehub.FeatureMembershipConfigmanagementConfigSyncArgs{
					Git: &gkehub.FeatureMembershipConfigmanagementConfigSyncGitArgs{
						SyncRepo: pulumi.String("https://github.com/hashicorp/terraform"),
					},
				},
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Config Management With OCI

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cluster, err := container.NewCluster(ctx, "cluster", &container.ClusterArgs{
			Location:         pulumi.String("us-central1-a"),
			InitialNodeCount: pulumi.Int(1),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		membership, err := gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
			MembershipId: pulumi.String("my-membership"),
			Endpoint: &gkehub.MembershipEndpointArgs{
				GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
					ResourceLink: cluster.ID().ApplyT(func(id string) (string, error) {
						return fmt.Sprintf("//container.googleapis.com/%v", id), nil
					}).(pulumi.StringOutput),
				},
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		feature, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = gkehub.NewFeatureMembership(ctx, "featureMember", &gkehub.FeatureMembershipArgs{
			Location:   pulumi.String("global"),
			Feature:    feature.Name,
			Membership: membership.MembershipId,
			Configmanagement: &gkehub.FeatureMembershipConfigmanagementArgs{
				Version: pulumi.String("1.15.1"),
				ConfigSync: &gkehub.FeatureMembershipConfigmanagementConfigSyncArgs{
					Oci: &gkehub.FeatureMembershipConfigmanagementConfigSyncOciArgs{
						SyncRepo:               pulumi.String("us-central1-docker.pkg.dev/sample-project/config-repo/config-sync-gke:latest"),
						PolicyDir:              pulumi.String("config-connector"),
						SyncWaitSecs:           pulumi.String("20"),
						SecretType:             pulumi.String("gcpserviceaccount"),
						GcpServiceAccountEmail: pulumi.String("sa@project-id.iam.gserviceaccount.com"),
					},
				},
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Multi Cluster Service Discovery

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Service Mesh

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cluster, err := container.NewCluster(ctx, "cluster", &container.ClusterArgs{
			Location:         pulumi.String("us-central1-a"),
			InitialNodeCount: pulumi.Int(1),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		membership, err := gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
			MembershipId: pulumi.String("my-membership"),
			Endpoint: &gkehub.MembershipEndpointArgs{
				GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
					ResourceLink: cluster.ID().ApplyT(func(id string) (string, error) {
						return fmt.Sprintf("//container.googleapis.com/%v", id), nil
					}).(pulumi.StringOutput),
				},
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		feature, err := gkehub.NewFeature(ctx, "feature", &gkehub.FeatureArgs{
			Location: pulumi.String("global"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = gkehub.NewFeatureMembership(ctx, "featureMember", &gkehub.FeatureMembershipArgs{
			Location:   pulumi.String("global"),
			Feature:    feature.Name,
			Membership: membership.MembershipId,
			Mesh: &gkehub.FeatureMembershipMeshArgs{
				Management: pulumi.String("MANAGEMENT_AUTOMATIC"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

FeatureMembership can be imported using any of these accepted formats

```sh

$ pulumi import gcp:gkehub/featureMembership:FeatureMembership default projects/{{project}}/locations/{{location}}/features/{{feature}}/membershipId/{{membership}}

```

```sh

$ pulumi import gcp:gkehub/featureMembership:FeatureMembership default {{project}}/{{location}}/{{feature}}/{{membership}}

```

```sh

$ pulumi import gcp:gkehub/featureMembership:FeatureMembership default {{location}}/{{feature}}/{{membership}}

```

func GetFeatureMembership

func GetFeatureMembership(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FeatureMembershipState, opts ...pulumi.ResourceOption) (*FeatureMembership, error)

GetFeatureMembership gets an existing FeatureMembership 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 NewFeatureMembership

func NewFeatureMembership(ctx *pulumi.Context,
	name string, args *FeatureMembershipArgs, opts ...pulumi.ResourceOption) (*FeatureMembership, error)

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

func (*FeatureMembership) ElementType

func (*FeatureMembership) ElementType() reflect.Type

func (*FeatureMembership) ToFeatureMembershipOutput

func (i *FeatureMembership) ToFeatureMembershipOutput() FeatureMembershipOutput

func (*FeatureMembership) ToFeatureMembershipOutputWithContext

func (i *FeatureMembership) ToFeatureMembershipOutputWithContext(ctx context.Context) FeatureMembershipOutput

func (*FeatureMembership) ToOutput

type FeatureMembershipArgs

type FeatureMembershipArgs struct {
	// Config Management-specific spec. Structure is documented below.
	Configmanagement FeatureMembershipConfigmanagementPtrInput
	// The name of the feature
	Feature pulumi.StringInput
	// The location of the feature
	Location pulumi.StringInput
	// The name of the membership
	Membership pulumi.StringInput
	// Service mesh specific spec. Structure is documented below.
	Mesh FeatureMembershipMeshPtrInput
	// The project of the feature
	Project pulumi.StringPtrInput
}

The set of arguments for constructing a FeatureMembership resource.

func (FeatureMembershipArgs) ElementType

func (FeatureMembershipArgs) ElementType() reflect.Type

type FeatureMembershipArray

type FeatureMembershipArray []FeatureMembershipInput

func (FeatureMembershipArray) ElementType

func (FeatureMembershipArray) ElementType() reflect.Type

func (FeatureMembershipArray) ToFeatureMembershipArrayOutput

func (i FeatureMembershipArray) ToFeatureMembershipArrayOutput() FeatureMembershipArrayOutput

func (FeatureMembershipArray) ToFeatureMembershipArrayOutputWithContext

func (i FeatureMembershipArray) ToFeatureMembershipArrayOutputWithContext(ctx context.Context) FeatureMembershipArrayOutput

func (FeatureMembershipArray) ToOutput

type FeatureMembershipArrayInput

type FeatureMembershipArrayInput interface {
	pulumi.Input

	ToFeatureMembershipArrayOutput() FeatureMembershipArrayOutput
	ToFeatureMembershipArrayOutputWithContext(context.Context) FeatureMembershipArrayOutput
}

FeatureMembershipArrayInput is an input type that accepts FeatureMembershipArray and FeatureMembershipArrayOutput values. You can construct a concrete instance of `FeatureMembershipArrayInput` via:

FeatureMembershipArray{ FeatureMembershipArgs{...} }

type FeatureMembershipArrayOutput

type FeatureMembershipArrayOutput struct{ *pulumi.OutputState }

func (FeatureMembershipArrayOutput) ElementType

func (FeatureMembershipArrayOutput) Index

func (FeatureMembershipArrayOutput) ToFeatureMembershipArrayOutput

func (o FeatureMembershipArrayOutput) ToFeatureMembershipArrayOutput() FeatureMembershipArrayOutput

func (FeatureMembershipArrayOutput) ToFeatureMembershipArrayOutputWithContext

func (o FeatureMembershipArrayOutput) ToFeatureMembershipArrayOutputWithContext(ctx context.Context) FeatureMembershipArrayOutput

func (FeatureMembershipArrayOutput) ToOutput

type FeatureMembershipConfigmanagement

type FeatureMembershipConfigmanagement struct {
	// Binauthz configuration for the cluster. Structure is documented below.
	Binauthz *FeatureMembershipConfigmanagementBinauthz `pulumi:"binauthz"`
	// Config Sync configuration for the cluster. Structure is documented below.
	ConfigSync *FeatureMembershipConfigmanagementConfigSync `pulumi:"configSync"`
	// Hierarchy Controller configuration for the cluster. Structure is documented below.
	HierarchyController *FeatureMembershipConfigmanagementHierarchyController `pulumi:"hierarchyController"`
	// Policy Controller configuration for the cluster. Structure is documented below.
	PolicyController *FeatureMembershipConfigmanagementPolicyController `pulumi:"policyController"`
	// Version of ACM installed.
	Version *string `pulumi:"version"`
}

type FeatureMembershipConfigmanagementArgs

type FeatureMembershipConfigmanagementArgs struct {
	// Binauthz configuration for the cluster. Structure is documented below.
	Binauthz FeatureMembershipConfigmanagementBinauthzPtrInput `pulumi:"binauthz"`
	// Config Sync configuration for the cluster. Structure is documented below.
	ConfigSync FeatureMembershipConfigmanagementConfigSyncPtrInput `pulumi:"configSync"`
	// Hierarchy Controller configuration for the cluster. Structure is documented below.
	HierarchyController FeatureMembershipConfigmanagementHierarchyControllerPtrInput `pulumi:"hierarchyController"`
	// Policy Controller configuration for the cluster. Structure is documented below.
	PolicyController FeatureMembershipConfigmanagementPolicyControllerPtrInput `pulumi:"policyController"`
	// Version of ACM installed.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (FeatureMembershipConfigmanagementArgs) ElementType

func (FeatureMembershipConfigmanagementArgs) ToFeatureMembershipConfigmanagementOutput

func (i FeatureMembershipConfigmanagementArgs) ToFeatureMembershipConfigmanagementOutput() FeatureMembershipConfigmanagementOutput

func (FeatureMembershipConfigmanagementArgs) ToFeatureMembershipConfigmanagementOutputWithContext

func (i FeatureMembershipConfigmanagementArgs) ToFeatureMembershipConfigmanagementOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementOutput

func (FeatureMembershipConfigmanagementArgs) ToFeatureMembershipConfigmanagementPtrOutput

func (i FeatureMembershipConfigmanagementArgs) ToFeatureMembershipConfigmanagementPtrOutput() FeatureMembershipConfigmanagementPtrOutput

func (FeatureMembershipConfigmanagementArgs) ToFeatureMembershipConfigmanagementPtrOutputWithContext

func (i FeatureMembershipConfigmanagementArgs) ToFeatureMembershipConfigmanagementPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPtrOutput

func (FeatureMembershipConfigmanagementArgs) ToOutput

type FeatureMembershipConfigmanagementBinauthz

type FeatureMembershipConfigmanagementBinauthz struct {
	// Whether binauthz is enabled in this cluster.
	Enabled *bool `pulumi:"enabled"`
}

type FeatureMembershipConfigmanagementBinauthzArgs

type FeatureMembershipConfigmanagementBinauthzArgs struct {
	// Whether binauthz is enabled in this cluster.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (FeatureMembershipConfigmanagementBinauthzArgs) ElementType

func (FeatureMembershipConfigmanagementBinauthzArgs) ToFeatureMembershipConfigmanagementBinauthzOutput

func (i FeatureMembershipConfigmanagementBinauthzArgs) ToFeatureMembershipConfigmanagementBinauthzOutput() FeatureMembershipConfigmanagementBinauthzOutput

func (FeatureMembershipConfigmanagementBinauthzArgs) ToFeatureMembershipConfigmanagementBinauthzOutputWithContext

func (i FeatureMembershipConfigmanagementBinauthzArgs) ToFeatureMembershipConfigmanagementBinauthzOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementBinauthzOutput

func (FeatureMembershipConfigmanagementBinauthzArgs) ToFeatureMembershipConfigmanagementBinauthzPtrOutput

func (i FeatureMembershipConfigmanagementBinauthzArgs) ToFeatureMembershipConfigmanagementBinauthzPtrOutput() FeatureMembershipConfigmanagementBinauthzPtrOutput

func (FeatureMembershipConfigmanagementBinauthzArgs) ToFeatureMembershipConfigmanagementBinauthzPtrOutputWithContext

func (i FeatureMembershipConfigmanagementBinauthzArgs) ToFeatureMembershipConfigmanagementBinauthzPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementBinauthzPtrOutput

func (FeatureMembershipConfigmanagementBinauthzArgs) ToOutput

type FeatureMembershipConfigmanagementBinauthzInput

type FeatureMembershipConfigmanagementBinauthzInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementBinauthzOutput() FeatureMembershipConfigmanagementBinauthzOutput
	ToFeatureMembershipConfigmanagementBinauthzOutputWithContext(context.Context) FeatureMembershipConfigmanagementBinauthzOutput
}

FeatureMembershipConfigmanagementBinauthzInput is an input type that accepts FeatureMembershipConfigmanagementBinauthzArgs and FeatureMembershipConfigmanagementBinauthzOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementBinauthzInput` via:

FeatureMembershipConfigmanagementBinauthzArgs{...}

type FeatureMembershipConfigmanagementBinauthzOutput

type FeatureMembershipConfigmanagementBinauthzOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementBinauthzOutput) ElementType

func (FeatureMembershipConfigmanagementBinauthzOutput) Enabled

Whether binauthz is enabled in this cluster.

func (FeatureMembershipConfigmanagementBinauthzOutput) ToFeatureMembershipConfigmanagementBinauthzOutput

func (o FeatureMembershipConfigmanagementBinauthzOutput) ToFeatureMembershipConfigmanagementBinauthzOutput() FeatureMembershipConfigmanagementBinauthzOutput

func (FeatureMembershipConfigmanagementBinauthzOutput) ToFeatureMembershipConfigmanagementBinauthzOutputWithContext

func (o FeatureMembershipConfigmanagementBinauthzOutput) ToFeatureMembershipConfigmanagementBinauthzOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementBinauthzOutput

func (FeatureMembershipConfigmanagementBinauthzOutput) ToFeatureMembershipConfigmanagementBinauthzPtrOutput

func (o FeatureMembershipConfigmanagementBinauthzOutput) ToFeatureMembershipConfigmanagementBinauthzPtrOutput() FeatureMembershipConfigmanagementBinauthzPtrOutput

func (FeatureMembershipConfigmanagementBinauthzOutput) ToFeatureMembershipConfigmanagementBinauthzPtrOutputWithContext

func (o FeatureMembershipConfigmanagementBinauthzOutput) ToFeatureMembershipConfigmanagementBinauthzPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementBinauthzPtrOutput

func (FeatureMembershipConfigmanagementBinauthzOutput) ToOutput

type FeatureMembershipConfigmanagementBinauthzPtrInput

type FeatureMembershipConfigmanagementBinauthzPtrInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementBinauthzPtrOutput() FeatureMembershipConfigmanagementBinauthzPtrOutput
	ToFeatureMembershipConfigmanagementBinauthzPtrOutputWithContext(context.Context) FeatureMembershipConfigmanagementBinauthzPtrOutput
}

FeatureMembershipConfigmanagementBinauthzPtrInput is an input type that accepts FeatureMembershipConfigmanagementBinauthzArgs, FeatureMembershipConfigmanagementBinauthzPtr and FeatureMembershipConfigmanagementBinauthzPtrOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementBinauthzPtrInput` via:

        FeatureMembershipConfigmanagementBinauthzArgs{...}

or:

        nil

type FeatureMembershipConfigmanagementBinauthzPtrOutput

type FeatureMembershipConfigmanagementBinauthzPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementBinauthzPtrOutput) Elem

func (FeatureMembershipConfigmanagementBinauthzPtrOutput) ElementType

func (FeatureMembershipConfigmanagementBinauthzPtrOutput) Enabled

Whether binauthz is enabled in this cluster.

func (FeatureMembershipConfigmanagementBinauthzPtrOutput) ToFeatureMembershipConfigmanagementBinauthzPtrOutput

func (o FeatureMembershipConfigmanagementBinauthzPtrOutput) ToFeatureMembershipConfigmanagementBinauthzPtrOutput() FeatureMembershipConfigmanagementBinauthzPtrOutput

func (FeatureMembershipConfigmanagementBinauthzPtrOutput) ToFeatureMembershipConfigmanagementBinauthzPtrOutputWithContext

func (o FeatureMembershipConfigmanagementBinauthzPtrOutput) ToFeatureMembershipConfigmanagementBinauthzPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementBinauthzPtrOutput

func (FeatureMembershipConfigmanagementBinauthzPtrOutput) ToOutput

type FeatureMembershipConfigmanagementConfigSync

type FeatureMembershipConfigmanagementConfigSync struct {
	// (Optional) Structure is documented below.
	Git *FeatureMembershipConfigmanagementConfigSyncGit `pulumi:"git"`
	// (Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.
	//
	// Use either `git` or `oci` config option.
	Oci *FeatureMembershipConfigmanagementConfigSyncOci `pulumi:"oci"`
	// Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.
	PreventDrift *bool `pulumi:"preventDrift"`
	// Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.
	SourceFormat *string `pulumi:"sourceFormat"`
}

type FeatureMembershipConfigmanagementConfigSyncArgs

type FeatureMembershipConfigmanagementConfigSyncArgs struct {
	// (Optional) Structure is documented below.
	Git FeatureMembershipConfigmanagementConfigSyncGitPtrInput `pulumi:"git"`
	// (Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.
	//
	// Use either `git` or `oci` config option.
	Oci FeatureMembershipConfigmanagementConfigSyncOciPtrInput `pulumi:"oci"`
	// Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.
	PreventDrift pulumi.BoolPtrInput `pulumi:"preventDrift"`
	// Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.
	SourceFormat pulumi.StringPtrInput `pulumi:"sourceFormat"`
}

func (FeatureMembershipConfigmanagementConfigSyncArgs) ElementType

func (FeatureMembershipConfigmanagementConfigSyncArgs) ToFeatureMembershipConfigmanagementConfigSyncOutput

func (i FeatureMembershipConfigmanagementConfigSyncArgs) ToFeatureMembershipConfigmanagementConfigSyncOutput() FeatureMembershipConfigmanagementConfigSyncOutput

func (FeatureMembershipConfigmanagementConfigSyncArgs) ToFeatureMembershipConfigmanagementConfigSyncOutputWithContext

func (i FeatureMembershipConfigmanagementConfigSyncArgs) ToFeatureMembershipConfigmanagementConfigSyncOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncOutput

func (FeatureMembershipConfigmanagementConfigSyncArgs) ToFeatureMembershipConfigmanagementConfigSyncPtrOutput

func (i FeatureMembershipConfigmanagementConfigSyncArgs) ToFeatureMembershipConfigmanagementConfigSyncPtrOutput() FeatureMembershipConfigmanagementConfigSyncPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncArgs) ToFeatureMembershipConfigmanagementConfigSyncPtrOutputWithContext

func (i FeatureMembershipConfigmanagementConfigSyncArgs) ToFeatureMembershipConfigmanagementConfigSyncPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncArgs) ToOutput

type FeatureMembershipConfigmanagementConfigSyncGit

type FeatureMembershipConfigmanagementConfigSyncGit struct {
	// The GCP Service Account Email used for auth when secretType is gcpServiceAccount.
	GcpServiceAccountEmail *string `pulumi:"gcpServiceAccountEmail"`
	// URL for the HTTPS proxy to be used when communicating with the Git repo.
	HttpsProxy *string `pulumi:"httpsProxy"`
	// The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.
	PolicyDir *string `pulumi:"policyDir"`
	// Type of secret configured for access to the Git repo.
	SecretType *string `pulumi:"secretType"`
	// The branch of the repository to sync from. Default: master.
	SyncBranch *string `pulumi:"syncBranch"`
	// The URL of the Git repository to use as the source of truth.
	SyncRepo *string `pulumi:"syncRepo"`
	// Git revision (tag or hash) to check out. Default HEAD.
	SyncRev *string `pulumi:"syncRev"`
	// Period in seconds between consecutive syncs. Default: 15.
	SyncWaitSecs *string `pulumi:"syncWaitSecs"`
}

type FeatureMembershipConfigmanagementConfigSyncGitArgs

type FeatureMembershipConfigmanagementConfigSyncGitArgs struct {
	// The GCP Service Account Email used for auth when secretType is gcpServiceAccount.
	GcpServiceAccountEmail pulumi.StringPtrInput `pulumi:"gcpServiceAccountEmail"`
	// URL for the HTTPS proxy to be used when communicating with the Git repo.
	HttpsProxy pulumi.StringPtrInput `pulumi:"httpsProxy"`
	// The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.
	PolicyDir pulumi.StringPtrInput `pulumi:"policyDir"`
	// Type of secret configured for access to the Git repo.
	SecretType pulumi.StringPtrInput `pulumi:"secretType"`
	// The branch of the repository to sync from. Default: master.
	SyncBranch pulumi.StringPtrInput `pulumi:"syncBranch"`
	// The URL of the Git repository to use as the source of truth.
	SyncRepo pulumi.StringPtrInput `pulumi:"syncRepo"`
	// Git revision (tag or hash) to check out. Default HEAD.
	SyncRev pulumi.StringPtrInput `pulumi:"syncRev"`
	// Period in seconds between consecutive syncs. Default: 15.
	SyncWaitSecs pulumi.StringPtrInput `pulumi:"syncWaitSecs"`
}

func (FeatureMembershipConfigmanagementConfigSyncGitArgs) ElementType

func (FeatureMembershipConfigmanagementConfigSyncGitArgs) ToFeatureMembershipConfigmanagementConfigSyncGitOutput

func (i FeatureMembershipConfigmanagementConfigSyncGitArgs) ToFeatureMembershipConfigmanagementConfigSyncGitOutput() FeatureMembershipConfigmanagementConfigSyncGitOutput

func (FeatureMembershipConfigmanagementConfigSyncGitArgs) ToFeatureMembershipConfigmanagementConfigSyncGitOutputWithContext

func (i FeatureMembershipConfigmanagementConfigSyncGitArgs) ToFeatureMembershipConfigmanagementConfigSyncGitOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncGitOutput

func (FeatureMembershipConfigmanagementConfigSyncGitArgs) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutput

func (i FeatureMembershipConfigmanagementConfigSyncGitArgs) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutput() FeatureMembershipConfigmanagementConfigSyncGitPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncGitArgs) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutputWithContext

func (i FeatureMembershipConfigmanagementConfigSyncGitArgs) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncGitPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncGitArgs) ToOutput

type FeatureMembershipConfigmanagementConfigSyncGitInput

type FeatureMembershipConfigmanagementConfigSyncGitInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementConfigSyncGitOutput() FeatureMembershipConfigmanagementConfigSyncGitOutput
	ToFeatureMembershipConfigmanagementConfigSyncGitOutputWithContext(context.Context) FeatureMembershipConfigmanagementConfigSyncGitOutput
}

FeatureMembershipConfigmanagementConfigSyncGitInput is an input type that accepts FeatureMembershipConfigmanagementConfigSyncGitArgs and FeatureMembershipConfigmanagementConfigSyncGitOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementConfigSyncGitInput` via:

FeatureMembershipConfigmanagementConfigSyncGitArgs{...}

type FeatureMembershipConfigmanagementConfigSyncGitOutput

type FeatureMembershipConfigmanagementConfigSyncGitOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) ElementType

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) GcpServiceAccountEmail

The GCP Service Account Email used for auth when secretType is gcpServiceAccount.

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) HttpsProxy

URL for the HTTPS proxy to be used when communicating with the Git repo.

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) PolicyDir

The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) SecretType

Type of secret configured for access to the Git repo.

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) SyncBranch

The branch of the repository to sync from. Default: master.

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) SyncRepo

The URL of the Git repository to use as the source of truth.

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) SyncRev

Git revision (tag or hash) to check out. Default HEAD.

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) SyncWaitSecs

Period in seconds between consecutive syncs. Default: 15.

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) ToFeatureMembershipConfigmanagementConfigSyncGitOutput

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) ToFeatureMembershipConfigmanagementConfigSyncGitOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncGitOutput) ToFeatureMembershipConfigmanagementConfigSyncGitOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncGitOutput

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutput

func (o FeatureMembershipConfigmanagementConfigSyncGitOutput) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutput() FeatureMembershipConfigmanagementConfigSyncGitPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncGitOutput) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncGitPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncGitOutput) ToOutput

type FeatureMembershipConfigmanagementConfigSyncGitPtrInput

type FeatureMembershipConfigmanagementConfigSyncGitPtrInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutput() FeatureMembershipConfigmanagementConfigSyncGitPtrOutput
	ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutputWithContext(context.Context) FeatureMembershipConfigmanagementConfigSyncGitPtrOutput
}

FeatureMembershipConfigmanagementConfigSyncGitPtrInput is an input type that accepts FeatureMembershipConfigmanagementConfigSyncGitArgs, FeatureMembershipConfigmanagementConfigSyncGitPtr and FeatureMembershipConfigmanagementConfigSyncGitPtrOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementConfigSyncGitPtrInput` via:

        FeatureMembershipConfigmanagementConfigSyncGitArgs{...}

or:

        nil

type FeatureMembershipConfigmanagementConfigSyncGitPtrOutput

type FeatureMembershipConfigmanagementConfigSyncGitPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) Elem

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) ElementType

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) GcpServiceAccountEmail

The GCP Service Account Email used for auth when secretType is gcpServiceAccount.

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) HttpsProxy

URL for the HTTPS proxy to be used when communicating with the Git repo.

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) PolicyDir

The path within the Git repository that represents the top level of the repo to sync. Default: the root directory of the repository.

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) SecretType

Type of secret configured for access to the Git repo.

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) SyncBranch

The branch of the repository to sync from. Default: master.

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) SyncRepo

The URL of the Git repository to use as the source of truth.

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) SyncRev

Git revision (tag or hash) to check out. Default HEAD.

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) SyncWaitSecs

Period in seconds between consecutive syncs. Default: 15.

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncGitPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncGitPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncGitPtrOutput) ToOutput

type FeatureMembershipConfigmanagementConfigSyncInput

type FeatureMembershipConfigmanagementConfigSyncInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementConfigSyncOutput() FeatureMembershipConfigmanagementConfigSyncOutput
	ToFeatureMembershipConfigmanagementConfigSyncOutputWithContext(context.Context) FeatureMembershipConfigmanagementConfigSyncOutput
}

FeatureMembershipConfigmanagementConfigSyncInput is an input type that accepts FeatureMembershipConfigmanagementConfigSyncArgs and FeatureMembershipConfigmanagementConfigSyncOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementConfigSyncInput` via:

FeatureMembershipConfigmanagementConfigSyncArgs{...}

type FeatureMembershipConfigmanagementConfigSyncOci

type FeatureMembershipConfigmanagementConfigSyncOci struct {
	// The GCP Service Account Email used for auth when secretType is gcpserviceaccount.
	GcpServiceAccountEmail *string `pulumi:"gcpServiceAccountEmail"`
	// The absolute path of the directory that contains the local resources. Default: the root directory of the image.
	PolicyDir *string `pulumi:"policyDir"`
	// Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.
	SecretType *string `pulumi:"secretType"`
	// The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.
	SyncRepo *string `pulumi:"syncRepo"`
	// Period in seconds(int64 format) between consecutive syncs. Default: 15.
	SyncWaitSecs *string `pulumi:"syncWaitSecs"`
}

type FeatureMembershipConfigmanagementConfigSyncOciArgs

type FeatureMembershipConfigmanagementConfigSyncOciArgs struct {
	// The GCP Service Account Email used for auth when secretType is gcpserviceaccount.
	GcpServiceAccountEmail pulumi.StringPtrInput `pulumi:"gcpServiceAccountEmail"`
	// The absolute path of the directory that contains the local resources. Default: the root directory of the image.
	PolicyDir pulumi.StringPtrInput `pulumi:"policyDir"`
	// Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.
	SecretType pulumi.StringPtrInput `pulumi:"secretType"`
	// The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.
	SyncRepo pulumi.StringPtrInput `pulumi:"syncRepo"`
	// Period in seconds(int64 format) between consecutive syncs. Default: 15.
	SyncWaitSecs pulumi.StringPtrInput `pulumi:"syncWaitSecs"`
}

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ElementType

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciOutput

func (i FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciOutput() FeatureMembershipConfigmanagementConfigSyncOciOutput

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciOutputWithContext

func (i FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncOciOutput

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (i FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput() FeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext

func (i FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToOutput

type FeatureMembershipConfigmanagementConfigSyncOciInput

type FeatureMembershipConfigmanagementConfigSyncOciInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementConfigSyncOciOutput() FeatureMembershipConfigmanagementConfigSyncOciOutput
	ToFeatureMembershipConfigmanagementConfigSyncOciOutputWithContext(context.Context) FeatureMembershipConfigmanagementConfigSyncOciOutput
}

FeatureMembershipConfigmanagementConfigSyncOciInput is an input type that accepts FeatureMembershipConfigmanagementConfigSyncOciArgs and FeatureMembershipConfigmanagementConfigSyncOciOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementConfigSyncOciInput` via:

FeatureMembershipConfigmanagementConfigSyncOciArgs{...}

type FeatureMembershipConfigmanagementConfigSyncOciOutput

type FeatureMembershipConfigmanagementConfigSyncOciOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ElementType

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) GcpServiceAccountEmail

The GCP Service Account Email used for auth when secretType is gcpserviceaccount.

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) PolicyDir

The absolute path of the directory that contains the local resources. Default: the root directory of the image.

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) SecretType

Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) SyncRepo

The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) SyncWaitSecs

Period in seconds(int64 format) between consecutive syncs. Default: 15.

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciOutput

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncOciOutput

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (o FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput() FeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToOutput

type FeatureMembershipConfigmanagementConfigSyncOciPtrInput

type FeatureMembershipConfigmanagementConfigSyncOciPtrInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput() FeatureMembershipConfigmanagementConfigSyncOciPtrOutput
	ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext(context.Context) FeatureMembershipConfigmanagementConfigSyncOciPtrOutput
}

FeatureMembershipConfigmanagementConfigSyncOciPtrInput is an input type that accepts FeatureMembershipConfigmanagementConfigSyncOciArgs, FeatureMembershipConfigmanagementConfigSyncOciPtr and FeatureMembershipConfigmanagementConfigSyncOciPtrOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementConfigSyncOciPtrInput` via:

        FeatureMembershipConfigmanagementConfigSyncOciArgs{...}

or:

        nil

type FeatureMembershipConfigmanagementConfigSyncOciPtrOutput

type FeatureMembershipConfigmanagementConfigSyncOciPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) Elem

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) ElementType

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) GcpServiceAccountEmail

The GCP Service Account Email used for auth when secretType is gcpserviceaccount.

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) PolicyDir

The absolute path of the directory that contains the local resources. Default: the root directory of the image.

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) SecretType

Type of secret configured for access to the OCI Image. Must be one of gcenode, gcpserviceaccount or none.

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) SyncRepo

The OCI image repository URL for the package to sync from. e.g. LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) SyncWaitSecs

Period in seconds(int64 format) between consecutive syncs. Default: 15.

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) ToOutput

type FeatureMembershipConfigmanagementConfigSyncOutput

type FeatureMembershipConfigmanagementConfigSyncOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncOutput) ElementType

func (FeatureMembershipConfigmanagementConfigSyncOutput) Git

(Optional) Structure is documented below.

func (FeatureMembershipConfigmanagementConfigSyncOutput) Oci

(Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.

Use either `git` or `oci` config option.

func (FeatureMembershipConfigmanagementConfigSyncOutput) PreventDrift

Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.

func (FeatureMembershipConfigmanagementConfigSyncOutput) SourceFormat

Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.

func (FeatureMembershipConfigmanagementConfigSyncOutput) ToFeatureMembershipConfigmanagementConfigSyncOutput

func (o FeatureMembershipConfigmanagementConfigSyncOutput) ToFeatureMembershipConfigmanagementConfigSyncOutput() FeatureMembershipConfigmanagementConfigSyncOutput

func (FeatureMembershipConfigmanagementConfigSyncOutput) ToFeatureMembershipConfigmanagementConfigSyncOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncOutput) ToFeatureMembershipConfigmanagementConfigSyncOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncOutput

func (FeatureMembershipConfigmanagementConfigSyncOutput) ToFeatureMembershipConfigmanagementConfigSyncPtrOutput

func (o FeatureMembershipConfigmanagementConfigSyncOutput) ToFeatureMembershipConfigmanagementConfigSyncPtrOutput() FeatureMembershipConfigmanagementConfigSyncPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOutput) ToFeatureMembershipConfigmanagementConfigSyncPtrOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncOutput) ToFeatureMembershipConfigmanagementConfigSyncPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOutput) ToOutput

type FeatureMembershipConfigmanagementConfigSyncPtrInput

type FeatureMembershipConfigmanagementConfigSyncPtrInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementConfigSyncPtrOutput() FeatureMembershipConfigmanagementConfigSyncPtrOutput
	ToFeatureMembershipConfigmanagementConfigSyncPtrOutputWithContext(context.Context) FeatureMembershipConfigmanagementConfigSyncPtrOutput
}

FeatureMembershipConfigmanagementConfigSyncPtrInput is an input type that accepts FeatureMembershipConfigmanagementConfigSyncArgs, FeatureMembershipConfigmanagementConfigSyncPtr and FeatureMembershipConfigmanagementConfigSyncPtrOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementConfigSyncPtrInput` via:

        FeatureMembershipConfigmanagementConfigSyncArgs{...}

or:

        nil

type FeatureMembershipConfigmanagementConfigSyncPtrOutput

type FeatureMembershipConfigmanagementConfigSyncPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) Elem

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) ElementType

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) Git

(Optional) Structure is documented below.

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) Oci

(Optional) Supported from ACM versions 1.12.0 onwards. Structure is documented below.

Use either `git` or `oci` config option.

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) PreventDrift

Supported from ACM versions 1.10.0 onwards. Set to true to enable the Config Sync admission webhook to prevent drifts. If set to "false", disables the Config Sync admission webhook and does not prevent drifts.

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) SourceFormat

Specifies whether the Config Sync Repo is in "hierarchical" or "unstructured" mode.

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncPtrOutputWithContext

func (o FeatureMembershipConfigmanagementConfigSyncPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementConfigSyncPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) ToOutput

type FeatureMembershipConfigmanagementHierarchyController

type FeatureMembershipConfigmanagementHierarchyController struct {
	// Whether hierarchical resource quota is enabled in this cluster.
	EnableHierarchicalResourceQuota *bool `pulumi:"enableHierarchicalResourceQuota"`
	// Whether pod tree labels are enabled in this cluster.
	EnablePodTreeLabels *bool `pulumi:"enablePodTreeLabels"`
	// Whether Hierarchy Controller is enabled in this cluster.
	Enabled *bool `pulumi:"enabled"`
}

type FeatureMembershipConfigmanagementHierarchyControllerArgs

type FeatureMembershipConfigmanagementHierarchyControllerArgs struct {
	// Whether hierarchical resource quota is enabled in this cluster.
	EnableHierarchicalResourceQuota pulumi.BoolPtrInput `pulumi:"enableHierarchicalResourceQuota"`
	// Whether pod tree labels are enabled in this cluster.
	EnablePodTreeLabels pulumi.BoolPtrInput `pulumi:"enablePodTreeLabels"`
	// Whether Hierarchy Controller is enabled in this cluster.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
}

func (FeatureMembershipConfigmanagementHierarchyControllerArgs) ElementType

func (FeatureMembershipConfigmanagementHierarchyControllerArgs) ToFeatureMembershipConfigmanagementHierarchyControllerOutput

func (FeatureMembershipConfigmanagementHierarchyControllerArgs) ToFeatureMembershipConfigmanagementHierarchyControllerOutputWithContext

func (i FeatureMembershipConfigmanagementHierarchyControllerArgs) ToFeatureMembershipConfigmanagementHierarchyControllerOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementHierarchyControllerOutput

func (FeatureMembershipConfigmanagementHierarchyControllerArgs) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutput

func (i FeatureMembershipConfigmanagementHierarchyControllerArgs) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutput() FeatureMembershipConfigmanagementHierarchyControllerPtrOutput

func (FeatureMembershipConfigmanagementHierarchyControllerArgs) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutputWithContext

func (i FeatureMembershipConfigmanagementHierarchyControllerArgs) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementHierarchyControllerPtrOutput

func (FeatureMembershipConfigmanagementHierarchyControllerArgs) ToOutput

type FeatureMembershipConfigmanagementHierarchyControllerInput

type FeatureMembershipConfigmanagementHierarchyControllerInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementHierarchyControllerOutput() FeatureMembershipConfigmanagementHierarchyControllerOutput
	ToFeatureMembershipConfigmanagementHierarchyControllerOutputWithContext(context.Context) FeatureMembershipConfigmanagementHierarchyControllerOutput
}

FeatureMembershipConfigmanagementHierarchyControllerInput is an input type that accepts FeatureMembershipConfigmanagementHierarchyControllerArgs and FeatureMembershipConfigmanagementHierarchyControllerOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementHierarchyControllerInput` via:

FeatureMembershipConfigmanagementHierarchyControllerArgs{...}

type FeatureMembershipConfigmanagementHierarchyControllerOutput

type FeatureMembershipConfigmanagementHierarchyControllerOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) ElementType

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) EnableHierarchicalResourceQuota

Whether hierarchical resource quota is enabled in this cluster.

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) EnablePodTreeLabels

Whether pod tree labels are enabled in this cluster.

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) Enabled

Whether Hierarchy Controller is enabled in this cluster.

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) ToFeatureMembershipConfigmanagementHierarchyControllerOutput

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) ToFeatureMembershipConfigmanagementHierarchyControllerOutputWithContext

func (o FeatureMembershipConfigmanagementHierarchyControllerOutput) ToFeatureMembershipConfigmanagementHierarchyControllerOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementHierarchyControllerOutput

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutput

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutputWithContext

func (o FeatureMembershipConfigmanagementHierarchyControllerOutput) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementHierarchyControllerPtrOutput

func (FeatureMembershipConfigmanagementHierarchyControllerOutput) ToOutput

type FeatureMembershipConfigmanagementHierarchyControllerPtrInput

type FeatureMembershipConfigmanagementHierarchyControllerPtrInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutput() FeatureMembershipConfigmanagementHierarchyControllerPtrOutput
	ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutputWithContext(context.Context) FeatureMembershipConfigmanagementHierarchyControllerPtrOutput
}

FeatureMembershipConfigmanagementHierarchyControllerPtrInput is an input type that accepts FeatureMembershipConfigmanagementHierarchyControllerArgs, FeatureMembershipConfigmanagementHierarchyControllerPtr and FeatureMembershipConfigmanagementHierarchyControllerPtrOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementHierarchyControllerPtrInput` via:

        FeatureMembershipConfigmanagementHierarchyControllerArgs{...}

or:

        nil

type FeatureMembershipConfigmanagementHierarchyControllerPtrOutput

type FeatureMembershipConfigmanagementHierarchyControllerPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) Elem

func (FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) ElementType

func (FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) EnableHierarchicalResourceQuota

Whether hierarchical resource quota is enabled in this cluster.

func (FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) EnablePodTreeLabels

Whether pod tree labels are enabled in this cluster.

func (FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) Enabled

Whether Hierarchy Controller is enabled in this cluster.

func (FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutput

func (FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutputWithContext

func (o FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) ToFeatureMembershipConfigmanagementHierarchyControllerPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementHierarchyControllerPtrOutput

func (FeatureMembershipConfigmanagementHierarchyControllerPtrOutput) ToOutput

type FeatureMembershipConfigmanagementInput

type FeatureMembershipConfigmanagementInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementOutput() FeatureMembershipConfigmanagementOutput
	ToFeatureMembershipConfigmanagementOutputWithContext(context.Context) FeatureMembershipConfigmanagementOutput
}

FeatureMembershipConfigmanagementInput is an input type that accepts FeatureMembershipConfigmanagementArgs and FeatureMembershipConfigmanagementOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementInput` via:

FeatureMembershipConfigmanagementArgs{...}

type FeatureMembershipConfigmanagementOutput

type FeatureMembershipConfigmanagementOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementOutput) Binauthz

Binauthz configuration for the cluster. Structure is documented below.

func (FeatureMembershipConfigmanagementOutput) ConfigSync

Config Sync configuration for the cluster. Structure is documented below.

func (FeatureMembershipConfigmanagementOutput) ElementType

func (FeatureMembershipConfigmanagementOutput) HierarchyController

Hierarchy Controller configuration for the cluster. Structure is documented below.

func (FeatureMembershipConfigmanagementOutput) PolicyController

Policy Controller configuration for the cluster. Structure is documented below.

func (FeatureMembershipConfigmanagementOutput) ToFeatureMembershipConfigmanagementOutput

func (o FeatureMembershipConfigmanagementOutput) ToFeatureMembershipConfigmanagementOutput() FeatureMembershipConfigmanagementOutput

func (FeatureMembershipConfigmanagementOutput) ToFeatureMembershipConfigmanagementOutputWithContext

func (o FeatureMembershipConfigmanagementOutput) ToFeatureMembershipConfigmanagementOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementOutput

func (FeatureMembershipConfigmanagementOutput) ToFeatureMembershipConfigmanagementPtrOutput

func (o FeatureMembershipConfigmanagementOutput) ToFeatureMembershipConfigmanagementPtrOutput() FeatureMembershipConfigmanagementPtrOutput

func (FeatureMembershipConfigmanagementOutput) ToFeatureMembershipConfigmanagementPtrOutputWithContext

func (o FeatureMembershipConfigmanagementOutput) ToFeatureMembershipConfigmanagementPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPtrOutput

func (FeatureMembershipConfigmanagementOutput) ToOutput

func (FeatureMembershipConfigmanagementOutput) Version

Version of ACM installed.

type FeatureMembershipConfigmanagementPolicyController

type FeatureMembershipConfigmanagementPolicyController struct {
	// Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.
	AuditIntervalSeconds *string `pulumi:"auditIntervalSeconds"`
	// Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.
	Enabled *bool `pulumi:"enabled"`
	// The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
	ExemptableNamespaces []string `pulumi:"exemptableNamespaces"`
	// Logs all denies and dry run failures.
	LogDeniesEnabled *bool `pulumi:"logDeniesEnabled"`
	// Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: [\"cloudmonitoring\", \"prometheus\"]. Default: [\"cloudmonitoring\", \"prometheus\"]
	Monitoring *FeatureMembershipConfigmanagementPolicyControllerMonitoring `pulumi:"monitoring"`
	// Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.
	MutationEnabled *bool `pulumi:"mutationEnabled"`
	// Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
	ReferentialRulesEnabled *bool `pulumi:"referentialRulesEnabled"`
	// Installs the default template library along with Policy Controller.
	TemplateLibraryInstalled *bool `pulumi:"templateLibraryInstalled"`
}

type FeatureMembershipConfigmanagementPolicyControllerArgs

type FeatureMembershipConfigmanagementPolicyControllerArgs struct {
	// Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.
	AuditIntervalSeconds pulumi.StringPtrInput `pulumi:"auditIntervalSeconds"`
	// Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.
	ExemptableNamespaces pulumi.StringArrayInput `pulumi:"exemptableNamespaces"`
	// Logs all denies and dry run failures.
	LogDeniesEnabled pulumi.BoolPtrInput `pulumi:"logDeniesEnabled"`
	// Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: [\"cloudmonitoring\", \"prometheus\"]. Default: [\"cloudmonitoring\", \"prometheus\"]
	Monitoring FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrInput `pulumi:"monitoring"`
	// Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.
	MutationEnabled pulumi.BoolPtrInput `pulumi:"mutationEnabled"`
	// Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.
	ReferentialRulesEnabled pulumi.BoolPtrInput `pulumi:"referentialRulesEnabled"`
	// Installs the default template library along with Policy Controller.
	TemplateLibraryInstalled pulumi.BoolPtrInput `pulumi:"templateLibraryInstalled"`
}

func (FeatureMembershipConfigmanagementPolicyControllerArgs) ElementType

func (FeatureMembershipConfigmanagementPolicyControllerArgs) ToFeatureMembershipConfigmanagementPolicyControllerOutput

func (i FeatureMembershipConfigmanagementPolicyControllerArgs) ToFeatureMembershipConfigmanagementPolicyControllerOutput() FeatureMembershipConfigmanagementPolicyControllerOutput

func (FeatureMembershipConfigmanagementPolicyControllerArgs) ToFeatureMembershipConfigmanagementPolicyControllerOutputWithContext

func (i FeatureMembershipConfigmanagementPolicyControllerArgs) ToFeatureMembershipConfigmanagementPolicyControllerOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerOutput

func (FeatureMembershipConfigmanagementPolicyControllerArgs) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutput

func (i FeatureMembershipConfigmanagementPolicyControllerArgs) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutput() FeatureMembershipConfigmanagementPolicyControllerPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerArgs) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutputWithContext

func (i FeatureMembershipConfigmanagementPolicyControllerArgs) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerArgs) ToOutput

type FeatureMembershipConfigmanagementPolicyControllerInput

type FeatureMembershipConfigmanagementPolicyControllerInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementPolicyControllerOutput() FeatureMembershipConfigmanagementPolicyControllerOutput
	ToFeatureMembershipConfigmanagementPolicyControllerOutputWithContext(context.Context) FeatureMembershipConfigmanagementPolicyControllerOutput
}

FeatureMembershipConfigmanagementPolicyControllerInput is an input type that accepts FeatureMembershipConfigmanagementPolicyControllerArgs and FeatureMembershipConfigmanagementPolicyControllerOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementPolicyControllerInput` via:

FeatureMembershipConfigmanagementPolicyControllerArgs{...}

type FeatureMembershipConfigmanagementPolicyControllerMonitoring

type FeatureMembershipConfigmanagementPolicyControllerMonitoring struct {
	Backends []string `pulumi:"backends"`
}

type FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs

type FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs struct {
	Backends pulumi.StringArrayInput `pulumi:"backends"`
}

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ElementType

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutput

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutputWithContext

func (i FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext

func (i FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput

type FeatureMembershipConfigmanagementPolicyControllerMonitoringInput

type FeatureMembershipConfigmanagementPolicyControllerMonitoringInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutput() FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput
	ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutputWithContext(context.Context) FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput
}

FeatureMembershipConfigmanagementPolicyControllerMonitoringInput is an input type that accepts FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs and FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementPolicyControllerMonitoringInput` via:

FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs{...}

type FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput

type FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) Backends

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ElementType

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutput

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutputWithContext

func (o FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext

func (o FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput

type FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrInput

type FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput() FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput
	ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext(context.Context) FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput
}

FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrInput is an input type that accepts FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs, FeatureMembershipConfigmanagementPolicyControllerMonitoringPtr and FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrInput` via:

        FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs{...}

or:

        nil

type FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput

type FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) Backends

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) Elem

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) ElementType

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext

func (o FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) ToOutput

type FeatureMembershipConfigmanagementPolicyControllerOutput

type FeatureMembershipConfigmanagementPolicyControllerOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementPolicyControllerOutput) AuditIntervalSeconds

Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.

func (FeatureMembershipConfigmanagementPolicyControllerOutput) ElementType

func (FeatureMembershipConfigmanagementPolicyControllerOutput) Enabled

Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.

func (FeatureMembershipConfigmanagementPolicyControllerOutput) ExemptableNamespaces

The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.

func (FeatureMembershipConfigmanagementPolicyControllerOutput) LogDeniesEnabled

Logs all denies and dry run failures.

func (FeatureMembershipConfigmanagementPolicyControllerOutput) Monitoring

Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: [\"cloudmonitoring\", \"prometheus\"]. Default: [\"cloudmonitoring\", \"prometheus\"]

func (FeatureMembershipConfigmanagementPolicyControllerOutput) MutationEnabled

Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.

func (FeatureMembershipConfigmanagementPolicyControllerOutput) ReferentialRulesEnabled

Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.

func (FeatureMembershipConfigmanagementPolicyControllerOutput) TemplateLibraryInstalled

Installs the default template library along with Policy Controller.

func (FeatureMembershipConfigmanagementPolicyControllerOutput) ToFeatureMembershipConfigmanagementPolicyControllerOutput

func (FeatureMembershipConfigmanagementPolicyControllerOutput) ToFeatureMembershipConfigmanagementPolicyControllerOutputWithContext

func (o FeatureMembershipConfigmanagementPolicyControllerOutput) ToFeatureMembershipConfigmanagementPolicyControllerOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerOutput

func (FeatureMembershipConfigmanagementPolicyControllerOutput) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerOutput) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutputWithContext

func (o FeatureMembershipConfigmanagementPolicyControllerOutput) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerOutput) ToOutput

type FeatureMembershipConfigmanagementPolicyControllerPtrInput

type FeatureMembershipConfigmanagementPolicyControllerPtrInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementPolicyControllerPtrOutput() FeatureMembershipConfigmanagementPolicyControllerPtrOutput
	ToFeatureMembershipConfigmanagementPolicyControllerPtrOutputWithContext(context.Context) FeatureMembershipConfigmanagementPolicyControllerPtrOutput
}

FeatureMembershipConfigmanagementPolicyControllerPtrInput is an input type that accepts FeatureMembershipConfigmanagementPolicyControllerArgs, FeatureMembershipConfigmanagementPolicyControllerPtr and FeatureMembershipConfigmanagementPolicyControllerPtrOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementPolicyControllerPtrInput` via:

        FeatureMembershipConfigmanagementPolicyControllerArgs{...}

or:

        nil

type FeatureMembershipConfigmanagementPolicyControllerPtrOutput

type FeatureMembershipConfigmanagementPolicyControllerPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) AuditIntervalSeconds

Sets the interval for Policy Controller Audit Scans (in seconds). When set to 0, this disables audit functionality altogether.

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) Elem

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) ElementType

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) Enabled

Enables the installation of Policy Controller. If false, the rest of PolicyController fields take no effect.

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) ExemptableNamespaces

The set of namespaces that are excluded from Policy Controller checks. Namespaces do not need to currently exist on the cluster.

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) LogDeniesEnabled

Logs all denies and dry run failures.

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) Monitoring

Specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: [\"cloudmonitoring\", \"prometheus\"]. Default: [\"cloudmonitoring\", \"prometheus\"]

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) MutationEnabled

Enables mutation in policy controller. If true, mutation CRDs, webhook, and controller deployment will be deployed to the cluster.

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) ReferentialRulesEnabled

Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) TemplateLibraryInstalled

Installs the default template library along with Policy Controller.

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutputWithContext

func (o FeatureMembershipConfigmanagementPolicyControllerPtrOutput) ToFeatureMembershipConfigmanagementPolicyControllerPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPolicyControllerPtrOutput

func (FeatureMembershipConfigmanagementPolicyControllerPtrOutput) ToOutput

type FeatureMembershipConfigmanagementPtrInput

type FeatureMembershipConfigmanagementPtrInput interface {
	pulumi.Input

	ToFeatureMembershipConfigmanagementPtrOutput() FeatureMembershipConfigmanagementPtrOutput
	ToFeatureMembershipConfigmanagementPtrOutputWithContext(context.Context) FeatureMembershipConfigmanagementPtrOutput
}

FeatureMembershipConfigmanagementPtrInput is an input type that accepts FeatureMembershipConfigmanagementArgs, FeatureMembershipConfigmanagementPtr and FeatureMembershipConfigmanagementPtrOutput values. You can construct a concrete instance of `FeatureMembershipConfigmanagementPtrInput` via:

        FeatureMembershipConfigmanagementArgs{...}

or:

        nil

type FeatureMembershipConfigmanagementPtrOutput

type FeatureMembershipConfigmanagementPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementPtrOutput) Binauthz

Binauthz configuration for the cluster. Structure is documented below.

func (FeatureMembershipConfigmanagementPtrOutput) ConfigSync

Config Sync configuration for the cluster. Structure is documented below.

func (FeatureMembershipConfigmanagementPtrOutput) Elem

func (FeatureMembershipConfigmanagementPtrOutput) ElementType

func (FeatureMembershipConfigmanagementPtrOutput) HierarchyController

Hierarchy Controller configuration for the cluster. Structure is documented below.

func (FeatureMembershipConfigmanagementPtrOutput) PolicyController

Policy Controller configuration for the cluster. Structure is documented below.

func (FeatureMembershipConfigmanagementPtrOutput) ToFeatureMembershipConfigmanagementPtrOutput

func (o FeatureMembershipConfigmanagementPtrOutput) ToFeatureMembershipConfigmanagementPtrOutput() FeatureMembershipConfigmanagementPtrOutput

func (FeatureMembershipConfigmanagementPtrOutput) ToFeatureMembershipConfigmanagementPtrOutputWithContext

func (o FeatureMembershipConfigmanagementPtrOutput) ToFeatureMembershipConfigmanagementPtrOutputWithContext(ctx context.Context) FeatureMembershipConfigmanagementPtrOutput

func (FeatureMembershipConfigmanagementPtrOutput) ToOutput

func (FeatureMembershipConfigmanagementPtrOutput) Version

Version of ACM installed.

type FeatureMembershipInput

type FeatureMembershipInput interface {
	pulumi.Input

	ToFeatureMembershipOutput() FeatureMembershipOutput
	ToFeatureMembershipOutputWithContext(ctx context.Context) FeatureMembershipOutput
}

type FeatureMembershipMap

type FeatureMembershipMap map[string]FeatureMembershipInput

func (FeatureMembershipMap) ElementType

func (FeatureMembershipMap) ElementType() reflect.Type

func (FeatureMembershipMap) ToFeatureMembershipMapOutput

func (i FeatureMembershipMap) ToFeatureMembershipMapOutput() FeatureMembershipMapOutput

func (FeatureMembershipMap) ToFeatureMembershipMapOutputWithContext

func (i FeatureMembershipMap) ToFeatureMembershipMapOutputWithContext(ctx context.Context) FeatureMembershipMapOutput

func (FeatureMembershipMap) ToOutput

type FeatureMembershipMapInput

type FeatureMembershipMapInput interface {
	pulumi.Input

	ToFeatureMembershipMapOutput() FeatureMembershipMapOutput
	ToFeatureMembershipMapOutputWithContext(context.Context) FeatureMembershipMapOutput
}

FeatureMembershipMapInput is an input type that accepts FeatureMembershipMap and FeatureMembershipMapOutput values. You can construct a concrete instance of `FeatureMembershipMapInput` via:

FeatureMembershipMap{ "key": FeatureMembershipArgs{...} }

type FeatureMembershipMapOutput

type FeatureMembershipMapOutput struct{ *pulumi.OutputState }

func (FeatureMembershipMapOutput) ElementType

func (FeatureMembershipMapOutput) ElementType() reflect.Type

func (FeatureMembershipMapOutput) MapIndex

func (FeatureMembershipMapOutput) ToFeatureMembershipMapOutput

func (o FeatureMembershipMapOutput) ToFeatureMembershipMapOutput() FeatureMembershipMapOutput

func (FeatureMembershipMapOutput) ToFeatureMembershipMapOutputWithContext

func (o FeatureMembershipMapOutput) ToFeatureMembershipMapOutputWithContext(ctx context.Context) FeatureMembershipMapOutput

func (FeatureMembershipMapOutput) ToOutput

type FeatureMembershipMesh

type FeatureMembershipMesh struct {
	// Deprecated: Deprecated in favor of the `management` field
	ControlPlane *string `pulumi:"controlPlane"`
	// Whether to automatically manage Service Mesh. Can either be `MANAGEMENT_AUTOMATIC` or `MANAGEMENT_MANUAL`.
	Management *string `pulumi:"management"`
}

type FeatureMembershipMeshArgs

type FeatureMembershipMeshArgs struct {
	// Deprecated: Deprecated in favor of the `management` field
	ControlPlane pulumi.StringPtrInput `pulumi:"controlPlane"`
	// Whether to automatically manage Service Mesh. Can either be `MANAGEMENT_AUTOMATIC` or `MANAGEMENT_MANUAL`.
	Management pulumi.StringPtrInput `pulumi:"management"`
}

func (FeatureMembershipMeshArgs) ElementType

func (FeatureMembershipMeshArgs) ElementType() reflect.Type

func (FeatureMembershipMeshArgs) ToFeatureMembershipMeshOutput

func (i FeatureMembershipMeshArgs) ToFeatureMembershipMeshOutput() FeatureMembershipMeshOutput

func (FeatureMembershipMeshArgs) ToFeatureMembershipMeshOutputWithContext

func (i FeatureMembershipMeshArgs) ToFeatureMembershipMeshOutputWithContext(ctx context.Context) FeatureMembershipMeshOutput

func (FeatureMembershipMeshArgs) ToFeatureMembershipMeshPtrOutput

func (i FeatureMembershipMeshArgs) ToFeatureMembershipMeshPtrOutput() FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshArgs) ToFeatureMembershipMeshPtrOutputWithContext

func (i FeatureMembershipMeshArgs) ToFeatureMembershipMeshPtrOutputWithContext(ctx context.Context) FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshArgs) ToOutput

type FeatureMembershipMeshInput

type FeatureMembershipMeshInput interface {
	pulumi.Input

	ToFeatureMembershipMeshOutput() FeatureMembershipMeshOutput
	ToFeatureMembershipMeshOutputWithContext(context.Context) FeatureMembershipMeshOutput
}

FeatureMembershipMeshInput is an input type that accepts FeatureMembershipMeshArgs and FeatureMembershipMeshOutput values. You can construct a concrete instance of `FeatureMembershipMeshInput` via:

FeatureMembershipMeshArgs{...}

type FeatureMembershipMeshOutput

type FeatureMembershipMeshOutput struct{ *pulumi.OutputState }

func (FeatureMembershipMeshOutput) ControlPlane deprecated

Deprecated: Deprecated in favor of the `management` field

func (FeatureMembershipMeshOutput) ElementType

func (FeatureMembershipMeshOutput) Management

Whether to automatically manage Service Mesh. Can either be `MANAGEMENT_AUTOMATIC` or `MANAGEMENT_MANUAL`.

func (FeatureMembershipMeshOutput) ToFeatureMembershipMeshOutput

func (o FeatureMembershipMeshOutput) ToFeatureMembershipMeshOutput() FeatureMembershipMeshOutput

func (FeatureMembershipMeshOutput) ToFeatureMembershipMeshOutputWithContext

func (o FeatureMembershipMeshOutput) ToFeatureMembershipMeshOutputWithContext(ctx context.Context) FeatureMembershipMeshOutput

func (FeatureMembershipMeshOutput) ToFeatureMembershipMeshPtrOutput

func (o FeatureMembershipMeshOutput) ToFeatureMembershipMeshPtrOutput() FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshOutput) ToFeatureMembershipMeshPtrOutputWithContext

func (o FeatureMembershipMeshOutput) ToFeatureMembershipMeshPtrOutputWithContext(ctx context.Context) FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshOutput) ToOutput

type FeatureMembershipMeshPtrInput

type FeatureMembershipMeshPtrInput interface {
	pulumi.Input

	ToFeatureMembershipMeshPtrOutput() FeatureMembershipMeshPtrOutput
	ToFeatureMembershipMeshPtrOutputWithContext(context.Context) FeatureMembershipMeshPtrOutput
}

FeatureMembershipMeshPtrInput is an input type that accepts FeatureMembershipMeshArgs, FeatureMembershipMeshPtr and FeatureMembershipMeshPtrOutput values. You can construct a concrete instance of `FeatureMembershipMeshPtrInput` via:

        FeatureMembershipMeshArgs{...}

or:

        nil

type FeatureMembershipMeshPtrOutput

type FeatureMembershipMeshPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipMeshPtrOutput) ControlPlane deprecated

Deprecated: Deprecated in favor of the `management` field

func (FeatureMembershipMeshPtrOutput) Elem

func (FeatureMembershipMeshPtrOutput) ElementType

func (FeatureMembershipMeshPtrOutput) Management

Whether to automatically manage Service Mesh. Can either be `MANAGEMENT_AUTOMATIC` or `MANAGEMENT_MANUAL`.

func (FeatureMembershipMeshPtrOutput) ToFeatureMembershipMeshPtrOutput

func (o FeatureMembershipMeshPtrOutput) ToFeatureMembershipMeshPtrOutput() FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshPtrOutput) ToFeatureMembershipMeshPtrOutputWithContext

func (o FeatureMembershipMeshPtrOutput) ToFeatureMembershipMeshPtrOutputWithContext(ctx context.Context) FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshPtrOutput) ToOutput

type FeatureMembershipOutput

type FeatureMembershipOutput struct{ *pulumi.OutputState }

func (FeatureMembershipOutput) Configmanagement

Config Management-specific spec. Structure is documented below.

func (FeatureMembershipOutput) ElementType

func (FeatureMembershipOutput) ElementType() reflect.Type

func (FeatureMembershipOutput) Feature

The name of the feature

func (FeatureMembershipOutput) Location

The location of the feature

func (FeatureMembershipOutput) Membership

The name of the membership

func (FeatureMembershipOutput) Mesh

Service mesh specific spec. Structure is documented below.

func (FeatureMembershipOutput) Project

The project of the feature

func (FeatureMembershipOutput) ToFeatureMembershipOutput

func (o FeatureMembershipOutput) ToFeatureMembershipOutput() FeatureMembershipOutput

func (FeatureMembershipOutput) ToFeatureMembershipOutputWithContext

func (o FeatureMembershipOutput) ToFeatureMembershipOutputWithContext(ctx context.Context) FeatureMembershipOutput

func (FeatureMembershipOutput) ToOutput

type FeatureMembershipState

type FeatureMembershipState struct {
	// Config Management-specific spec. Structure is documented below.
	Configmanagement FeatureMembershipConfigmanagementPtrInput
	// The name of the feature
	Feature pulumi.StringPtrInput
	// The location of the feature
	Location pulumi.StringPtrInput
	// The name of the membership
	Membership pulumi.StringPtrInput
	// Service mesh specific spec. Structure is documented below.
	Mesh FeatureMembershipMeshPtrInput
	// The project of the feature
	Project pulumi.StringPtrInput
}

func (FeatureMembershipState) ElementType

func (FeatureMembershipState) ElementType() reflect.Type

type FeatureOutput

type FeatureOutput struct{ *pulumi.OutputState }

func (FeatureOutput) CreateTime

func (o FeatureOutput) CreateTime() pulumi.StringOutput

Output only. When the Feature resource was created.

func (FeatureOutput) DeleteTime

func (o FeatureOutput) DeleteTime() pulumi.StringOutput

Output only. When the Feature resource was deleted.

func (FeatureOutput) EffectiveLabels

func (o FeatureOutput) EffectiveLabels() pulumi.StringMapOutput

All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other clients and services.

func (FeatureOutput) ElementType

func (FeatureOutput) ElementType() reflect.Type

func (FeatureOutput) Labels

GCP labels for this Feature. **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field `effectiveLabels` for all of the labels present on the resource.

func (FeatureOutput) Location

func (o FeatureOutput) Location() pulumi.StringOutput

The location for the resource

***

func (FeatureOutput) Name

The full, unique name of this Feature resource

func (FeatureOutput) Project

func (o FeatureOutput) Project() pulumi.StringOutput

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

func (FeatureOutput) PulumiLabels

func (o FeatureOutput) PulumiLabels() pulumi.StringMapOutput

The combination of labels configured directly on the resource and default labels configured on the provider.

func (FeatureOutput) ResourceStates

State of the Feature resource itself. Structure is documented below.

func (FeatureOutput) Spec

Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. Structure is documented below.

func (FeatureOutput) States

(Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.

func (FeatureOutput) ToFeatureOutput

func (o FeatureOutput) ToFeatureOutput() FeatureOutput

func (FeatureOutput) ToFeatureOutputWithContext

func (o FeatureOutput) ToFeatureOutputWithContext(ctx context.Context) FeatureOutput

func (FeatureOutput) ToOutput

func (o FeatureOutput) ToOutput(ctx context.Context) pulumix.Output[*Feature]

func (FeatureOutput) UpdateTime

func (o FeatureOutput) UpdateTime() pulumi.StringOutput

(Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"

type FeatureResourceState

type FeatureResourceState struct {
	// (Output)
	// Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.
	HasResources *bool `pulumi:"hasResources"`
	// (Output)
	// Output only. The "running state" of the Feature in this Hub.
	// Structure is documented below.
	State *string `pulumi:"state"`
}

type FeatureResourceStateArgs

type FeatureResourceStateArgs struct {
	// (Output)
	// Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.
	HasResources pulumi.BoolPtrInput `pulumi:"hasResources"`
	// (Output)
	// Output only. The "running state" of the Feature in this Hub.
	// Structure is documented below.
	State pulumi.StringPtrInput `pulumi:"state"`
}

func (FeatureResourceStateArgs) ElementType

func (FeatureResourceStateArgs) ElementType() reflect.Type

func (FeatureResourceStateArgs) ToFeatureResourceStateOutput

func (i FeatureResourceStateArgs) ToFeatureResourceStateOutput() FeatureResourceStateOutput

func (FeatureResourceStateArgs) ToFeatureResourceStateOutputWithContext

func (i FeatureResourceStateArgs) ToFeatureResourceStateOutputWithContext(ctx context.Context) FeatureResourceStateOutput

func (FeatureResourceStateArgs) ToOutput

type FeatureResourceStateArray

type FeatureResourceStateArray []FeatureResourceStateInput

func (FeatureResourceStateArray) ElementType

func (FeatureResourceStateArray) ElementType() reflect.Type

func (FeatureResourceStateArray) ToFeatureResourceStateArrayOutput

func (i FeatureResourceStateArray) ToFeatureResourceStateArrayOutput() FeatureResourceStateArrayOutput

func (FeatureResourceStateArray) ToFeatureResourceStateArrayOutputWithContext

func (i FeatureResourceStateArray) ToFeatureResourceStateArrayOutputWithContext(ctx context.Context) FeatureResourceStateArrayOutput

func (FeatureResourceStateArray) ToOutput

type FeatureResourceStateArrayInput

type FeatureResourceStateArrayInput interface {
	pulumi.Input

	ToFeatureResourceStateArrayOutput() FeatureResourceStateArrayOutput
	ToFeatureResourceStateArrayOutputWithContext(context.Context) FeatureResourceStateArrayOutput
}

FeatureResourceStateArrayInput is an input type that accepts FeatureResourceStateArray and FeatureResourceStateArrayOutput values. You can construct a concrete instance of `FeatureResourceStateArrayInput` via:

FeatureResourceStateArray{ FeatureResourceStateArgs{...} }

type FeatureResourceStateArrayOutput

type FeatureResourceStateArrayOutput struct{ *pulumi.OutputState }

func (FeatureResourceStateArrayOutput) ElementType

func (FeatureResourceStateArrayOutput) Index

func (FeatureResourceStateArrayOutput) ToFeatureResourceStateArrayOutput

func (o FeatureResourceStateArrayOutput) ToFeatureResourceStateArrayOutput() FeatureResourceStateArrayOutput

func (FeatureResourceStateArrayOutput) ToFeatureResourceStateArrayOutputWithContext

func (o FeatureResourceStateArrayOutput) ToFeatureResourceStateArrayOutputWithContext(ctx context.Context) FeatureResourceStateArrayOutput

func (FeatureResourceStateArrayOutput) ToOutput

type FeatureResourceStateInput

type FeatureResourceStateInput interface {
	pulumi.Input

	ToFeatureResourceStateOutput() FeatureResourceStateOutput
	ToFeatureResourceStateOutputWithContext(context.Context) FeatureResourceStateOutput
}

FeatureResourceStateInput is an input type that accepts FeatureResourceStateArgs and FeatureResourceStateOutput values. You can construct a concrete instance of `FeatureResourceStateInput` via:

FeatureResourceStateArgs{...}

type FeatureResourceStateOutput

type FeatureResourceStateOutput struct{ *pulumi.OutputState }

func (FeatureResourceStateOutput) ElementType

func (FeatureResourceStateOutput) ElementType() reflect.Type

func (FeatureResourceStateOutput) HasResources

(Output) Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled.

func (FeatureResourceStateOutput) State

(Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.

func (FeatureResourceStateOutput) ToFeatureResourceStateOutput

func (o FeatureResourceStateOutput) ToFeatureResourceStateOutput() FeatureResourceStateOutput

func (FeatureResourceStateOutput) ToFeatureResourceStateOutputWithContext

func (o FeatureResourceStateOutput) ToFeatureResourceStateOutputWithContext(ctx context.Context) FeatureResourceStateOutput

func (FeatureResourceStateOutput) ToOutput

type FeatureSpec

type FeatureSpec struct {
	// Fleet Observability feature spec.
	// Structure is documented below.
	Fleetobservability *FeatureSpecFleetobservability `pulumi:"fleetobservability"`
	// Multicluster Ingress-specific spec.
	// Structure is documented below.
	Multiclusteringress *FeatureSpecMulticlusteringress `pulumi:"multiclusteringress"`
}

type FeatureSpecArgs

type FeatureSpecArgs struct {
	// Fleet Observability feature spec.
	// Structure is documented below.
	Fleetobservability FeatureSpecFleetobservabilityPtrInput `pulumi:"fleetobservability"`
	// Multicluster Ingress-specific spec.
	// Structure is documented below.
	Multiclusteringress FeatureSpecMulticlusteringressPtrInput `pulumi:"multiclusteringress"`
}

func (FeatureSpecArgs) ElementType

func (FeatureSpecArgs) ElementType() reflect.Type

func (FeatureSpecArgs) ToFeatureSpecOutput

func (i FeatureSpecArgs) ToFeatureSpecOutput() FeatureSpecOutput

func (FeatureSpecArgs) ToFeatureSpecOutputWithContext

func (i FeatureSpecArgs) ToFeatureSpecOutputWithContext(ctx context.Context) FeatureSpecOutput

func (FeatureSpecArgs) ToFeatureSpecPtrOutput

func (i FeatureSpecArgs) ToFeatureSpecPtrOutput() FeatureSpecPtrOutput

func (FeatureSpecArgs) ToFeatureSpecPtrOutputWithContext

func (i FeatureSpecArgs) ToFeatureSpecPtrOutputWithContext(ctx context.Context) FeatureSpecPtrOutput

func (FeatureSpecArgs) ToOutput

type FeatureSpecFleetobservability

type FeatureSpecFleetobservability struct {
	// Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet.
	// Structure is documented below.
	LoggingConfig *FeatureSpecFleetobservabilityLoggingConfig `pulumi:"loggingConfig"`
}

type FeatureSpecFleetobservabilityArgs

type FeatureSpecFleetobservabilityArgs struct {
	// Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet.
	// Structure is documented below.
	LoggingConfig FeatureSpecFleetobservabilityLoggingConfigPtrInput `pulumi:"loggingConfig"`
}

func (FeatureSpecFleetobservabilityArgs) ElementType

func (FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityOutput

func (i FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityOutput() FeatureSpecFleetobservabilityOutput

func (FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityOutputWithContext

func (i FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityOutput

func (FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityPtrOutput

func (i FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityPtrOutput() FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityPtrOutputWithContext

func (i FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityArgs) ToOutput

type FeatureSpecFleetobservabilityInput

type FeatureSpecFleetobservabilityInput interface {
	pulumi.Input

	ToFeatureSpecFleetobservabilityOutput() FeatureSpecFleetobservabilityOutput
	ToFeatureSpecFleetobservabilityOutputWithContext(context.Context) FeatureSpecFleetobservabilityOutput
}

FeatureSpecFleetobservabilityInput is an input type that accepts FeatureSpecFleetobservabilityArgs and FeatureSpecFleetobservabilityOutput values. You can construct a concrete instance of `FeatureSpecFleetobservabilityInput` via:

FeatureSpecFleetobservabilityArgs{...}

type FeatureSpecFleetobservabilityLoggingConfig

type FeatureSpecFleetobservabilityLoggingConfig struct {
	// Specified if applying the default routing config to logs not specified in other configs.
	// Structure is documented below.
	DefaultConfig *FeatureSpecFleetobservabilityLoggingConfigDefaultConfig `pulumi:"defaultConfig"`
	// Specified if applying the routing config to all logs for all fleet scopes.
	// Structure is documented below.
	FleetScopeLogsConfig *FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfig `pulumi:"fleetScopeLogsConfig"`
}

type FeatureSpecFleetobservabilityLoggingConfigArgs

type FeatureSpecFleetobservabilityLoggingConfigArgs struct {
	// Specified if applying the default routing config to logs not specified in other configs.
	// Structure is documented below.
	DefaultConfig FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrInput `pulumi:"defaultConfig"`
	// Specified if applying the routing config to all logs for all fleet scopes.
	// Structure is documented below.
	FleetScopeLogsConfig FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrInput `pulumi:"fleetScopeLogsConfig"`
}

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigOutput

func (i FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigOutput() FeatureSpecFleetobservabilityLoggingConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigOutputWithContext

func (i FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (i FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext

func (i FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToOutput

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfig

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfig struct {
	// Specified if fleet logging feature is enabled.
	// Possible values are: `MODE_UNSPECIFIED`, `COPY`, `MOVE`.
	Mode *string `pulumi:"mode"`
}

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs struct {
	// Specified if fleet logging feature is enabled.
	// Possible values are: `MODE_UNSPECIFIED`, `COPY`, `MOVE`.
	Mode pulumi.StringPtrInput `pulumi:"mode"`
}

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutputWithContext

func (i FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext

func (i FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigInput

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigInput interface {
	pulumi.Input

	ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput() FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput
	ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutputWithContext(context.Context) FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput
}

FeatureSpecFleetobservabilityLoggingConfigDefaultConfigInput is an input type that accepts FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs and FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput values. You can construct a concrete instance of `FeatureSpecFleetobservabilityLoggingConfigDefaultConfigInput` via:

FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs{...}

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) Mode

Specified if fleet logging feature is enabled. Possible values are: `MODE_UNSPECIFIED`, `COPY`, `MOVE`.

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToOutput

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrInput

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrInput interface {
	pulumi.Input

	ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput
	ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext(context.Context) FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput
}

FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrInput is an input type that accepts FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs, FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtr and FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput values. You can construct a concrete instance of `FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrInput` via:

        FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs{...}

or:

        nil

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) Elem

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) Mode

Specified if fleet logging feature is enabled. Possible values are: `MODE_UNSPECIFIED`, `COPY`, `MOVE`.

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) ToOutput

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfig

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfig struct {
	// Specified if fleet logging feature is enabled.
	// Possible values are: `MODE_UNSPECIFIED`, `COPY`, `MOVE`.
	Mode *string `pulumi:"mode"`
}

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs struct {
	// Specified if fleet logging feature is enabled.
	// Possible values are: `MODE_UNSPECIFIED`, `COPY`, `MOVE`.
	Mode pulumi.StringPtrInput `pulumi:"mode"`
}

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutputWithContext

func (i FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext

func (i FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigInput

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigInput interface {
	pulumi.Input

	ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput() FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput
	ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutputWithContext(context.Context) FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput
}

FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigInput is an input type that accepts FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs and FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput values. You can construct a concrete instance of `FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigInput` via:

FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs{...}

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) Mode

Specified if fleet logging feature is enabled. Possible values are: `MODE_UNSPECIFIED`, `COPY`, `MOVE`.

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrInput

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrInput interface {
	pulumi.Input

	ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput
	ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext(context.Context) FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput
}

FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrInput is an input type that accepts FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs, FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtr and FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput values. You can construct a concrete instance of `FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrInput` via:

        FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs{...}

or:

        nil

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) Elem

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) Mode

Specified if fleet logging feature is enabled. Possible values are: `MODE_UNSPECIFIED`, `COPY`, `MOVE`.

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput

type FeatureSpecFleetobservabilityLoggingConfigInput

type FeatureSpecFleetobservabilityLoggingConfigInput interface {
	pulumi.Input

	ToFeatureSpecFleetobservabilityLoggingConfigOutput() FeatureSpecFleetobservabilityLoggingConfigOutput
	ToFeatureSpecFleetobservabilityLoggingConfigOutputWithContext(context.Context) FeatureSpecFleetobservabilityLoggingConfigOutput
}

FeatureSpecFleetobservabilityLoggingConfigInput is an input type that accepts FeatureSpecFleetobservabilityLoggingConfigArgs and FeatureSpecFleetobservabilityLoggingConfigOutput values. You can construct a concrete instance of `FeatureSpecFleetobservabilityLoggingConfigInput` via:

FeatureSpecFleetobservabilityLoggingConfigArgs{...}

type FeatureSpecFleetobservabilityLoggingConfigOutput

type FeatureSpecFleetobservabilityLoggingConfigOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigOutput) DefaultConfig

Specified if applying the default routing config to logs not specified in other configs. Structure is documented below.

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigOutput) FleetScopeLogsConfig

Specified if applying the routing config to all logs for all fleet scopes. Structure is documented below.

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigOutput

func (o FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigOutput() FeatureSpecFleetobservabilityLoggingConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (o FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToOutput

type FeatureSpecFleetobservabilityLoggingConfigPtrInput

type FeatureSpecFleetobservabilityLoggingConfigPtrInput interface {
	pulumi.Input

	ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigPtrOutput
	ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext(context.Context) FeatureSpecFleetobservabilityLoggingConfigPtrOutput
}

FeatureSpecFleetobservabilityLoggingConfigPtrInput is an input type that accepts FeatureSpecFleetobservabilityLoggingConfigArgs, FeatureSpecFleetobservabilityLoggingConfigPtr and FeatureSpecFleetobservabilityLoggingConfigPtrOutput values. You can construct a concrete instance of `FeatureSpecFleetobservabilityLoggingConfigPtrInput` via:

        FeatureSpecFleetobservabilityLoggingConfigArgs{...}

or:

        nil

type FeatureSpecFleetobservabilityLoggingConfigPtrOutput

type FeatureSpecFleetobservabilityLoggingConfigPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) DefaultConfig

Specified if applying the default routing config to logs not specified in other configs. Structure is documented below.

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) Elem

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ElementType

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) FleetScopeLogsConfig

Specified if applying the routing config to all logs for all fleet scopes. Structure is documented below.

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (o FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext

func (o FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ToOutput

type FeatureSpecFleetobservabilityOutput

type FeatureSpecFleetobservabilityOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityOutput) ElementType

func (FeatureSpecFleetobservabilityOutput) LoggingConfig

Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet. Structure is documented below.

func (FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityOutput

func (o FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityOutput() FeatureSpecFleetobservabilityOutput

func (FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityOutputWithContext

func (o FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityOutput

func (FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityPtrOutput

func (o FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityPtrOutput() FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityPtrOutputWithContext

func (o FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityOutput) ToOutput

type FeatureSpecFleetobservabilityPtrInput

type FeatureSpecFleetobservabilityPtrInput interface {
	pulumi.Input

	ToFeatureSpecFleetobservabilityPtrOutput() FeatureSpecFleetobservabilityPtrOutput
	ToFeatureSpecFleetobservabilityPtrOutputWithContext(context.Context) FeatureSpecFleetobservabilityPtrOutput
}

FeatureSpecFleetobservabilityPtrInput is an input type that accepts FeatureSpecFleetobservabilityArgs, FeatureSpecFleetobservabilityPtr and FeatureSpecFleetobservabilityPtrOutput values. You can construct a concrete instance of `FeatureSpecFleetobservabilityPtrInput` via:

        FeatureSpecFleetobservabilityArgs{...}

or:

        nil

type FeatureSpecFleetobservabilityPtrOutput

type FeatureSpecFleetobservabilityPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityPtrOutput) Elem

func (FeatureSpecFleetobservabilityPtrOutput) ElementType

func (FeatureSpecFleetobservabilityPtrOutput) LoggingConfig

Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet. Structure is documented below.

func (FeatureSpecFleetobservabilityPtrOutput) ToFeatureSpecFleetobservabilityPtrOutput

func (o FeatureSpecFleetobservabilityPtrOutput) ToFeatureSpecFleetobservabilityPtrOutput() FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityPtrOutput) ToFeatureSpecFleetobservabilityPtrOutputWithContext

func (o FeatureSpecFleetobservabilityPtrOutput) ToFeatureSpecFleetobservabilityPtrOutputWithContext(ctx context.Context) FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityPtrOutput) ToOutput

type FeatureSpecInput

type FeatureSpecInput interface {
	pulumi.Input

	ToFeatureSpecOutput() FeatureSpecOutput
	ToFeatureSpecOutputWithContext(context.Context) FeatureSpecOutput
}

FeatureSpecInput is an input type that accepts FeatureSpecArgs and FeatureSpecOutput values. You can construct a concrete instance of `FeatureSpecInput` via:

FeatureSpecArgs{...}

type FeatureSpecMulticlusteringress

type FeatureSpecMulticlusteringress struct {
	// Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: `projects/foo-proj/locations/global/memberships/bar`
	ConfigMembership string `pulumi:"configMembership"`
}

type FeatureSpecMulticlusteringressArgs

type FeatureSpecMulticlusteringressArgs struct {
	// Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: `projects/foo-proj/locations/global/memberships/bar`
	ConfigMembership pulumi.StringInput `pulumi:"configMembership"`
}

func (FeatureSpecMulticlusteringressArgs) ElementType

func (FeatureSpecMulticlusteringressArgs) ToFeatureSpecMulticlusteringressOutput

func (i FeatureSpecMulticlusteringressArgs) ToFeatureSpecMulticlusteringressOutput() FeatureSpecMulticlusteringressOutput

func (FeatureSpecMulticlusteringressArgs) ToFeatureSpecMulticlusteringressOutputWithContext

func (i FeatureSpecMulticlusteringressArgs) ToFeatureSpecMulticlusteringressOutputWithContext(ctx context.Context) FeatureSpecMulticlusteringressOutput

func (FeatureSpecMulticlusteringressArgs) ToFeatureSpecMulticlusteringressPtrOutput

func (i FeatureSpecMulticlusteringressArgs) ToFeatureSpecMulticlusteringressPtrOutput() FeatureSpecMulticlusteringressPtrOutput

func (FeatureSpecMulticlusteringressArgs) ToFeatureSpecMulticlusteringressPtrOutputWithContext

func (i FeatureSpecMulticlusteringressArgs) ToFeatureSpecMulticlusteringressPtrOutputWithContext(ctx context.Context) FeatureSpecMulticlusteringressPtrOutput

func (FeatureSpecMulticlusteringressArgs) ToOutput

type FeatureSpecMulticlusteringressInput

type FeatureSpecMulticlusteringressInput interface {
	pulumi.Input

	ToFeatureSpecMulticlusteringressOutput() FeatureSpecMulticlusteringressOutput
	ToFeatureSpecMulticlusteringressOutputWithContext(context.Context) FeatureSpecMulticlusteringressOutput
}

FeatureSpecMulticlusteringressInput is an input type that accepts FeatureSpecMulticlusteringressArgs and FeatureSpecMulticlusteringressOutput values. You can construct a concrete instance of `FeatureSpecMulticlusteringressInput` via:

FeatureSpecMulticlusteringressArgs{...}

type FeatureSpecMulticlusteringressOutput

type FeatureSpecMulticlusteringressOutput struct{ *pulumi.OutputState }

func (FeatureSpecMulticlusteringressOutput) ConfigMembership

Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: `projects/foo-proj/locations/global/memberships/bar`

func (FeatureSpecMulticlusteringressOutput) ElementType

func (FeatureSpecMulticlusteringressOutput) ToFeatureSpecMulticlusteringressOutput

func (o FeatureSpecMulticlusteringressOutput) ToFeatureSpecMulticlusteringressOutput() FeatureSpecMulticlusteringressOutput

func (FeatureSpecMulticlusteringressOutput) ToFeatureSpecMulticlusteringressOutputWithContext

func (o FeatureSpecMulticlusteringressOutput) ToFeatureSpecMulticlusteringressOutputWithContext(ctx context.Context) FeatureSpecMulticlusteringressOutput

func (FeatureSpecMulticlusteringressOutput) ToFeatureSpecMulticlusteringressPtrOutput

func (o FeatureSpecMulticlusteringressOutput) ToFeatureSpecMulticlusteringressPtrOutput() FeatureSpecMulticlusteringressPtrOutput

func (FeatureSpecMulticlusteringressOutput) ToFeatureSpecMulticlusteringressPtrOutputWithContext

func (o FeatureSpecMulticlusteringressOutput) ToFeatureSpecMulticlusteringressPtrOutputWithContext(ctx context.Context) FeatureSpecMulticlusteringressPtrOutput

func (FeatureSpecMulticlusteringressOutput) ToOutput

type FeatureSpecMulticlusteringressPtrInput

type FeatureSpecMulticlusteringressPtrInput interface {
	pulumi.Input

	ToFeatureSpecMulticlusteringressPtrOutput() FeatureSpecMulticlusteringressPtrOutput
	ToFeatureSpecMulticlusteringressPtrOutputWithContext(context.Context) FeatureSpecMulticlusteringressPtrOutput
}

FeatureSpecMulticlusteringressPtrInput is an input type that accepts FeatureSpecMulticlusteringressArgs, FeatureSpecMulticlusteringressPtr and FeatureSpecMulticlusteringressPtrOutput values. You can construct a concrete instance of `FeatureSpecMulticlusteringressPtrInput` via:

        FeatureSpecMulticlusteringressArgs{...}

or:

        nil

type FeatureSpecMulticlusteringressPtrOutput

type FeatureSpecMulticlusteringressPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecMulticlusteringressPtrOutput) ConfigMembership

Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: `projects/foo-proj/locations/global/memberships/bar`

func (FeatureSpecMulticlusteringressPtrOutput) Elem

func (FeatureSpecMulticlusteringressPtrOutput) ElementType

func (FeatureSpecMulticlusteringressPtrOutput) ToFeatureSpecMulticlusteringressPtrOutput

func (o FeatureSpecMulticlusteringressPtrOutput) ToFeatureSpecMulticlusteringressPtrOutput() FeatureSpecMulticlusteringressPtrOutput

func (FeatureSpecMulticlusteringressPtrOutput) ToFeatureSpecMulticlusteringressPtrOutputWithContext

func (o FeatureSpecMulticlusteringressPtrOutput) ToFeatureSpecMulticlusteringressPtrOutputWithContext(ctx context.Context) FeatureSpecMulticlusteringressPtrOutput

func (FeatureSpecMulticlusteringressPtrOutput) ToOutput

type FeatureSpecOutput

type FeatureSpecOutput struct{ *pulumi.OutputState }

func (FeatureSpecOutput) ElementType

func (FeatureSpecOutput) ElementType() reflect.Type

func (FeatureSpecOutput) Fleetobservability

Fleet Observability feature spec. Structure is documented below.

func (FeatureSpecOutput) Multiclusteringress

Multicluster Ingress-specific spec. Structure is documented below.

func (FeatureSpecOutput) ToFeatureSpecOutput

func (o FeatureSpecOutput) ToFeatureSpecOutput() FeatureSpecOutput

func (FeatureSpecOutput) ToFeatureSpecOutputWithContext

func (o FeatureSpecOutput) ToFeatureSpecOutputWithContext(ctx context.Context) FeatureSpecOutput

func (FeatureSpecOutput) ToFeatureSpecPtrOutput

func (o FeatureSpecOutput) ToFeatureSpecPtrOutput() FeatureSpecPtrOutput

func (FeatureSpecOutput) ToFeatureSpecPtrOutputWithContext

func (o FeatureSpecOutput) ToFeatureSpecPtrOutputWithContext(ctx context.Context) FeatureSpecPtrOutput

func (FeatureSpecOutput) ToOutput

type FeatureSpecPtrInput

type FeatureSpecPtrInput interface {
	pulumi.Input

	ToFeatureSpecPtrOutput() FeatureSpecPtrOutput
	ToFeatureSpecPtrOutputWithContext(context.Context) FeatureSpecPtrOutput
}

FeatureSpecPtrInput is an input type that accepts FeatureSpecArgs, FeatureSpecPtr and FeatureSpecPtrOutput values. You can construct a concrete instance of `FeatureSpecPtrInput` via:

        FeatureSpecArgs{...}

or:

        nil

func FeatureSpecPtr

func FeatureSpecPtr(v *FeatureSpecArgs) FeatureSpecPtrInput

type FeatureSpecPtrOutput

type FeatureSpecPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecPtrOutput) Elem

func (FeatureSpecPtrOutput) ElementType

func (FeatureSpecPtrOutput) ElementType() reflect.Type

func (FeatureSpecPtrOutput) Fleetobservability

Fleet Observability feature spec. Structure is documented below.

func (FeatureSpecPtrOutput) Multiclusteringress

Multicluster Ingress-specific spec. Structure is documented below.

func (FeatureSpecPtrOutput) ToFeatureSpecPtrOutput

func (o FeatureSpecPtrOutput) ToFeatureSpecPtrOutput() FeatureSpecPtrOutput

func (FeatureSpecPtrOutput) ToFeatureSpecPtrOutputWithContext

func (o FeatureSpecPtrOutput) ToFeatureSpecPtrOutputWithContext(ctx context.Context) FeatureSpecPtrOutput

func (FeatureSpecPtrOutput) ToOutput

type FeatureState

type FeatureState struct {
	// Output only. When the Feature resource was created.
	CreateTime pulumi.StringPtrInput
	// Output only. When the Feature resource was deleted.
	DeleteTime pulumi.StringPtrInput
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapInput
	// GCP labels for this Feature.
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The location for the resource
	//
	// ***
	Location pulumi.StringPtrInput
	// The full, unique name of this Feature resource
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapInput
	// State of the Feature resource itself.
	// Structure is documented below.
	ResourceStates FeatureResourceStateArrayInput
	// Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused.
	// Structure is documented below.
	Spec FeatureSpecPtrInput
	// (Output)
	// Output only. The "running state" of the Feature in this Hub.
	// Structure is documented below.
	States FeatureStateTypeArrayInput
	// (Output)
	// The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
	UpdateTime pulumi.StringPtrInput
}

func (FeatureState) ElementType

func (FeatureState) ElementType() reflect.Type

type FeatureStateState

type FeatureStateState struct {
	// (Output)
	// The high-level, machine-readable status of this Feature.
	Code *string `pulumi:"code"`
	// (Output)
	// A human-readable description of the current status.
	Description *string `pulumi:"description"`
	// (Output)
	// The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
	UpdateTime *string `pulumi:"updateTime"`
}

type FeatureStateStateArgs

type FeatureStateStateArgs struct {
	// (Output)
	// The high-level, machine-readable status of this Feature.
	Code pulumi.StringPtrInput `pulumi:"code"`
	// (Output)
	// A human-readable description of the current status.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// (Output)
	// The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"
	UpdateTime pulumi.StringPtrInput `pulumi:"updateTime"`
}

func (FeatureStateStateArgs) ElementType

func (FeatureStateStateArgs) ElementType() reflect.Type

func (FeatureStateStateArgs) ToFeatureStateStateOutput

func (i FeatureStateStateArgs) ToFeatureStateStateOutput() FeatureStateStateOutput

func (FeatureStateStateArgs) ToFeatureStateStateOutputWithContext

func (i FeatureStateStateArgs) ToFeatureStateStateOutputWithContext(ctx context.Context) FeatureStateStateOutput

func (FeatureStateStateArgs) ToOutput

type FeatureStateStateArray

type FeatureStateStateArray []FeatureStateStateInput

func (FeatureStateStateArray) ElementType

func (FeatureStateStateArray) ElementType() reflect.Type

func (FeatureStateStateArray) ToFeatureStateStateArrayOutput

func (i FeatureStateStateArray) ToFeatureStateStateArrayOutput() FeatureStateStateArrayOutput

func (FeatureStateStateArray) ToFeatureStateStateArrayOutputWithContext

func (i FeatureStateStateArray) ToFeatureStateStateArrayOutputWithContext(ctx context.Context) FeatureStateStateArrayOutput

func (FeatureStateStateArray) ToOutput

type FeatureStateStateArrayInput

type FeatureStateStateArrayInput interface {
	pulumi.Input

	ToFeatureStateStateArrayOutput() FeatureStateStateArrayOutput
	ToFeatureStateStateArrayOutputWithContext(context.Context) FeatureStateStateArrayOutput
}

FeatureStateStateArrayInput is an input type that accepts FeatureStateStateArray and FeatureStateStateArrayOutput values. You can construct a concrete instance of `FeatureStateStateArrayInput` via:

FeatureStateStateArray{ FeatureStateStateArgs{...} }

type FeatureStateStateArrayOutput

type FeatureStateStateArrayOutput struct{ *pulumi.OutputState }

func (FeatureStateStateArrayOutput) ElementType

func (FeatureStateStateArrayOutput) Index

func (FeatureStateStateArrayOutput) ToFeatureStateStateArrayOutput

func (o FeatureStateStateArrayOutput) ToFeatureStateStateArrayOutput() FeatureStateStateArrayOutput

func (FeatureStateStateArrayOutput) ToFeatureStateStateArrayOutputWithContext

func (o FeatureStateStateArrayOutput) ToFeatureStateStateArrayOutputWithContext(ctx context.Context) FeatureStateStateArrayOutput

func (FeatureStateStateArrayOutput) ToOutput

type FeatureStateStateInput

type FeatureStateStateInput interface {
	pulumi.Input

	ToFeatureStateStateOutput() FeatureStateStateOutput
	ToFeatureStateStateOutputWithContext(context.Context) FeatureStateStateOutput
}

FeatureStateStateInput is an input type that accepts FeatureStateStateArgs and FeatureStateStateOutput values. You can construct a concrete instance of `FeatureStateStateInput` via:

FeatureStateStateArgs{...}

type FeatureStateStateOutput

type FeatureStateStateOutput struct{ *pulumi.OutputState }

func (FeatureStateStateOutput) Code

(Output) The high-level, machine-readable status of this Feature.

func (FeatureStateStateOutput) Description

(Output) A human-readable description of the current status.

func (FeatureStateStateOutput) ElementType

func (FeatureStateStateOutput) ElementType() reflect.Type

func (FeatureStateStateOutput) ToFeatureStateStateOutput

func (o FeatureStateStateOutput) ToFeatureStateStateOutput() FeatureStateStateOutput

func (FeatureStateStateOutput) ToFeatureStateStateOutputWithContext

func (o FeatureStateStateOutput) ToFeatureStateStateOutputWithContext(ctx context.Context) FeatureStateStateOutput

func (FeatureStateStateOutput) ToOutput

func (FeatureStateStateOutput) UpdateTime

(Output) The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z"

type FeatureStateType

type FeatureStateType struct {
	// (Output)
	// Output only. The "running state" of the Feature in this Hub.
	// Structure is documented below.
	States []FeatureStateState `pulumi:"states"`
}

type FeatureStateTypeArgs

type FeatureStateTypeArgs struct {
	// (Output)
	// Output only. The "running state" of the Feature in this Hub.
	// Structure is documented below.
	States FeatureStateStateArrayInput `pulumi:"states"`
}

func (FeatureStateTypeArgs) ElementType

func (FeatureStateTypeArgs) ElementType() reflect.Type

func (FeatureStateTypeArgs) ToFeatureStateTypeOutput

func (i FeatureStateTypeArgs) ToFeatureStateTypeOutput() FeatureStateTypeOutput

func (FeatureStateTypeArgs) ToFeatureStateTypeOutputWithContext

func (i FeatureStateTypeArgs) ToFeatureStateTypeOutputWithContext(ctx context.Context) FeatureStateTypeOutput

func (FeatureStateTypeArgs) ToOutput

type FeatureStateTypeArray

type FeatureStateTypeArray []FeatureStateTypeInput

func (FeatureStateTypeArray) ElementType

func (FeatureStateTypeArray) ElementType() reflect.Type

func (FeatureStateTypeArray) ToFeatureStateTypeArrayOutput

func (i FeatureStateTypeArray) ToFeatureStateTypeArrayOutput() FeatureStateTypeArrayOutput

func (FeatureStateTypeArray) ToFeatureStateTypeArrayOutputWithContext

func (i FeatureStateTypeArray) ToFeatureStateTypeArrayOutputWithContext(ctx context.Context) FeatureStateTypeArrayOutput

func (FeatureStateTypeArray) ToOutput

type FeatureStateTypeArrayInput

type FeatureStateTypeArrayInput interface {
	pulumi.Input

	ToFeatureStateTypeArrayOutput() FeatureStateTypeArrayOutput
	ToFeatureStateTypeArrayOutputWithContext(context.Context) FeatureStateTypeArrayOutput
}

FeatureStateTypeArrayInput is an input type that accepts FeatureStateTypeArray and FeatureStateTypeArrayOutput values. You can construct a concrete instance of `FeatureStateTypeArrayInput` via:

FeatureStateTypeArray{ FeatureStateTypeArgs{...} }

type FeatureStateTypeArrayOutput

type FeatureStateTypeArrayOutput struct{ *pulumi.OutputState }

func (FeatureStateTypeArrayOutput) ElementType

func (FeatureStateTypeArrayOutput) Index

func (FeatureStateTypeArrayOutput) ToFeatureStateTypeArrayOutput

func (o FeatureStateTypeArrayOutput) ToFeatureStateTypeArrayOutput() FeatureStateTypeArrayOutput

func (FeatureStateTypeArrayOutput) ToFeatureStateTypeArrayOutputWithContext

func (o FeatureStateTypeArrayOutput) ToFeatureStateTypeArrayOutputWithContext(ctx context.Context) FeatureStateTypeArrayOutput

func (FeatureStateTypeArrayOutput) ToOutput

type FeatureStateTypeInput

type FeatureStateTypeInput interface {
	pulumi.Input

	ToFeatureStateTypeOutput() FeatureStateTypeOutput
	ToFeatureStateTypeOutputWithContext(context.Context) FeatureStateTypeOutput
}

FeatureStateTypeInput is an input type that accepts FeatureStateTypeArgs and FeatureStateTypeOutput values. You can construct a concrete instance of `FeatureStateTypeInput` via:

FeatureStateTypeArgs{...}

type FeatureStateTypeOutput

type FeatureStateTypeOutput struct{ *pulumi.OutputState }

func (FeatureStateTypeOutput) ElementType

func (FeatureStateTypeOutput) ElementType() reflect.Type

func (FeatureStateTypeOutput) States

(Output) Output only. The "running state" of the Feature in this Hub. Structure is documented below.

func (FeatureStateTypeOutput) ToFeatureStateTypeOutput

func (o FeatureStateTypeOutput) ToFeatureStateTypeOutput() FeatureStateTypeOutput

func (FeatureStateTypeOutput) ToFeatureStateTypeOutputWithContext

func (o FeatureStateTypeOutput) ToFeatureStateTypeOutputWithContext(ctx context.Context) FeatureStateTypeOutput

func (FeatureStateTypeOutput) ToOutput

type LookupFeatureIamPolicyArgs

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

A collection of arguments for invoking getFeatureIamPolicy.

type LookupFeatureIamPolicyOutputArgs

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

A collection of arguments for invoking getFeatureIamPolicy.

func (LookupFeatureIamPolicyOutputArgs) ElementType

type LookupFeatureIamPolicyResult

type LookupFeatureIamPolicyResult struct {
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id       string `pulumi:"id"`
	Location string `pulumi:"location"`
	Name     string `pulumi:"name"`
	// (Required only by `gkehub.FeatureIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData string `pulumi:"policyData"`
	Project    string `pulumi:"project"`
}

A collection of values returned by getFeatureIamPolicy.

func LookupFeatureIamPolicy

func LookupFeatureIamPolicy(ctx *pulumi.Context, args *LookupFeatureIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupFeatureIamPolicyResult, error)

Retrieves the current IAM policy data for feature

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.LookupFeatureIamPolicy(ctx, &gkehub.LookupFeatureIamPolicyArgs{
			Project:  pulumi.StringRef(google_gke_hub_feature.Feature.Project),
			Location: pulumi.StringRef(google_gke_hub_feature.Feature.Location),
			Name:     google_gke_hub_feature.Feature.Name,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupFeatureIamPolicyResultOutput

type LookupFeatureIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getFeatureIamPolicy.

func (LookupFeatureIamPolicyResultOutput) ElementType

func (LookupFeatureIamPolicyResultOutput) Etag

(Computed) The etag of the IAM policy.

func (LookupFeatureIamPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupFeatureIamPolicyResultOutput) Location

func (LookupFeatureIamPolicyResultOutput) Name

func (LookupFeatureIamPolicyResultOutput) PolicyData

(Required only by `gkehub.FeatureIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupFeatureIamPolicyResultOutput) Project

func (LookupFeatureIamPolicyResultOutput) ToLookupFeatureIamPolicyResultOutput

func (o LookupFeatureIamPolicyResultOutput) ToLookupFeatureIamPolicyResultOutput() LookupFeatureIamPolicyResultOutput

func (LookupFeatureIamPolicyResultOutput) ToLookupFeatureIamPolicyResultOutputWithContext

func (o LookupFeatureIamPolicyResultOutput) ToLookupFeatureIamPolicyResultOutputWithContext(ctx context.Context) LookupFeatureIamPolicyResultOutput

func (LookupFeatureIamPolicyResultOutput) ToOutput

type LookupMembershipIamPolicyArgs

type LookupMembershipIamPolicyArgs struct {
	MembershipId string `pulumi:"membershipId"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project *string `pulumi:"project"`
}

A collection of arguments for invoking getMembershipIamPolicy.

type LookupMembershipIamPolicyOutputArgs

type LookupMembershipIamPolicyOutputArgs struct {
	MembershipId pulumi.StringInput `pulumi:"membershipId"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
}

A collection of arguments for invoking getMembershipIamPolicy.

func (LookupMembershipIamPolicyOutputArgs) ElementType

type LookupMembershipIamPolicyResult

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

A collection of values returned by getMembershipIamPolicy.

func LookupMembershipIamPolicy

func LookupMembershipIamPolicy(ctx *pulumi.Context, args *LookupMembershipIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupMembershipIamPolicyResult, error)

Retrieves the current IAM policy data for membership

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.LookupMembershipIamPolicy(ctx, &gkehub.LookupMembershipIamPolicyArgs{
			Project:      pulumi.StringRef(google_gke_hub_membership.Membership.Project),
			MembershipId: google_gke_hub_membership.Membership.Membership_id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupMembershipIamPolicyResultOutput

type LookupMembershipIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getMembershipIamPolicy.

func (LookupMembershipIamPolicyResultOutput) ElementType

func (LookupMembershipIamPolicyResultOutput) Etag

(Computed) The etag of the IAM policy.

func (LookupMembershipIamPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupMembershipIamPolicyResultOutput) MembershipId

func (LookupMembershipIamPolicyResultOutput) PolicyData

(Required only by `gkehub.MembershipIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupMembershipIamPolicyResultOutput) Project

func (LookupMembershipIamPolicyResultOutput) ToLookupMembershipIamPolicyResultOutput

func (o LookupMembershipIamPolicyResultOutput) ToLookupMembershipIamPolicyResultOutput() LookupMembershipIamPolicyResultOutput

func (LookupMembershipIamPolicyResultOutput) ToLookupMembershipIamPolicyResultOutputWithContext

func (o LookupMembershipIamPolicyResultOutput) ToLookupMembershipIamPolicyResultOutputWithContext(ctx context.Context) LookupMembershipIamPolicyResultOutput

func (LookupMembershipIamPolicyResultOutput) ToOutput

type LookupScopeIamPolicyArgs

type LookupScopeIamPolicyArgs struct {
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project *string `pulumi:"project"`
	ScopeId string  `pulumi:"scopeId"`
}

A collection of arguments for invoking getScopeIamPolicy.

type LookupScopeIamPolicyOutputArgs

type LookupScopeIamPolicyOutputArgs struct {
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
	ScopeId pulumi.StringInput    `pulumi:"scopeId"`
}

A collection of arguments for invoking getScopeIamPolicy.

func (LookupScopeIamPolicyOutputArgs) ElementType

type LookupScopeIamPolicyResult

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

A collection of values returned by getScopeIamPolicy.

func LookupScopeIamPolicy

func LookupScopeIamPolicy(ctx *pulumi.Context, args *LookupScopeIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupScopeIamPolicyResult, error)

Retrieves the current IAM policy data for scope

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.LookupScopeIamPolicy(ctx, &gkehub.LookupScopeIamPolicyArgs{
			Project: pulumi.StringRef(google_gke_hub_scope.Scope.Project),
			ScopeId: google_gke_hub_scope.Scope.Scope_id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupScopeIamPolicyResultOutput

type LookupScopeIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getScopeIamPolicy.

func (LookupScopeIamPolicyResultOutput) ElementType

func (LookupScopeIamPolicyResultOutput) Etag

(Computed) The etag of the IAM policy.

func (LookupScopeIamPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupScopeIamPolicyResultOutput) PolicyData

(Required only by `gkehub.ScopeIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupScopeIamPolicyResultOutput) Project

func (LookupScopeIamPolicyResultOutput) ScopeId

func (LookupScopeIamPolicyResultOutput) ToLookupScopeIamPolicyResultOutput

func (o LookupScopeIamPolicyResultOutput) ToLookupScopeIamPolicyResultOutput() LookupScopeIamPolicyResultOutput

func (LookupScopeIamPolicyResultOutput) ToLookupScopeIamPolicyResultOutputWithContext

func (o LookupScopeIamPolicyResultOutput) ToLookupScopeIamPolicyResultOutputWithContext(ctx context.Context) LookupScopeIamPolicyResultOutput

func (LookupScopeIamPolicyResultOutput) ToOutput

type Membership

type Membership struct {
	pulumi.CustomResourceState

	// Authority encodes how Google will recognize identities from this Membership.
	// See the workload identity documentation for more details:
	// https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
	// Structure is documented below.
	Authority MembershipAuthorityPtrOutput `pulumi:"authority"`
	// (Optional, Deprecated)
	// The name of this entity type to be displayed on the console. This field is unavailable in v1 of the API.
	//
	// > **Warning:** `description` is deprecated and will be removed in a future major release.
	//
	// Deprecated: `description` is deprecated and will be removed in a future major release.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapOutput `pulumi:"effectiveLabels"`
	// If this Membership is a Kubernetes API server hosted on GKE, this is a self link to its GCP resource.
	// Structure is documented below.
	Endpoint MembershipEndpointPtrOutput `pulumi:"endpoint"`
	// Labels to apply to this membership.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The client-provided identifier of the membership.
	//
	// ***
	MembershipId pulumi.StringOutput `pulumi:"membershipId"`
	// The unique identifier of the membership.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapOutput `pulumi:"pulumiLabels"`
}

Membership contains information about a member cluster.

To get more information about Membership, see:

* [API documentation](https://cloud.google.com/anthos/multicluster-management/reference/rest/v1/projects.locations.memberships) * How-to Guides

## Example Usage ### Gkehub Membership Basic

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primary, err := container.NewCluster(ctx, "primary", &container.ClusterArgs{
			DeletionProtection: pulumi.Bool(true),
			InitialNodeCount:   pulumi.Int(1),
			Location:           pulumi.String("us-central1-a"),
		})
		if err != nil {
			return err
		}
		_, err = gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
			Endpoint: &gkehub.MembershipEndpointArgs{
				GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
					ResourceLink: primary.ID().ApplyT(func(id string) (string, error) {
						return fmt.Sprintf("//container.googleapis.com/%v", id), nil
					}).(pulumi.StringOutput),
				},
			},
			Labels: pulumi.StringMap{
				"env": pulumi.String("test"),
			},
			MembershipId: pulumi.String("basic"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Gkehub Membership Issuer

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primary, err := container.NewCluster(ctx, "primary", &container.ClusterArgs{
			Location:         pulumi.String("us-central1-a"),
			InitialNodeCount: pulumi.Int(1),
			WorkloadIdentityConfig: &container.ClusterWorkloadIdentityConfigArgs{
				WorkloadPool: pulumi.String("my-project-name.svc.id.goog"),
			},
			DeletionProtection: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = gkehub.NewMembership(ctx, "membership", &gkehub.MembershipArgs{
			MembershipId: pulumi.String("basic"),
			Endpoint: &gkehub.MembershipEndpointArgs{
				GkeCluster: &gkehub.MembershipEndpointGkeClusterArgs{
					ResourceLink: primary.ID(),
				},
			},
			Authority: &gkehub.MembershipAuthorityArgs{
				Issuer: primary.ID().ApplyT(func(id string) (string, error) {
					return fmt.Sprintf("https://container.googleapis.com/v1/%v", id), nil
				}).(pulumi.StringOutput),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Membership can be imported using any of these accepted formats

```sh

$ pulumi import gcp:gkehub/membership:Membership default projects/{{project}}/locations/global/memberships/{{membership_id}}

```

```sh

$ pulumi import gcp:gkehub/membership:Membership default {{project}}/{{membership_id}}

```

```sh

$ pulumi import gcp:gkehub/membership:Membership default {{membership_id}}

```

func GetMembership

func GetMembership(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MembershipState, opts ...pulumi.ResourceOption) (*Membership, error)

GetMembership gets an existing Membership 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 NewMembership

func NewMembership(ctx *pulumi.Context,
	name string, args *MembershipArgs, opts ...pulumi.ResourceOption) (*Membership, error)

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

func (*Membership) ElementType

func (*Membership) ElementType() reflect.Type

func (*Membership) ToMembershipOutput

func (i *Membership) ToMembershipOutput() MembershipOutput

func (*Membership) ToMembershipOutputWithContext

func (i *Membership) ToMembershipOutputWithContext(ctx context.Context) MembershipOutput

func (*Membership) ToOutput

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

type MembershipArgs

type MembershipArgs struct {
	// Authority encodes how Google will recognize identities from this Membership.
	// See the workload identity documentation for more details:
	// https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
	// Structure is documented below.
	Authority MembershipAuthorityPtrInput
	// (Optional, Deprecated)
	// The name of this entity type to be displayed on the console. This field is unavailable in v1 of the API.
	//
	// > **Warning:** `description` is deprecated and will be removed in a future major release.
	//
	// Deprecated: `description` is deprecated and will be removed in a future major release.
	Description pulumi.StringPtrInput
	// If this Membership is a Kubernetes API server hosted on GKE, this is a self link to its GCP resource.
	// Structure is documented below.
	Endpoint MembershipEndpointPtrInput
	// Labels to apply to this membership.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The client-provided identifier of the membership.
	//
	// ***
	MembershipId pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
}

The set of arguments for constructing a Membership resource.

func (MembershipArgs) ElementType

func (MembershipArgs) ElementType() reflect.Type

type MembershipArray

type MembershipArray []MembershipInput

func (MembershipArray) ElementType

func (MembershipArray) ElementType() reflect.Type

func (MembershipArray) ToMembershipArrayOutput

func (i MembershipArray) ToMembershipArrayOutput() MembershipArrayOutput

func (MembershipArray) ToMembershipArrayOutputWithContext

func (i MembershipArray) ToMembershipArrayOutputWithContext(ctx context.Context) MembershipArrayOutput

func (MembershipArray) ToOutput

type MembershipArrayInput

type MembershipArrayInput interface {
	pulumi.Input

	ToMembershipArrayOutput() MembershipArrayOutput
	ToMembershipArrayOutputWithContext(context.Context) MembershipArrayOutput
}

MembershipArrayInput is an input type that accepts MembershipArray and MembershipArrayOutput values. You can construct a concrete instance of `MembershipArrayInput` via:

MembershipArray{ MembershipArgs{...} }

type MembershipArrayOutput

type MembershipArrayOutput struct{ *pulumi.OutputState }

func (MembershipArrayOutput) ElementType

func (MembershipArrayOutput) ElementType() reflect.Type

func (MembershipArrayOutput) Index

func (MembershipArrayOutput) ToMembershipArrayOutput

func (o MembershipArrayOutput) ToMembershipArrayOutput() MembershipArrayOutput

func (MembershipArrayOutput) ToMembershipArrayOutputWithContext

func (o MembershipArrayOutput) ToMembershipArrayOutputWithContext(ctx context.Context) MembershipArrayOutput

func (MembershipArrayOutput) ToOutput

type MembershipAuthority

type MembershipAuthority struct {
	Issuer string `pulumi:"issuer"`
}

type MembershipAuthorityArgs

type MembershipAuthorityArgs struct {
	Issuer pulumi.StringInput `pulumi:"issuer"`
}

func (MembershipAuthorityArgs) ElementType

func (MembershipAuthorityArgs) ElementType() reflect.Type

func (MembershipAuthorityArgs) ToMembershipAuthorityOutput

func (i MembershipAuthorityArgs) ToMembershipAuthorityOutput() MembershipAuthorityOutput

func (MembershipAuthorityArgs) ToMembershipAuthorityOutputWithContext

func (i MembershipAuthorityArgs) ToMembershipAuthorityOutputWithContext(ctx context.Context) MembershipAuthorityOutput

func (MembershipAuthorityArgs) ToMembershipAuthorityPtrOutput

func (i MembershipAuthorityArgs) ToMembershipAuthorityPtrOutput() MembershipAuthorityPtrOutput

func (MembershipAuthorityArgs) ToMembershipAuthorityPtrOutputWithContext

func (i MembershipAuthorityArgs) ToMembershipAuthorityPtrOutputWithContext(ctx context.Context) MembershipAuthorityPtrOutput

func (MembershipAuthorityArgs) ToOutput

type MembershipAuthorityInput

type MembershipAuthorityInput interface {
	pulumi.Input

	ToMembershipAuthorityOutput() MembershipAuthorityOutput
	ToMembershipAuthorityOutputWithContext(context.Context) MembershipAuthorityOutput
}

MembershipAuthorityInput is an input type that accepts MembershipAuthorityArgs and MembershipAuthorityOutput values. You can construct a concrete instance of `MembershipAuthorityInput` via:

MembershipAuthorityArgs{...}

type MembershipAuthorityOutput

type MembershipAuthorityOutput struct{ *pulumi.OutputState }

func (MembershipAuthorityOutput) ElementType

func (MembershipAuthorityOutput) ElementType() reflect.Type

func (MembershipAuthorityOutput) Issuer

func (MembershipAuthorityOutput) ToMembershipAuthorityOutput

func (o MembershipAuthorityOutput) ToMembershipAuthorityOutput() MembershipAuthorityOutput

func (MembershipAuthorityOutput) ToMembershipAuthorityOutputWithContext

func (o MembershipAuthorityOutput) ToMembershipAuthorityOutputWithContext(ctx context.Context) MembershipAuthorityOutput

func (MembershipAuthorityOutput) ToMembershipAuthorityPtrOutput

func (o MembershipAuthorityOutput) ToMembershipAuthorityPtrOutput() MembershipAuthorityPtrOutput

func (MembershipAuthorityOutput) ToMembershipAuthorityPtrOutputWithContext

func (o MembershipAuthorityOutput) ToMembershipAuthorityPtrOutputWithContext(ctx context.Context) MembershipAuthorityPtrOutput

func (MembershipAuthorityOutput) ToOutput

type MembershipAuthorityPtrInput

type MembershipAuthorityPtrInput interface {
	pulumi.Input

	ToMembershipAuthorityPtrOutput() MembershipAuthorityPtrOutput
	ToMembershipAuthorityPtrOutputWithContext(context.Context) MembershipAuthorityPtrOutput
}

MembershipAuthorityPtrInput is an input type that accepts MembershipAuthorityArgs, MembershipAuthorityPtr and MembershipAuthorityPtrOutput values. You can construct a concrete instance of `MembershipAuthorityPtrInput` via:

        MembershipAuthorityArgs{...}

or:

        nil

type MembershipAuthorityPtrOutput

type MembershipAuthorityPtrOutput struct{ *pulumi.OutputState }

func (MembershipAuthorityPtrOutput) Elem

func (MembershipAuthorityPtrOutput) ElementType

func (MembershipAuthorityPtrOutput) Issuer

func (MembershipAuthorityPtrOutput) ToMembershipAuthorityPtrOutput

func (o MembershipAuthorityPtrOutput) ToMembershipAuthorityPtrOutput() MembershipAuthorityPtrOutput

func (MembershipAuthorityPtrOutput) ToMembershipAuthorityPtrOutputWithContext

func (o MembershipAuthorityPtrOutput) ToMembershipAuthorityPtrOutputWithContext(ctx context.Context) MembershipAuthorityPtrOutput

func (MembershipAuthorityPtrOutput) ToOutput

type MembershipBinding

type MembershipBinding struct {
	pulumi.CustomResourceState

	// Time the MembershipBinding was created in UTC.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Time the MembershipBinding was deleted in UTC.
	DeleteTime pulumi.StringOutput `pulumi:"deleteTime"`
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapOutput `pulumi:"effectiveLabels"`
	// Labels for this Membership binding.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// Location of the membership
	//
	// ***
	Location pulumi.StringOutput `pulumi:"location"`
	// The client-provided identifier of the membership binding.
	MembershipBindingId pulumi.StringOutput `pulumi:"membershipBindingId"`
	// Id of the membership
	MembershipId pulumi.StringOutput `pulumi:"membershipId"`
	// The resource name for the membershipbinding itself
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapOutput `pulumi:"pulumiLabels"`
	// A Workspace resource name in the format
	// `projects/*/locations/*/scopes/*`.
	Scope pulumi.StringOutput `pulumi:"scope"`
	// State of the membership binding resource.
	// Structure is documented below.
	States MembershipBindingStateTypeArrayOutput `pulumi:"states"`
	// Google-generated UUID for this resource.
	Uid pulumi.StringOutput `pulumi:"uid"`
	// Time the MembershipBinding was updated in UTC.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
}

MembershipBinding is a subresource of a Membership, representing what Fleet Scopes (or other, future Fleet resources) a Membership is bound to.

To get more information about MembershipBinding, see:

* [API documentation](https://cloud.google.com/anthos/fleet-management/docs/reference/rest/v1/projects.locations.memberships.bindings) * How-to Guides

## Example Usage

## Import

MembershipBinding can be imported using any of these accepted formats

```sh

$ pulumi import gcp:gkehub/membershipBinding:MembershipBinding default projects/{{project}}/locations/{{location}}/memberships/{{membership_id}}/bindings/{{membership_binding_id}}

```

```sh

$ pulumi import gcp:gkehub/membershipBinding:MembershipBinding default {{project}}/{{location}}/{{membership_id}}/{{membership_binding_id}}

```

```sh

$ pulumi import gcp:gkehub/membershipBinding:MembershipBinding default {{location}}/{{membership_id}}/{{membership_binding_id}}

```

func GetMembershipBinding

func GetMembershipBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MembershipBindingState, opts ...pulumi.ResourceOption) (*MembershipBinding, error)

GetMembershipBinding gets an existing MembershipBinding 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 NewMembershipBinding

func NewMembershipBinding(ctx *pulumi.Context,
	name string, args *MembershipBindingArgs, opts ...pulumi.ResourceOption) (*MembershipBinding, error)

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

func (*MembershipBinding) ElementType

func (*MembershipBinding) ElementType() reflect.Type

func (*MembershipBinding) ToMembershipBindingOutput

func (i *MembershipBinding) ToMembershipBindingOutput() MembershipBindingOutput

func (*MembershipBinding) ToMembershipBindingOutputWithContext

func (i *MembershipBinding) ToMembershipBindingOutputWithContext(ctx context.Context) MembershipBindingOutput

func (*MembershipBinding) ToOutput

type MembershipBindingArgs

type MembershipBindingArgs struct {
	// Labels for this Membership binding.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// Location of the membership
	//
	// ***
	Location pulumi.StringInput
	// The client-provided identifier of the membership binding.
	MembershipBindingId pulumi.StringInput
	// Id of the membership
	MembershipId 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
	// A Workspace resource name in the format
	// `projects/*/locations/*/scopes/*`.
	Scope pulumi.StringInput
}

The set of arguments for constructing a MembershipBinding resource.

func (MembershipBindingArgs) ElementType

func (MembershipBindingArgs) ElementType() reflect.Type

type MembershipBindingArray

type MembershipBindingArray []MembershipBindingInput

func (MembershipBindingArray) ElementType

func (MembershipBindingArray) ElementType() reflect.Type

func (MembershipBindingArray) ToMembershipBindingArrayOutput

func (i MembershipBindingArray) ToMembershipBindingArrayOutput() MembershipBindingArrayOutput

func (MembershipBindingArray) ToMembershipBindingArrayOutputWithContext

func (i MembershipBindingArray) ToMembershipBindingArrayOutputWithContext(ctx context.Context) MembershipBindingArrayOutput

func (MembershipBindingArray) ToOutput

type MembershipBindingArrayInput

type MembershipBindingArrayInput interface {
	pulumi.Input

	ToMembershipBindingArrayOutput() MembershipBindingArrayOutput
	ToMembershipBindingArrayOutputWithContext(context.Context) MembershipBindingArrayOutput
}

MembershipBindingArrayInput is an input type that accepts MembershipBindingArray and MembershipBindingArrayOutput values. You can construct a concrete instance of `MembershipBindingArrayInput` via:

MembershipBindingArray{ MembershipBindingArgs{...} }

type MembershipBindingArrayOutput

type MembershipBindingArrayOutput struct{ *pulumi.OutputState }

func (MembershipBindingArrayOutput) ElementType

func (MembershipBindingArrayOutput) Index

func (MembershipBindingArrayOutput) ToMembershipBindingArrayOutput

func (o MembershipBindingArrayOutput) ToMembershipBindingArrayOutput() MembershipBindingArrayOutput

func (MembershipBindingArrayOutput) ToMembershipBindingArrayOutputWithContext

func (o MembershipBindingArrayOutput) ToMembershipBindingArrayOutputWithContext(ctx context.Context) MembershipBindingArrayOutput

func (MembershipBindingArrayOutput) ToOutput

type MembershipBindingInput

type MembershipBindingInput interface {
	pulumi.Input

	ToMembershipBindingOutput() MembershipBindingOutput
	ToMembershipBindingOutputWithContext(ctx context.Context) MembershipBindingOutput
}

type MembershipBindingMap

type MembershipBindingMap map[string]MembershipBindingInput

func (MembershipBindingMap) ElementType

func (MembershipBindingMap) ElementType() reflect.Type

func (MembershipBindingMap) ToMembershipBindingMapOutput

func (i MembershipBindingMap) ToMembershipBindingMapOutput() MembershipBindingMapOutput

func (MembershipBindingMap) ToMembershipBindingMapOutputWithContext

func (i MembershipBindingMap) ToMembershipBindingMapOutputWithContext(ctx context.Context) MembershipBindingMapOutput

func (MembershipBindingMap) ToOutput

type MembershipBindingMapInput

type MembershipBindingMapInput interface {
	pulumi.Input

	ToMembershipBindingMapOutput() MembershipBindingMapOutput
	ToMembershipBindingMapOutputWithContext(context.Context) MembershipBindingMapOutput
}

MembershipBindingMapInput is an input type that accepts MembershipBindingMap and MembershipBindingMapOutput values. You can construct a concrete instance of `MembershipBindingMapInput` via:

MembershipBindingMap{ "key": MembershipBindingArgs{...} }

type MembershipBindingMapOutput

type MembershipBindingMapOutput struct{ *pulumi.OutputState }

func (MembershipBindingMapOutput) ElementType

func (MembershipBindingMapOutput) ElementType() reflect.Type

func (MembershipBindingMapOutput) MapIndex

func (MembershipBindingMapOutput) ToMembershipBindingMapOutput

func (o MembershipBindingMapOutput) ToMembershipBindingMapOutput() MembershipBindingMapOutput

func (MembershipBindingMapOutput) ToMembershipBindingMapOutputWithContext

func (o MembershipBindingMapOutput) ToMembershipBindingMapOutputWithContext(ctx context.Context) MembershipBindingMapOutput

func (MembershipBindingMapOutput) ToOutput

type MembershipBindingOutput

type MembershipBindingOutput struct{ *pulumi.OutputState }

func (MembershipBindingOutput) CreateTime

Time the MembershipBinding was created in UTC.

func (MembershipBindingOutput) DeleteTime

Time the MembershipBinding was deleted in UTC.

func (MembershipBindingOutput) EffectiveLabels

func (o MembershipBindingOutput) EffectiveLabels() pulumi.StringMapOutput

All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other clients and services.

func (MembershipBindingOutput) ElementType

func (MembershipBindingOutput) ElementType() reflect.Type

func (MembershipBindingOutput) Labels

Labels for this Membership binding.

**Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field `effectiveLabels` for all of the labels present on the resource.

func (MembershipBindingOutput) Location

Location of the membership

***

func (MembershipBindingOutput) MembershipBindingId

func (o MembershipBindingOutput) MembershipBindingId() pulumi.StringOutput

The client-provided identifier of the membership binding.

func (MembershipBindingOutput) MembershipId

func (o MembershipBindingOutput) MembershipId() pulumi.StringOutput

Id of the membership

func (MembershipBindingOutput) Name

The resource name for the membershipbinding itself

func (MembershipBindingOutput) Project

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

func (MembershipBindingOutput) PulumiLabels

The combination of labels configured directly on the resource and default labels configured on the provider.

func (MembershipBindingOutput) Scope

A Workspace resource name in the format `projects/*/locations/*/scopes/*`.

func (MembershipBindingOutput) States

State of the membership binding resource. Structure is documented below.

func (MembershipBindingOutput) ToMembershipBindingOutput

func (o MembershipBindingOutput) ToMembershipBindingOutput() MembershipBindingOutput

func (MembershipBindingOutput) ToMembershipBindingOutputWithContext

func (o MembershipBindingOutput) ToMembershipBindingOutputWithContext(ctx context.Context) MembershipBindingOutput

func (MembershipBindingOutput) ToOutput

func (MembershipBindingOutput) Uid

Google-generated UUID for this resource.

func (MembershipBindingOutput) UpdateTime

Time the MembershipBinding was updated in UTC.

type MembershipBindingState

type MembershipBindingState struct {
	// Time the MembershipBinding was created in UTC.
	CreateTime pulumi.StringPtrInput
	// Time the MembershipBinding was deleted in UTC.
	DeleteTime pulumi.StringPtrInput
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapInput
	// Labels for this Membership binding.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// Location of the membership
	//
	// ***
	Location pulumi.StringPtrInput
	// The client-provided identifier of the membership binding.
	MembershipBindingId pulumi.StringPtrInput
	// Id of the membership
	MembershipId pulumi.StringPtrInput
	// The resource name for the membershipbinding itself
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapInput
	// A Workspace resource name in the format
	// `projects/*/locations/*/scopes/*`.
	Scope pulumi.StringPtrInput
	// State of the membership binding resource.
	// Structure is documented below.
	States MembershipBindingStateTypeArrayInput
	// Google-generated UUID for this resource.
	Uid pulumi.StringPtrInput
	// Time the MembershipBinding was updated in UTC.
	UpdateTime pulumi.StringPtrInput
}

func (MembershipBindingState) ElementType

func (MembershipBindingState) ElementType() reflect.Type

type MembershipBindingStateType

type MembershipBindingStateType struct {
	// (Output)
	// Code describes the state of a MembershipBinding resource.
	Code *string `pulumi:"code"`
}

type MembershipBindingStateTypeArgs

type MembershipBindingStateTypeArgs struct {
	// (Output)
	// Code describes the state of a MembershipBinding resource.
	Code pulumi.StringPtrInput `pulumi:"code"`
}

func (MembershipBindingStateTypeArgs) ElementType

func (MembershipBindingStateTypeArgs) ToMembershipBindingStateTypeOutput

func (i MembershipBindingStateTypeArgs) ToMembershipBindingStateTypeOutput() MembershipBindingStateTypeOutput

func (MembershipBindingStateTypeArgs) ToMembershipBindingStateTypeOutputWithContext

func (i MembershipBindingStateTypeArgs) ToMembershipBindingStateTypeOutputWithContext(ctx context.Context) MembershipBindingStateTypeOutput

func (MembershipBindingStateTypeArgs) ToOutput

type MembershipBindingStateTypeArray

type MembershipBindingStateTypeArray []MembershipBindingStateTypeInput

func (MembershipBindingStateTypeArray) ElementType

func (MembershipBindingStateTypeArray) ToMembershipBindingStateTypeArrayOutput

func (i MembershipBindingStateTypeArray) ToMembershipBindingStateTypeArrayOutput() MembershipBindingStateTypeArrayOutput

func (MembershipBindingStateTypeArray) ToMembershipBindingStateTypeArrayOutputWithContext

func (i MembershipBindingStateTypeArray) ToMembershipBindingStateTypeArrayOutputWithContext(ctx context.Context) MembershipBindingStateTypeArrayOutput

func (MembershipBindingStateTypeArray) ToOutput

type MembershipBindingStateTypeArrayInput

type MembershipBindingStateTypeArrayInput interface {
	pulumi.Input

	ToMembershipBindingStateTypeArrayOutput() MembershipBindingStateTypeArrayOutput
	ToMembershipBindingStateTypeArrayOutputWithContext(context.Context) MembershipBindingStateTypeArrayOutput
}

MembershipBindingStateTypeArrayInput is an input type that accepts MembershipBindingStateTypeArray and MembershipBindingStateTypeArrayOutput values. You can construct a concrete instance of `MembershipBindingStateTypeArrayInput` via:

MembershipBindingStateTypeArray{ MembershipBindingStateTypeArgs{...} }

type MembershipBindingStateTypeArrayOutput

type MembershipBindingStateTypeArrayOutput struct{ *pulumi.OutputState }

func (MembershipBindingStateTypeArrayOutput) ElementType

func (MembershipBindingStateTypeArrayOutput) Index

func (MembershipBindingStateTypeArrayOutput) ToMembershipBindingStateTypeArrayOutput

func (o MembershipBindingStateTypeArrayOutput) ToMembershipBindingStateTypeArrayOutput() MembershipBindingStateTypeArrayOutput

func (MembershipBindingStateTypeArrayOutput) ToMembershipBindingStateTypeArrayOutputWithContext

func (o MembershipBindingStateTypeArrayOutput) ToMembershipBindingStateTypeArrayOutputWithContext(ctx context.Context) MembershipBindingStateTypeArrayOutput

func (MembershipBindingStateTypeArrayOutput) ToOutput

type MembershipBindingStateTypeInput

type MembershipBindingStateTypeInput interface {
	pulumi.Input

	ToMembershipBindingStateTypeOutput() MembershipBindingStateTypeOutput
	ToMembershipBindingStateTypeOutputWithContext(context.Context) MembershipBindingStateTypeOutput
}

MembershipBindingStateTypeInput is an input type that accepts MembershipBindingStateTypeArgs and MembershipBindingStateTypeOutput values. You can construct a concrete instance of `MembershipBindingStateTypeInput` via:

MembershipBindingStateTypeArgs{...}

type MembershipBindingStateTypeOutput

type MembershipBindingStateTypeOutput struct{ *pulumi.OutputState }

func (MembershipBindingStateTypeOutput) Code

(Output) Code describes the state of a MembershipBinding resource.

func (MembershipBindingStateTypeOutput) ElementType

func (MembershipBindingStateTypeOutput) ToMembershipBindingStateTypeOutput

func (o MembershipBindingStateTypeOutput) ToMembershipBindingStateTypeOutput() MembershipBindingStateTypeOutput

func (MembershipBindingStateTypeOutput) ToMembershipBindingStateTypeOutputWithContext

func (o MembershipBindingStateTypeOutput) ToMembershipBindingStateTypeOutputWithContext(ctx context.Context) MembershipBindingStateTypeOutput

func (MembershipBindingStateTypeOutput) ToOutput

type MembershipEndpoint

type MembershipEndpoint struct {
	// If this Membership is a Kubernetes API server hosted on GKE, this is a self link to its GCP resource.
	// Structure is documented below.
	GkeCluster *MembershipEndpointGkeCluster `pulumi:"gkeCluster"`
}

type MembershipEndpointArgs

type MembershipEndpointArgs struct {
	// If this Membership is a Kubernetes API server hosted on GKE, this is a self link to its GCP resource.
	// Structure is documented below.
	GkeCluster MembershipEndpointGkeClusterPtrInput `pulumi:"gkeCluster"`
}

func (MembershipEndpointArgs) ElementType

func (MembershipEndpointArgs) ElementType() reflect.Type

func (MembershipEndpointArgs) ToMembershipEndpointOutput

func (i MembershipEndpointArgs) ToMembershipEndpointOutput() MembershipEndpointOutput

func (MembershipEndpointArgs) ToMembershipEndpointOutputWithContext

func (i MembershipEndpointArgs) ToMembershipEndpointOutputWithContext(ctx context.Context) MembershipEndpointOutput

func (MembershipEndpointArgs) ToMembershipEndpointPtrOutput

func (i MembershipEndpointArgs) ToMembershipEndpointPtrOutput() MembershipEndpointPtrOutput

func (MembershipEndpointArgs) ToMembershipEndpointPtrOutputWithContext

func (i MembershipEndpointArgs) ToMembershipEndpointPtrOutputWithContext(ctx context.Context) MembershipEndpointPtrOutput

func (MembershipEndpointArgs) ToOutput

type MembershipEndpointGkeCluster

type MembershipEndpointGkeCluster struct {
	ResourceLink string `pulumi:"resourceLink"`
}

type MembershipEndpointGkeClusterArgs

type MembershipEndpointGkeClusterArgs struct {
	ResourceLink pulumi.StringInput `pulumi:"resourceLink"`
}

func (MembershipEndpointGkeClusterArgs) ElementType

func (MembershipEndpointGkeClusterArgs) ToMembershipEndpointGkeClusterOutput

func (i MembershipEndpointGkeClusterArgs) ToMembershipEndpointGkeClusterOutput() MembershipEndpointGkeClusterOutput

func (MembershipEndpointGkeClusterArgs) ToMembershipEndpointGkeClusterOutputWithContext

func (i MembershipEndpointGkeClusterArgs) ToMembershipEndpointGkeClusterOutputWithContext(ctx context.Context) MembershipEndpointGkeClusterOutput

func (MembershipEndpointGkeClusterArgs) ToMembershipEndpointGkeClusterPtrOutput

func (i MembershipEndpointGkeClusterArgs) ToMembershipEndpointGkeClusterPtrOutput() MembershipEndpointGkeClusterPtrOutput

func (MembershipEndpointGkeClusterArgs) ToMembershipEndpointGkeClusterPtrOutputWithContext

func (i MembershipEndpointGkeClusterArgs) ToMembershipEndpointGkeClusterPtrOutputWithContext(ctx context.Context) MembershipEndpointGkeClusterPtrOutput

func (MembershipEndpointGkeClusterArgs) ToOutput

type MembershipEndpointGkeClusterInput

type MembershipEndpointGkeClusterInput interface {
	pulumi.Input

	ToMembershipEndpointGkeClusterOutput() MembershipEndpointGkeClusterOutput
	ToMembershipEndpointGkeClusterOutputWithContext(context.Context) MembershipEndpointGkeClusterOutput
}

MembershipEndpointGkeClusterInput is an input type that accepts MembershipEndpointGkeClusterArgs and MembershipEndpointGkeClusterOutput values. You can construct a concrete instance of `MembershipEndpointGkeClusterInput` via:

MembershipEndpointGkeClusterArgs{...}

type MembershipEndpointGkeClusterOutput

type MembershipEndpointGkeClusterOutput struct{ *pulumi.OutputState }

func (MembershipEndpointGkeClusterOutput) ElementType

func (MembershipEndpointGkeClusterOutput) ToMembershipEndpointGkeClusterOutput

func (o MembershipEndpointGkeClusterOutput) ToMembershipEndpointGkeClusterOutput() MembershipEndpointGkeClusterOutput

func (MembershipEndpointGkeClusterOutput) ToMembershipEndpointGkeClusterOutputWithContext

func (o MembershipEndpointGkeClusterOutput) ToMembershipEndpointGkeClusterOutputWithContext(ctx context.Context) MembershipEndpointGkeClusterOutput

func (MembershipEndpointGkeClusterOutput) ToMembershipEndpointGkeClusterPtrOutput

func (o MembershipEndpointGkeClusterOutput) ToMembershipEndpointGkeClusterPtrOutput() MembershipEndpointGkeClusterPtrOutput

func (MembershipEndpointGkeClusterOutput) ToMembershipEndpointGkeClusterPtrOutputWithContext

func (o MembershipEndpointGkeClusterOutput) ToMembershipEndpointGkeClusterPtrOutputWithContext(ctx context.Context) MembershipEndpointGkeClusterPtrOutput

func (MembershipEndpointGkeClusterOutput) ToOutput

type MembershipEndpointGkeClusterPtrInput

type MembershipEndpointGkeClusterPtrInput interface {
	pulumi.Input

	ToMembershipEndpointGkeClusterPtrOutput() MembershipEndpointGkeClusterPtrOutput
	ToMembershipEndpointGkeClusterPtrOutputWithContext(context.Context) MembershipEndpointGkeClusterPtrOutput
}

MembershipEndpointGkeClusterPtrInput is an input type that accepts MembershipEndpointGkeClusterArgs, MembershipEndpointGkeClusterPtr and MembershipEndpointGkeClusterPtrOutput values. You can construct a concrete instance of `MembershipEndpointGkeClusterPtrInput` via:

        MembershipEndpointGkeClusterArgs{...}

or:

        nil

type MembershipEndpointGkeClusterPtrOutput

type MembershipEndpointGkeClusterPtrOutput struct{ *pulumi.OutputState }

func (MembershipEndpointGkeClusterPtrOutput) Elem

func (MembershipEndpointGkeClusterPtrOutput) ElementType

func (MembershipEndpointGkeClusterPtrOutput) ToMembershipEndpointGkeClusterPtrOutput

func (o MembershipEndpointGkeClusterPtrOutput) ToMembershipEndpointGkeClusterPtrOutput() MembershipEndpointGkeClusterPtrOutput

func (MembershipEndpointGkeClusterPtrOutput) ToMembershipEndpointGkeClusterPtrOutputWithContext

func (o MembershipEndpointGkeClusterPtrOutput) ToMembershipEndpointGkeClusterPtrOutputWithContext(ctx context.Context) MembershipEndpointGkeClusterPtrOutput

func (MembershipEndpointGkeClusterPtrOutput) ToOutput

type MembershipEndpointInput

type MembershipEndpointInput interface {
	pulumi.Input

	ToMembershipEndpointOutput() MembershipEndpointOutput
	ToMembershipEndpointOutputWithContext(context.Context) MembershipEndpointOutput
}

MembershipEndpointInput is an input type that accepts MembershipEndpointArgs and MembershipEndpointOutput values. You can construct a concrete instance of `MembershipEndpointInput` via:

MembershipEndpointArgs{...}

type MembershipEndpointOutput

type MembershipEndpointOutput struct{ *pulumi.OutputState }

func (MembershipEndpointOutput) ElementType

func (MembershipEndpointOutput) ElementType() reflect.Type

func (MembershipEndpointOutput) GkeCluster

If this Membership is a Kubernetes API server hosted on GKE, this is a self link to its GCP resource. Structure is documented below.

func (MembershipEndpointOutput) ToMembershipEndpointOutput

func (o MembershipEndpointOutput) ToMembershipEndpointOutput() MembershipEndpointOutput

func (MembershipEndpointOutput) ToMembershipEndpointOutputWithContext

func (o MembershipEndpointOutput) ToMembershipEndpointOutputWithContext(ctx context.Context) MembershipEndpointOutput

func (MembershipEndpointOutput) ToMembershipEndpointPtrOutput

func (o MembershipEndpointOutput) ToMembershipEndpointPtrOutput() MembershipEndpointPtrOutput

func (MembershipEndpointOutput) ToMembershipEndpointPtrOutputWithContext

func (o MembershipEndpointOutput) ToMembershipEndpointPtrOutputWithContext(ctx context.Context) MembershipEndpointPtrOutput

func (MembershipEndpointOutput) ToOutput

type MembershipEndpointPtrInput

type MembershipEndpointPtrInput interface {
	pulumi.Input

	ToMembershipEndpointPtrOutput() MembershipEndpointPtrOutput
	ToMembershipEndpointPtrOutputWithContext(context.Context) MembershipEndpointPtrOutput
}

MembershipEndpointPtrInput is an input type that accepts MembershipEndpointArgs, MembershipEndpointPtr and MembershipEndpointPtrOutput values. You can construct a concrete instance of `MembershipEndpointPtrInput` via:

        MembershipEndpointArgs{...}

or:

        nil

type MembershipEndpointPtrOutput

type MembershipEndpointPtrOutput struct{ *pulumi.OutputState }

func (MembershipEndpointPtrOutput) Elem

func (MembershipEndpointPtrOutput) ElementType

func (MembershipEndpointPtrOutput) GkeCluster

If this Membership is a Kubernetes API server hosted on GKE, this is a self link to its GCP resource. Structure is documented below.

func (MembershipEndpointPtrOutput) ToMembershipEndpointPtrOutput

func (o MembershipEndpointPtrOutput) ToMembershipEndpointPtrOutput() MembershipEndpointPtrOutput

func (MembershipEndpointPtrOutput) ToMembershipEndpointPtrOutputWithContext

func (o MembershipEndpointPtrOutput) ToMembershipEndpointPtrOutputWithContext(ctx context.Context) MembershipEndpointPtrOutput

func (MembershipEndpointPtrOutput) ToOutput

type MembershipIamBinding

type MembershipIamBinding struct {
	pulumi.CustomResourceState

	Condition MembershipIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag         pulumi.StringOutput      `pulumi:"etag"`
	Members      pulumi.StringArrayOutput `pulumi:"members"`
	MembershipId pulumi.StringOutput      `pulumi:"membershipId"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `gkehub.MembershipIamBinding` 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 GKEHub Membership. Each of these resources serves a different use case:

* `gkehub.MembershipIamPolicy`: Authoritative. Sets the IAM policy for the membership and replaces any existing policy already attached. * `gkehub.MembershipIamBinding`: 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 membership are preserved. * `gkehub.MembershipIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the membership are preserved.

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

* `gkehub.MembershipIamPolicy`: Retrieves the IAM policy for the membership

> **Note:** `gkehub.MembershipIamPolicy` **cannot** be used in conjunction with `gkehub.MembershipIamBinding` and `gkehub.MembershipIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_membership\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewMembershipIamPolicy(ctx, "policy", &gkehub.MembershipIamPolicyArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			PolicyData:   *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_membership\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewMembershipIamBinding(ctx, "binding", &gkehub.MembershipIamBindingArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			Role:         pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_membership\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewMembershipIamMember(ctx, "member", &gkehub.MembershipIamMemberArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			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/{{location}}/memberships/{{membership_id}} * {{project}}/{{location}}/{{membership_id}} * {{location}}/{{membership_id}} * {{membership_id}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub membership 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:gkehub/membershipIamBinding:MembershipIamBinding editor "projects/{{project}}/locations/{{location}}/memberships/{{membership_id}} 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:gkehub/membershipIamBinding:MembershipIamBinding editor "projects/{{project}}/locations/{{location}}/memberships/{{membership_id}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/membershipIamBinding:MembershipIamBinding editor projects/{{project}}/locations/{{location}}/memberships/{{membership_id}}

```

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

func GetMembershipIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MembershipIamBindingState, opts ...pulumi.ResourceOption) (*MembershipIamBinding, error)

GetMembershipIamBinding gets an existing MembershipIamBinding 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 NewMembershipIamBinding

func NewMembershipIamBinding(ctx *pulumi.Context,
	name string, args *MembershipIamBindingArgs, opts ...pulumi.ResourceOption) (*MembershipIamBinding, error)

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

func (*MembershipIamBinding) ElementType

func (*MembershipIamBinding) ElementType() reflect.Type

func (*MembershipIamBinding) ToMembershipIamBindingOutput

func (i *MembershipIamBinding) ToMembershipIamBindingOutput() MembershipIamBindingOutput

func (*MembershipIamBinding) ToMembershipIamBindingOutputWithContext

func (i *MembershipIamBinding) ToMembershipIamBindingOutputWithContext(ctx context.Context) MembershipIamBindingOutput

func (*MembershipIamBinding) ToOutput

type MembershipIamBindingArgs

type MembershipIamBindingArgs struct {
	Condition    MembershipIamBindingConditionPtrInput
	Members      pulumi.StringArrayInput
	MembershipId pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `gkehub.MembershipIamBinding` 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 MembershipIamBinding resource.

func (MembershipIamBindingArgs) ElementType

func (MembershipIamBindingArgs) ElementType() reflect.Type

type MembershipIamBindingArray

type MembershipIamBindingArray []MembershipIamBindingInput

func (MembershipIamBindingArray) ElementType

func (MembershipIamBindingArray) ElementType() reflect.Type

func (MembershipIamBindingArray) ToMembershipIamBindingArrayOutput

func (i MembershipIamBindingArray) ToMembershipIamBindingArrayOutput() MembershipIamBindingArrayOutput

func (MembershipIamBindingArray) ToMembershipIamBindingArrayOutputWithContext

func (i MembershipIamBindingArray) ToMembershipIamBindingArrayOutputWithContext(ctx context.Context) MembershipIamBindingArrayOutput

func (MembershipIamBindingArray) ToOutput

type MembershipIamBindingArrayInput

type MembershipIamBindingArrayInput interface {
	pulumi.Input

	ToMembershipIamBindingArrayOutput() MembershipIamBindingArrayOutput
	ToMembershipIamBindingArrayOutputWithContext(context.Context) MembershipIamBindingArrayOutput
}

MembershipIamBindingArrayInput is an input type that accepts MembershipIamBindingArray and MembershipIamBindingArrayOutput values. You can construct a concrete instance of `MembershipIamBindingArrayInput` via:

MembershipIamBindingArray{ MembershipIamBindingArgs{...} }

type MembershipIamBindingArrayOutput

type MembershipIamBindingArrayOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingArrayOutput) ElementType

func (MembershipIamBindingArrayOutput) Index

func (MembershipIamBindingArrayOutput) ToMembershipIamBindingArrayOutput

func (o MembershipIamBindingArrayOutput) ToMembershipIamBindingArrayOutput() MembershipIamBindingArrayOutput

func (MembershipIamBindingArrayOutput) ToMembershipIamBindingArrayOutputWithContext

func (o MembershipIamBindingArrayOutput) ToMembershipIamBindingArrayOutputWithContext(ctx context.Context) MembershipIamBindingArrayOutput

func (MembershipIamBindingArrayOutput) ToOutput

type MembershipIamBindingCondition

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

type MembershipIamBindingConditionArgs

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

func (MembershipIamBindingConditionArgs) ElementType

func (MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionOutput

func (i MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionOutput() MembershipIamBindingConditionOutput

func (MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionOutputWithContext

func (i MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionOutputWithContext(ctx context.Context) MembershipIamBindingConditionOutput

func (MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionPtrOutput

func (i MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionPtrOutput() MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionPtrOutputWithContext

func (i MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionPtrOutputWithContext(ctx context.Context) MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionArgs) ToOutput

type MembershipIamBindingConditionInput

type MembershipIamBindingConditionInput interface {
	pulumi.Input

	ToMembershipIamBindingConditionOutput() MembershipIamBindingConditionOutput
	ToMembershipIamBindingConditionOutputWithContext(context.Context) MembershipIamBindingConditionOutput
}

MembershipIamBindingConditionInput is an input type that accepts MembershipIamBindingConditionArgs and MembershipIamBindingConditionOutput values. You can construct a concrete instance of `MembershipIamBindingConditionInput` via:

MembershipIamBindingConditionArgs{...}

type MembershipIamBindingConditionOutput

type MembershipIamBindingConditionOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingConditionOutput) Description

func (MembershipIamBindingConditionOutput) ElementType

func (MembershipIamBindingConditionOutput) Expression

func (MembershipIamBindingConditionOutput) Title

func (MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionOutput

func (o MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionOutput() MembershipIamBindingConditionOutput

func (MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionOutputWithContext

func (o MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionOutputWithContext(ctx context.Context) MembershipIamBindingConditionOutput

func (MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionPtrOutput

func (o MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionPtrOutput() MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionPtrOutputWithContext

func (o MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionPtrOutputWithContext(ctx context.Context) MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionOutput) ToOutput

type MembershipIamBindingConditionPtrInput

type MembershipIamBindingConditionPtrInput interface {
	pulumi.Input

	ToMembershipIamBindingConditionPtrOutput() MembershipIamBindingConditionPtrOutput
	ToMembershipIamBindingConditionPtrOutputWithContext(context.Context) MembershipIamBindingConditionPtrOutput
}

MembershipIamBindingConditionPtrInput is an input type that accepts MembershipIamBindingConditionArgs, MembershipIamBindingConditionPtr and MembershipIamBindingConditionPtrOutput values. You can construct a concrete instance of `MembershipIamBindingConditionPtrInput` via:

        MembershipIamBindingConditionArgs{...}

or:

        nil

type MembershipIamBindingConditionPtrOutput

type MembershipIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingConditionPtrOutput) Description

func (MembershipIamBindingConditionPtrOutput) Elem

func (MembershipIamBindingConditionPtrOutput) ElementType

func (MembershipIamBindingConditionPtrOutput) Expression

func (MembershipIamBindingConditionPtrOutput) Title

func (MembershipIamBindingConditionPtrOutput) ToMembershipIamBindingConditionPtrOutput

func (o MembershipIamBindingConditionPtrOutput) ToMembershipIamBindingConditionPtrOutput() MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionPtrOutput) ToMembershipIamBindingConditionPtrOutputWithContext

func (o MembershipIamBindingConditionPtrOutput) ToMembershipIamBindingConditionPtrOutputWithContext(ctx context.Context) MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionPtrOutput) ToOutput

type MembershipIamBindingInput

type MembershipIamBindingInput interface {
	pulumi.Input

	ToMembershipIamBindingOutput() MembershipIamBindingOutput
	ToMembershipIamBindingOutputWithContext(ctx context.Context) MembershipIamBindingOutput
}

type MembershipIamBindingMap

type MembershipIamBindingMap map[string]MembershipIamBindingInput

func (MembershipIamBindingMap) ElementType

func (MembershipIamBindingMap) ElementType() reflect.Type

func (MembershipIamBindingMap) ToMembershipIamBindingMapOutput

func (i MembershipIamBindingMap) ToMembershipIamBindingMapOutput() MembershipIamBindingMapOutput

func (MembershipIamBindingMap) ToMembershipIamBindingMapOutputWithContext

func (i MembershipIamBindingMap) ToMembershipIamBindingMapOutputWithContext(ctx context.Context) MembershipIamBindingMapOutput

func (MembershipIamBindingMap) ToOutput

type MembershipIamBindingMapInput

type MembershipIamBindingMapInput interface {
	pulumi.Input

	ToMembershipIamBindingMapOutput() MembershipIamBindingMapOutput
	ToMembershipIamBindingMapOutputWithContext(context.Context) MembershipIamBindingMapOutput
}

MembershipIamBindingMapInput is an input type that accepts MembershipIamBindingMap and MembershipIamBindingMapOutput values. You can construct a concrete instance of `MembershipIamBindingMapInput` via:

MembershipIamBindingMap{ "key": MembershipIamBindingArgs{...} }

type MembershipIamBindingMapOutput

type MembershipIamBindingMapOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingMapOutput) ElementType

func (MembershipIamBindingMapOutput) MapIndex

func (MembershipIamBindingMapOutput) ToMembershipIamBindingMapOutput

func (o MembershipIamBindingMapOutput) ToMembershipIamBindingMapOutput() MembershipIamBindingMapOutput

func (MembershipIamBindingMapOutput) ToMembershipIamBindingMapOutputWithContext

func (o MembershipIamBindingMapOutput) ToMembershipIamBindingMapOutputWithContext(ctx context.Context) MembershipIamBindingMapOutput

func (MembershipIamBindingMapOutput) ToOutput

type MembershipIamBindingOutput

type MembershipIamBindingOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingOutput) Condition

func (MembershipIamBindingOutput) ElementType

func (MembershipIamBindingOutput) ElementType() reflect.Type

func (MembershipIamBindingOutput) Etag

(Computed) The etag of the IAM policy.

func (MembershipIamBindingOutput) Members

func (MembershipIamBindingOutput) MembershipId

func (MembershipIamBindingOutput) Project

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

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

func (MembershipIamBindingOutput) Role

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

func (MembershipIamBindingOutput) ToMembershipIamBindingOutput

func (o MembershipIamBindingOutput) ToMembershipIamBindingOutput() MembershipIamBindingOutput

func (MembershipIamBindingOutput) ToMembershipIamBindingOutputWithContext

func (o MembershipIamBindingOutput) ToMembershipIamBindingOutputWithContext(ctx context.Context) MembershipIamBindingOutput

func (MembershipIamBindingOutput) ToOutput

type MembershipIamBindingState

type MembershipIamBindingState struct {
	Condition MembershipIamBindingConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag         pulumi.StringPtrInput
	Members      pulumi.StringArrayInput
	MembershipId pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `gkehub.MembershipIamBinding` 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 (MembershipIamBindingState) ElementType

func (MembershipIamBindingState) ElementType() reflect.Type

type MembershipIamMember

type MembershipIamMember struct {
	pulumi.CustomResourceState

	Condition MembershipIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag         pulumi.StringOutput `pulumi:"etag"`
	Member       pulumi.StringOutput `pulumi:"member"`
	MembershipId pulumi.StringOutput `pulumi:"membershipId"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `gkehub.MembershipIamBinding` 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 GKEHub Membership. Each of these resources serves a different use case:

* `gkehub.MembershipIamPolicy`: Authoritative. Sets the IAM policy for the membership and replaces any existing policy already attached. * `gkehub.MembershipIamBinding`: 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 membership are preserved. * `gkehub.MembershipIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the membership are preserved.

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

* `gkehub.MembershipIamPolicy`: Retrieves the IAM policy for the membership

> **Note:** `gkehub.MembershipIamPolicy` **cannot** be used in conjunction with `gkehub.MembershipIamBinding` and `gkehub.MembershipIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_membership\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewMembershipIamPolicy(ctx, "policy", &gkehub.MembershipIamPolicyArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			PolicyData:   *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_membership\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewMembershipIamBinding(ctx, "binding", &gkehub.MembershipIamBindingArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			Role:         pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_membership\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewMembershipIamMember(ctx, "member", &gkehub.MembershipIamMemberArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			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/{{location}}/memberships/{{membership_id}} * {{project}}/{{location}}/{{membership_id}} * {{location}}/{{membership_id}} * {{membership_id}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub membership 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:gkehub/membershipIamMember:MembershipIamMember editor "projects/{{project}}/locations/{{location}}/memberships/{{membership_id}} 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:gkehub/membershipIamMember:MembershipIamMember editor "projects/{{project}}/locations/{{location}}/memberships/{{membership_id}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/membershipIamMember:MembershipIamMember editor projects/{{project}}/locations/{{location}}/memberships/{{membership_id}}

```

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

func GetMembershipIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MembershipIamMemberState, opts ...pulumi.ResourceOption) (*MembershipIamMember, error)

GetMembershipIamMember gets an existing MembershipIamMember 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 NewMembershipIamMember

func NewMembershipIamMember(ctx *pulumi.Context,
	name string, args *MembershipIamMemberArgs, opts ...pulumi.ResourceOption) (*MembershipIamMember, error)

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

func (*MembershipIamMember) ElementType

func (*MembershipIamMember) ElementType() reflect.Type

func (*MembershipIamMember) ToMembershipIamMemberOutput

func (i *MembershipIamMember) ToMembershipIamMemberOutput() MembershipIamMemberOutput

func (*MembershipIamMember) ToMembershipIamMemberOutputWithContext

func (i *MembershipIamMember) ToMembershipIamMemberOutputWithContext(ctx context.Context) MembershipIamMemberOutput

func (*MembershipIamMember) ToOutput

type MembershipIamMemberArgs

type MembershipIamMemberArgs struct {
	Condition    MembershipIamMemberConditionPtrInput
	Member       pulumi.StringInput
	MembershipId pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `gkehub.MembershipIamBinding` 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 MembershipIamMember resource.

func (MembershipIamMemberArgs) ElementType

func (MembershipIamMemberArgs) ElementType() reflect.Type

type MembershipIamMemberArray

type MembershipIamMemberArray []MembershipIamMemberInput

func (MembershipIamMemberArray) ElementType

func (MembershipIamMemberArray) ElementType() reflect.Type

func (MembershipIamMemberArray) ToMembershipIamMemberArrayOutput

func (i MembershipIamMemberArray) ToMembershipIamMemberArrayOutput() MembershipIamMemberArrayOutput

func (MembershipIamMemberArray) ToMembershipIamMemberArrayOutputWithContext

func (i MembershipIamMemberArray) ToMembershipIamMemberArrayOutputWithContext(ctx context.Context) MembershipIamMemberArrayOutput

func (MembershipIamMemberArray) ToOutput

type MembershipIamMemberArrayInput

type MembershipIamMemberArrayInput interface {
	pulumi.Input

	ToMembershipIamMemberArrayOutput() MembershipIamMemberArrayOutput
	ToMembershipIamMemberArrayOutputWithContext(context.Context) MembershipIamMemberArrayOutput
}

MembershipIamMemberArrayInput is an input type that accepts MembershipIamMemberArray and MembershipIamMemberArrayOutput values. You can construct a concrete instance of `MembershipIamMemberArrayInput` via:

MembershipIamMemberArray{ MembershipIamMemberArgs{...} }

type MembershipIamMemberArrayOutput

type MembershipIamMemberArrayOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberArrayOutput) ElementType

func (MembershipIamMemberArrayOutput) Index

func (MembershipIamMemberArrayOutput) ToMembershipIamMemberArrayOutput

func (o MembershipIamMemberArrayOutput) ToMembershipIamMemberArrayOutput() MembershipIamMemberArrayOutput

func (MembershipIamMemberArrayOutput) ToMembershipIamMemberArrayOutputWithContext

func (o MembershipIamMemberArrayOutput) ToMembershipIamMemberArrayOutputWithContext(ctx context.Context) MembershipIamMemberArrayOutput

func (MembershipIamMemberArrayOutput) ToOutput

type MembershipIamMemberCondition

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

type MembershipIamMemberConditionArgs

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

func (MembershipIamMemberConditionArgs) ElementType

func (MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionOutput

func (i MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionOutput() MembershipIamMemberConditionOutput

func (MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionOutputWithContext

func (i MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionOutputWithContext(ctx context.Context) MembershipIamMemberConditionOutput

func (MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionPtrOutput

func (i MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionPtrOutput() MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionPtrOutputWithContext

func (i MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionPtrOutputWithContext(ctx context.Context) MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionArgs) ToOutput

type MembershipIamMemberConditionInput

type MembershipIamMemberConditionInput interface {
	pulumi.Input

	ToMembershipIamMemberConditionOutput() MembershipIamMemberConditionOutput
	ToMembershipIamMemberConditionOutputWithContext(context.Context) MembershipIamMemberConditionOutput
}

MembershipIamMemberConditionInput is an input type that accepts MembershipIamMemberConditionArgs and MembershipIamMemberConditionOutput values. You can construct a concrete instance of `MembershipIamMemberConditionInput` via:

MembershipIamMemberConditionArgs{...}

type MembershipIamMemberConditionOutput

type MembershipIamMemberConditionOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberConditionOutput) Description

func (MembershipIamMemberConditionOutput) ElementType

func (MembershipIamMemberConditionOutput) Expression

func (MembershipIamMemberConditionOutput) Title

func (MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionOutput

func (o MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionOutput() MembershipIamMemberConditionOutput

func (MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionOutputWithContext

func (o MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionOutputWithContext(ctx context.Context) MembershipIamMemberConditionOutput

func (MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionPtrOutput

func (o MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionPtrOutput() MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionPtrOutputWithContext

func (o MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionPtrOutputWithContext(ctx context.Context) MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionOutput) ToOutput

type MembershipIamMemberConditionPtrInput

type MembershipIamMemberConditionPtrInput interface {
	pulumi.Input

	ToMembershipIamMemberConditionPtrOutput() MembershipIamMemberConditionPtrOutput
	ToMembershipIamMemberConditionPtrOutputWithContext(context.Context) MembershipIamMemberConditionPtrOutput
}

MembershipIamMemberConditionPtrInput is an input type that accepts MembershipIamMemberConditionArgs, MembershipIamMemberConditionPtr and MembershipIamMemberConditionPtrOutput values. You can construct a concrete instance of `MembershipIamMemberConditionPtrInput` via:

        MembershipIamMemberConditionArgs{...}

or:

        nil

type MembershipIamMemberConditionPtrOutput

type MembershipIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberConditionPtrOutput) Description

func (MembershipIamMemberConditionPtrOutput) Elem

func (MembershipIamMemberConditionPtrOutput) ElementType

func (MembershipIamMemberConditionPtrOutput) Expression

func (MembershipIamMemberConditionPtrOutput) Title

func (MembershipIamMemberConditionPtrOutput) ToMembershipIamMemberConditionPtrOutput

func (o MembershipIamMemberConditionPtrOutput) ToMembershipIamMemberConditionPtrOutput() MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionPtrOutput) ToMembershipIamMemberConditionPtrOutputWithContext

func (o MembershipIamMemberConditionPtrOutput) ToMembershipIamMemberConditionPtrOutputWithContext(ctx context.Context) MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionPtrOutput) ToOutput

type MembershipIamMemberInput

type MembershipIamMemberInput interface {
	pulumi.Input

	ToMembershipIamMemberOutput() MembershipIamMemberOutput
	ToMembershipIamMemberOutputWithContext(ctx context.Context) MembershipIamMemberOutput
}

type MembershipIamMemberMap

type MembershipIamMemberMap map[string]MembershipIamMemberInput

func (MembershipIamMemberMap) ElementType

func (MembershipIamMemberMap) ElementType() reflect.Type

func (MembershipIamMemberMap) ToMembershipIamMemberMapOutput

func (i MembershipIamMemberMap) ToMembershipIamMemberMapOutput() MembershipIamMemberMapOutput

func (MembershipIamMemberMap) ToMembershipIamMemberMapOutputWithContext

func (i MembershipIamMemberMap) ToMembershipIamMemberMapOutputWithContext(ctx context.Context) MembershipIamMemberMapOutput

func (MembershipIamMemberMap) ToOutput

type MembershipIamMemberMapInput

type MembershipIamMemberMapInput interface {
	pulumi.Input

	ToMembershipIamMemberMapOutput() MembershipIamMemberMapOutput
	ToMembershipIamMemberMapOutputWithContext(context.Context) MembershipIamMemberMapOutput
}

MembershipIamMemberMapInput is an input type that accepts MembershipIamMemberMap and MembershipIamMemberMapOutput values. You can construct a concrete instance of `MembershipIamMemberMapInput` via:

MembershipIamMemberMap{ "key": MembershipIamMemberArgs{...} }

type MembershipIamMemberMapOutput

type MembershipIamMemberMapOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberMapOutput) ElementType

func (MembershipIamMemberMapOutput) MapIndex

func (MembershipIamMemberMapOutput) ToMembershipIamMemberMapOutput

func (o MembershipIamMemberMapOutput) ToMembershipIamMemberMapOutput() MembershipIamMemberMapOutput

func (MembershipIamMemberMapOutput) ToMembershipIamMemberMapOutputWithContext

func (o MembershipIamMemberMapOutput) ToMembershipIamMemberMapOutputWithContext(ctx context.Context) MembershipIamMemberMapOutput

func (MembershipIamMemberMapOutput) ToOutput

type MembershipIamMemberOutput

type MembershipIamMemberOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberOutput) Condition

func (MembershipIamMemberOutput) ElementType

func (MembershipIamMemberOutput) ElementType() reflect.Type

func (MembershipIamMemberOutput) Etag

(Computed) The etag of the IAM policy.

func (MembershipIamMemberOutput) Member

func (MembershipIamMemberOutput) MembershipId

func (MembershipIamMemberOutput) Project

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

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

func (MembershipIamMemberOutput) Role

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

func (MembershipIamMemberOutput) ToMembershipIamMemberOutput

func (o MembershipIamMemberOutput) ToMembershipIamMemberOutput() MembershipIamMemberOutput

func (MembershipIamMemberOutput) ToMembershipIamMemberOutputWithContext

func (o MembershipIamMemberOutput) ToMembershipIamMemberOutputWithContext(ctx context.Context) MembershipIamMemberOutput

func (MembershipIamMemberOutput) ToOutput

type MembershipIamMemberState

type MembershipIamMemberState struct {
	Condition MembershipIamMemberConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag         pulumi.StringPtrInput
	Member       pulumi.StringPtrInput
	MembershipId pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `gkehub.MembershipIamBinding` 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 (MembershipIamMemberState) ElementType

func (MembershipIamMemberState) ElementType() reflect.Type

type MembershipIamPolicy

type MembershipIamPolicy struct {
	pulumi.CustomResourceState

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

Three different resources help you manage your IAM policy for GKEHub Membership. Each of these resources serves a different use case:

* `gkehub.MembershipIamPolicy`: Authoritative. Sets the IAM policy for the membership and replaces any existing policy already attached. * `gkehub.MembershipIamBinding`: 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 membership are preserved. * `gkehub.MembershipIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the membership are preserved.

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

* `gkehub.MembershipIamPolicy`: Retrieves the IAM policy for the membership

> **Note:** `gkehub.MembershipIamPolicy` **cannot** be used in conjunction with `gkehub.MembershipIamBinding` and `gkehub.MembershipIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_membership\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewMembershipIamPolicy(ctx, "policy", &gkehub.MembershipIamPolicyArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			PolicyData:   *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_membership\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewMembershipIamBinding(ctx, "binding", &gkehub.MembershipIamBindingArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			Role:         pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_membership\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewMembershipIamMember(ctx, "member", &gkehub.MembershipIamMemberArgs{
			Project:      pulumi.Any(google_gke_hub_membership.Membership.Project),
			MembershipId: pulumi.Any(google_gke_hub_membership.Membership.Membership_id),
			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/{{location}}/memberships/{{membership_id}} * {{project}}/{{location}}/{{membership_id}} * {{location}}/{{membership_id}} * {{membership_id}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub membership 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:gkehub/membershipIamPolicy:MembershipIamPolicy editor "projects/{{project}}/locations/{{location}}/memberships/{{membership_id}} 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:gkehub/membershipIamPolicy:MembershipIamPolicy editor "projects/{{project}}/locations/{{location}}/memberships/{{membership_id}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/membershipIamPolicy:MembershipIamPolicy editor projects/{{project}}/locations/{{location}}/memberships/{{membership_id}}

```

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

func GetMembershipIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MembershipIamPolicyState, opts ...pulumi.ResourceOption) (*MembershipIamPolicy, error)

GetMembershipIamPolicy gets an existing MembershipIamPolicy 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 NewMembershipIamPolicy

func NewMembershipIamPolicy(ctx *pulumi.Context,
	name string, args *MembershipIamPolicyArgs, opts ...pulumi.ResourceOption) (*MembershipIamPolicy, error)

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

func (*MembershipIamPolicy) ElementType

func (*MembershipIamPolicy) ElementType() reflect.Type

func (*MembershipIamPolicy) ToMembershipIamPolicyOutput

func (i *MembershipIamPolicy) ToMembershipIamPolicyOutput() MembershipIamPolicyOutput

func (*MembershipIamPolicy) ToMembershipIamPolicyOutputWithContext

func (i *MembershipIamPolicy) ToMembershipIamPolicyOutputWithContext(ctx context.Context) MembershipIamPolicyOutput

func (*MembershipIamPolicy) ToOutput

type MembershipIamPolicyArgs

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

The set of arguments for constructing a MembershipIamPolicy resource.

func (MembershipIamPolicyArgs) ElementType

func (MembershipIamPolicyArgs) ElementType() reflect.Type

type MembershipIamPolicyArray

type MembershipIamPolicyArray []MembershipIamPolicyInput

func (MembershipIamPolicyArray) ElementType

func (MembershipIamPolicyArray) ElementType() reflect.Type

func (MembershipIamPolicyArray) ToMembershipIamPolicyArrayOutput

func (i MembershipIamPolicyArray) ToMembershipIamPolicyArrayOutput() MembershipIamPolicyArrayOutput

func (MembershipIamPolicyArray) ToMembershipIamPolicyArrayOutputWithContext

func (i MembershipIamPolicyArray) ToMembershipIamPolicyArrayOutputWithContext(ctx context.Context) MembershipIamPolicyArrayOutput

func (MembershipIamPolicyArray) ToOutput

type MembershipIamPolicyArrayInput

type MembershipIamPolicyArrayInput interface {
	pulumi.Input

	ToMembershipIamPolicyArrayOutput() MembershipIamPolicyArrayOutput
	ToMembershipIamPolicyArrayOutputWithContext(context.Context) MembershipIamPolicyArrayOutput
}

MembershipIamPolicyArrayInput is an input type that accepts MembershipIamPolicyArray and MembershipIamPolicyArrayOutput values. You can construct a concrete instance of `MembershipIamPolicyArrayInput` via:

MembershipIamPolicyArray{ MembershipIamPolicyArgs{...} }

type MembershipIamPolicyArrayOutput

type MembershipIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (MembershipIamPolicyArrayOutput) ElementType

func (MembershipIamPolicyArrayOutput) Index

func (MembershipIamPolicyArrayOutput) ToMembershipIamPolicyArrayOutput

func (o MembershipIamPolicyArrayOutput) ToMembershipIamPolicyArrayOutput() MembershipIamPolicyArrayOutput

func (MembershipIamPolicyArrayOutput) ToMembershipIamPolicyArrayOutputWithContext

func (o MembershipIamPolicyArrayOutput) ToMembershipIamPolicyArrayOutputWithContext(ctx context.Context) MembershipIamPolicyArrayOutput

func (MembershipIamPolicyArrayOutput) ToOutput

type MembershipIamPolicyInput

type MembershipIamPolicyInput interface {
	pulumi.Input

	ToMembershipIamPolicyOutput() MembershipIamPolicyOutput
	ToMembershipIamPolicyOutputWithContext(ctx context.Context) MembershipIamPolicyOutput
}

type MembershipIamPolicyMap

type MembershipIamPolicyMap map[string]MembershipIamPolicyInput

func (MembershipIamPolicyMap) ElementType

func (MembershipIamPolicyMap) ElementType() reflect.Type

func (MembershipIamPolicyMap) ToMembershipIamPolicyMapOutput

func (i MembershipIamPolicyMap) ToMembershipIamPolicyMapOutput() MembershipIamPolicyMapOutput

func (MembershipIamPolicyMap) ToMembershipIamPolicyMapOutputWithContext

func (i MembershipIamPolicyMap) ToMembershipIamPolicyMapOutputWithContext(ctx context.Context) MembershipIamPolicyMapOutput

func (MembershipIamPolicyMap) ToOutput

type MembershipIamPolicyMapInput

type MembershipIamPolicyMapInput interface {
	pulumi.Input

	ToMembershipIamPolicyMapOutput() MembershipIamPolicyMapOutput
	ToMembershipIamPolicyMapOutputWithContext(context.Context) MembershipIamPolicyMapOutput
}

MembershipIamPolicyMapInput is an input type that accepts MembershipIamPolicyMap and MembershipIamPolicyMapOutput values. You can construct a concrete instance of `MembershipIamPolicyMapInput` via:

MembershipIamPolicyMap{ "key": MembershipIamPolicyArgs{...} }

type MembershipIamPolicyMapOutput

type MembershipIamPolicyMapOutput struct{ *pulumi.OutputState }

func (MembershipIamPolicyMapOutput) ElementType

func (MembershipIamPolicyMapOutput) MapIndex

func (MembershipIamPolicyMapOutput) ToMembershipIamPolicyMapOutput

func (o MembershipIamPolicyMapOutput) ToMembershipIamPolicyMapOutput() MembershipIamPolicyMapOutput

func (MembershipIamPolicyMapOutput) ToMembershipIamPolicyMapOutputWithContext

func (o MembershipIamPolicyMapOutput) ToMembershipIamPolicyMapOutputWithContext(ctx context.Context) MembershipIamPolicyMapOutput

func (MembershipIamPolicyMapOutput) ToOutput

type MembershipIamPolicyOutput

type MembershipIamPolicyOutput struct{ *pulumi.OutputState }

func (MembershipIamPolicyOutput) ElementType

func (MembershipIamPolicyOutput) ElementType() reflect.Type

func (MembershipIamPolicyOutput) Etag

(Computed) The etag of the IAM policy.

func (MembershipIamPolicyOutput) MembershipId

func (MembershipIamPolicyOutput) PolicyData

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

func (MembershipIamPolicyOutput) Project

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

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

func (MembershipIamPolicyOutput) ToMembershipIamPolicyOutput

func (o MembershipIamPolicyOutput) ToMembershipIamPolicyOutput() MembershipIamPolicyOutput

func (MembershipIamPolicyOutput) ToMembershipIamPolicyOutputWithContext

func (o MembershipIamPolicyOutput) ToMembershipIamPolicyOutputWithContext(ctx context.Context) MembershipIamPolicyOutput

func (MembershipIamPolicyOutput) ToOutput

type MembershipIamPolicyState

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

func (MembershipIamPolicyState) ElementType

func (MembershipIamPolicyState) ElementType() reflect.Type

type MembershipInput

type MembershipInput interface {
	pulumi.Input

	ToMembershipOutput() MembershipOutput
	ToMembershipOutputWithContext(ctx context.Context) MembershipOutput
}

type MembershipMap

type MembershipMap map[string]MembershipInput

func (MembershipMap) ElementType

func (MembershipMap) ElementType() reflect.Type

func (MembershipMap) ToMembershipMapOutput

func (i MembershipMap) ToMembershipMapOutput() MembershipMapOutput

func (MembershipMap) ToMembershipMapOutputWithContext

func (i MembershipMap) ToMembershipMapOutputWithContext(ctx context.Context) MembershipMapOutput

func (MembershipMap) ToOutput

type MembershipMapInput

type MembershipMapInput interface {
	pulumi.Input

	ToMembershipMapOutput() MembershipMapOutput
	ToMembershipMapOutputWithContext(context.Context) MembershipMapOutput
}

MembershipMapInput is an input type that accepts MembershipMap and MembershipMapOutput values. You can construct a concrete instance of `MembershipMapInput` via:

MembershipMap{ "key": MembershipArgs{...} }

type MembershipMapOutput

type MembershipMapOutput struct{ *pulumi.OutputState }

func (MembershipMapOutput) ElementType

func (MembershipMapOutput) ElementType() reflect.Type

func (MembershipMapOutput) MapIndex

func (MembershipMapOutput) ToMembershipMapOutput

func (o MembershipMapOutput) ToMembershipMapOutput() MembershipMapOutput

func (MembershipMapOutput) ToMembershipMapOutputWithContext

func (o MembershipMapOutput) ToMembershipMapOutputWithContext(ctx context.Context) MembershipMapOutput

func (MembershipMapOutput) ToOutput

type MembershipOutput

type MembershipOutput struct{ *pulumi.OutputState }

func (MembershipOutput) Authority

Authority encodes how Google will recognize identities from this Membership. See the workload identity documentation for more details: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity Structure is documented below.

func (MembershipOutput) Description deprecated

func (o MembershipOutput) Description() pulumi.StringPtrOutput

(Optional, Deprecated) The name of this entity type to be displayed on the console. This field is unavailable in v1 of the API.

> **Warning:** `description` is deprecated and will be removed in a future major release.

Deprecated: `description` is deprecated and will be removed in a future major release.

func (MembershipOutput) EffectiveLabels

func (o MembershipOutput) EffectiveLabels() pulumi.StringMapOutput

All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other clients and services.

func (MembershipOutput) ElementType

func (MembershipOutput) ElementType() reflect.Type

func (MembershipOutput) Endpoint

If this Membership is a Kubernetes API server hosted on GKE, this is a self link to its GCP resource. Structure is documented below.

func (MembershipOutput) Labels

Labels to apply to this membership.

**Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field `effectiveLabels` for all of the labels present on the resource.

func (MembershipOutput) MembershipId

func (o MembershipOutput) MembershipId() pulumi.StringOutput

The client-provided identifier of the membership.

***

func (MembershipOutput) Name

The unique identifier of the membership.

func (MembershipOutput) Project

func (o MembershipOutput) Project() pulumi.StringOutput

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

func (MembershipOutput) PulumiLabels

func (o MembershipOutput) PulumiLabels() pulumi.StringMapOutput

The combination of labels configured directly on the resource and default labels configured on the provider.

func (MembershipOutput) ToMembershipOutput

func (o MembershipOutput) ToMembershipOutput() MembershipOutput

func (MembershipOutput) ToMembershipOutputWithContext

func (o MembershipOutput) ToMembershipOutputWithContext(ctx context.Context) MembershipOutput

func (MembershipOutput) ToOutput

type MembershipRbacRoleBinding

type MembershipRbacRoleBinding struct {
	pulumi.CustomResourceState

	// Time the RBAC Role Binding was created in UTC.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Time the RBAC Role Binding was deleted in UTC.
	DeleteTime pulumi.StringOutput `pulumi:"deleteTime"`
	// Location of the Membership
	Location pulumi.StringOutput `pulumi:"location"`
	// Id of the membership
	MembershipId pulumi.StringOutput `pulumi:"membershipId"`
	// The client-provided identifier of the RBAC Role Binding.
	MembershipRbacRoleBindingId pulumi.StringOutput `pulumi:"membershipRbacRoleBindingId"`
	// The resource name for the RBAC Role Binding
	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"`
	// Role to bind to the principal.
	// Structure is documented below.
	Role MembershipRbacRoleBindingRoleOutput `pulumi:"role"`
	// State of the RBAC Role Binding resource.
	// Structure is documented below.
	States MembershipRbacRoleBindingStateTypeArrayOutput `pulumi:"states"`
	// Google-generated UUID for this resource.
	Uid pulumi.StringOutput `pulumi:"uid"`
	// Time the RBAC Role Binding was updated in UTC.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// user is the name of the user as seen by the kubernetes cluster, example
	// "alice" or "alice@domain.tld"
	User pulumi.StringOutput `pulumi:"user"`
}

## Example Usage

## Import

MembershipRBACRoleBinding can be imported using any of these accepted formats

```sh

$ pulumi import gcp:gkehub/membershipRbacRoleBinding:MembershipRbacRoleBinding default projects/{{project}}/locations/{{location}}/memberships/{{membership_id}}/rbacrolebindings/{{membership_rbac_role_binding_id}}

```

```sh

$ pulumi import gcp:gkehub/membershipRbacRoleBinding:MembershipRbacRoleBinding default {{project}}/{{location}}/{{membership_id}}/{{membership_rbac_role_binding_id}}

```

```sh

$ pulumi import gcp:gkehub/membershipRbacRoleBinding:MembershipRbacRoleBinding default {{location}}/{{membership_id}}/{{membership_rbac_role_binding_id}}

```

func GetMembershipRbacRoleBinding

func GetMembershipRbacRoleBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MembershipRbacRoleBindingState, opts ...pulumi.ResourceOption) (*MembershipRbacRoleBinding, error)

GetMembershipRbacRoleBinding gets an existing MembershipRbacRoleBinding 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 NewMembershipRbacRoleBinding

func NewMembershipRbacRoleBinding(ctx *pulumi.Context,
	name string, args *MembershipRbacRoleBindingArgs, opts ...pulumi.ResourceOption) (*MembershipRbacRoleBinding, error)

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

func (*MembershipRbacRoleBinding) ElementType

func (*MembershipRbacRoleBinding) ElementType() reflect.Type

func (*MembershipRbacRoleBinding) ToMembershipRbacRoleBindingOutput

func (i *MembershipRbacRoleBinding) ToMembershipRbacRoleBindingOutput() MembershipRbacRoleBindingOutput

func (*MembershipRbacRoleBinding) ToMembershipRbacRoleBindingOutputWithContext

func (i *MembershipRbacRoleBinding) ToMembershipRbacRoleBindingOutputWithContext(ctx context.Context) MembershipRbacRoleBindingOutput

func (*MembershipRbacRoleBinding) ToOutput

type MembershipRbacRoleBindingArgs

type MembershipRbacRoleBindingArgs struct {
	// Location of the Membership
	Location pulumi.StringInput
	// Id of the membership
	MembershipId pulumi.StringInput
	// The client-provided identifier of the RBAC Role Binding.
	MembershipRbacRoleBindingId 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
	// Role to bind to the principal.
	// Structure is documented below.
	Role MembershipRbacRoleBindingRoleInput
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// user is the name of the user as seen by the kubernetes cluster, example
	// "alice" or "alice@domain.tld"
	User pulumi.StringInput
}

The set of arguments for constructing a MembershipRbacRoleBinding resource.

func (MembershipRbacRoleBindingArgs) ElementType

type MembershipRbacRoleBindingArray

type MembershipRbacRoleBindingArray []MembershipRbacRoleBindingInput

func (MembershipRbacRoleBindingArray) ElementType

func (MembershipRbacRoleBindingArray) ToMembershipRbacRoleBindingArrayOutput

func (i MembershipRbacRoleBindingArray) ToMembershipRbacRoleBindingArrayOutput() MembershipRbacRoleBindingArrayOutput

func (MembershipRbacRoleBindingArray) ToMembershipRbacRoleBindingArrayOutputWithContext

func (i MembershipRbacRoleBindingArray) ToMembershipRbacRoleBindingArrayOutputWithContext(ctx context.Context) MembershipRbacRoleBindingArrayOutput

func (MembershipRbacRoleBindingArray) ToOutput

type MembershipRbacRoleBindingArrayInput

type MembershipRbacRoleBindingArrayInput interface {
	pulumi.Input

	ToMembershipRbacRoleBindingArrayOutput() MembershipRbacRoleBindingArrayOutput
	ToMembershipRbacRoleBindingArrayOutputWithContext(context.Context) MembershipRbacRoleBindingArrayOutput
}

MembershipRbacRoleBindingArrayInput is an input type that accepts MembershipRbacRoleBindingArray and MembershipRbacRoleBindingArrayOutput values. You can construct a concrete instance of `MembershipRbacRoleBindingArrayInput` via:

MembershipRbacRoleBindingArray{ MembershipRbacRoleBindingArgs{...} }

type MembershipRbacRoleBindingArrayOutput

type MembershipRbacRoleBindingArrayOutput struct{ *pulumi.OutputState }

func (MembershipRbacRoleBindingArrayOutput) ElementType

func (MembershipRbacRoleBindingArrayOutput) Index

func (MembershipRbacRoleBindingArrayOutput) ToMembershipRbacRoleBindingArrayOutput

func (o MembershipRbacRoleBindingArrayOutput) ToMembershipRbacRoleBindingArrayOutput() MembershipRbacRoleBindingArrayOutput

func (MembershipRbacRoleBindingArrayOutput) ToMembershipRbacRoleBindingArrayOutputWithContext

func (o MembershipRbacRoleBindingArrayOutput) ToMembershipRbacRoleBindingArrayOutputWithContext(ctx context.Context) MembershipRbacRoleBindingArrayOutput

func (MembershipRbacRoleBindingArrayOutput) ToOutput

type MembershipRbacRoleBindingInput

type MembershipRbacRoleBindingInput interface {
	pulumi.Input

	ToMembershipRbacRoleBindingOutput() MembershipRbacRoleBindingOutput
	ToMembershipRbacRoleBindingOutputWithContext(ctx context.Context) MembershipRbacRoleBindingOutput
}

type MembershipRbacRoleBindingMap

type MembershipRbacRoleBindingMap map[string]MembershipRbacRoleBindingInput

func (MembershipRbacRoleBindingMap) ElementType

func (MembershipRbacRoleBindingMap) ToMembershipRbacRoleBindingMapOutput

func (i MembershipRbacRoleBindingMap) ToMembershipRbacRoleBindingMapOutput() MembershipRbacRoleBindingMapOutput

func (MembershipRbacRoleBindingMap) ToMembershipRbacRoleBindingMapOutputWithContext

func (i MembershipRbacRoleBindingMap) ToMembershipRbacRoleBindingMapOutputWithContext(ctx context.Context) MembershipRbacRoleBindingMapOutput

func (MembershipRbacRoleBindingMap) ToOutput

type MembershipRbacRoleBindingMapInput

type MembershipRbacRoleBindingMapInput interface {
	pulumi.Input

	ToMembershipRbacRoleBindingMapOutput() MembershipRbacRoleBindingMapOutput
	ToMembershipRbacRoleBindingMapOutputWithContext(context.Context) MembershipRbacRoleBindingMapOutput
}

MembershipRbacRoleBindingMapInput is an input type that accepts MembershipRbacRoleBindingMap and MembershipRbacRoleBindingMapOutput values. You can construct a concrete instance of `MembershipRbacRoleBindingMapInput` via:

MembershipRbacRoleBindingMap{ "key": MembershipRbacRoleBindingArgs{...} }

type MembershipRbacRoleBindingMapOutput

type MembershipRbacRoleBindingMapOutput struct{ *pulumi.OutputState }

func (MembershipRbacRoleBindingMapOutput) ElementType

func (MembershipRbacRoleBindingMapOutput) MapIndex

func (MembershipRbacRoleBindingMapOutput) ToMembershipRbacRoleBindingMapOutput

func (o MembershipRbacRoleBindingMapOutput) ToMembershipRbacRoleBindingMapOutput() MembershipRbacRoleBindingMapOutput

func (MembershipRbacRoleBindingMapOutput) ToMembershipRbacRoleBindingMapOutputWithContext

func (o MembershipRbacRoleBindingMapOutput) ToMembershipRbacRoleBindingMapOutputWithContext(ctx context.Context) MembershipRbacRoleBindingMapOutput

func (MembershipRbacRoleBindingMapOutput) ToOutput

type MembershipRbacRoleBindingOutput

type MembershipRbacRoleBindingOutput struct{ *pulumi.OutputState }

func (MembershipRbacRoleBindingOutput) CreateTime

Time the RBAC Role Binding was created in UTC.

func (MembershipRbacRoleBindingOutput) DeleteTime

Time the RBAC Role Binding was deleted in UTC.

func (MembershipRbacRoleBindingOutput) ElementType

func (MembershipRbacRoleBindingOutput) Location

Location of the Membership

func (MembershipRbacRoleBindingOutput) MembershipId

Id of the membership

func (MembershipRbacRoleBindingOutput) MembershipRbacRoleBindingId

func (o MembershipRbacRoleBindingOutput) MembershipRbacRoleBindingId() pulumi.StringOutput

The client-provided identifier of the RBAC Role Binding.

func (MembershipRbacRoleBindingOutput) Name

The resource name for the RBAC Role Binding

func (MembershipRbacRoleBindingOutput) Project

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

func (MembershipRbacRoleBindingOutput) Role

Role to bind to the principal. Structure is documented below.

func (MembershipRbacRoleBindingOutput) States

State of the RBAC Role Binding resource. Structure is documented below.

func (MembershipRbacRoleBindingOutput) ToMembershipRbacRoleBindingOutput

func (o MembershipRbacRoleBindingOutput) ToMembershipRbacRoleBindingOutput() MembershipRbacRoleBindingOutput

func (MembershipRbacRoleBindingOutput) ToMembershipRbacRoleBindingOutputWithContext

func (o MembershipRbacRoleBindingOutput) ToMembershipRbacRoleBindingOutputWithContext(ctx context.Context) MembershipRbacRoleBindingOutput

func (MembershipRbacRoleBindingOutput) ToOutput

func (MembershipRbacRoleBindingOutput) Uid

Google-generated UUID for this resource.

func (MembershipRbacRoleBindingOutput) UpdateTime

Time the RBAC Role Binding was updated in UTC.

func (MembershipRbacRoleBindingOutput) User

Principal that is be authorized in the cluster (at least of one the oneof is required). Updating one will unset the other automatically. user is the name of the user as seen by the kubernetes cluster, example "alice" or "alice@domain.tld"

type MembershipRbacRoleBindingRole

type MembershipRbacRoleBindingRole struct {
	// PredefinedRole is an ENUM representation of the default Kubernetes Roles
	// Possible values are: `UNKNOWN`, `ADMIN`, `EDIT`, `VIEW`, `ANTHOS_SUPPORT`.
	//
	// ***
	PredefinedRole string `pulumi:"predefinedRole"`
}

type MembershipRbacRoleBindingRoleArgs

type MembershipRbacRoleBindingRoleArgs struct {
	// PredefinedRole is an ENUM representation of the default Kubernetes Roles
	// Possible values are: `UNKNOWN`, `ADMIN`, `EDIT`, `VIEW`, `ANTHOS_SUPPORT`.
	//
	// ***
	PredefinedRole pulumi.StringInput `pulumi:"predefinedRole"`
}

func (MembershipRbacRoleBindingRoleArgs) ElementType

func (MembershipRbacRoleBindingRoleArgs) ToMembershipRbacRoleBindingRoleOutput

func (i MembershipRbacRoleBindingRoleArgs) ToMembershipRbacRoleBindingRoleOutput() MembershipRbacRoleBindingRoleOutput

func (MembershipRbacRoleBindingRoleArgs) ToMembershipRbacRoleBindingRoleOutputWithContext

func (i MembershipRbacRoleBindingRoleArgs) ToMembershipRbacRoleBindingRoleOutputWithContext(ctx context.Context) MembershipRbacRoleBindingRoleOutput

func (MembershipRbacRoleBindingRoleArgs) ToMembershipRbacRoleBindingRolePtrOutput

func (i MembershipRbacRoleBindingRoleArgs) ToMembershipRbacRoleBindingRolePtrOutput() MembershipRbacRoleBindingRolePtrOutput

func (MembershipRbacRoleBindingRoleArgs) ToMembershipRbacRoleBindingRolePtrOutputWithContext

func (i MembershipRbacRoleBindingRoleArgs) ToMembershipRbacRoleBindingRolePtrOutputWithContext(ctx context.Context) MembershipRbacRoleBindingRolePtrOutput

func (MembershipRbacRoleBindingRoleArgs) ToOutput

type MembershipRbacRoleBindingRoleInput

type MembershipRbacRoleBindingRoleInput interface {
	pulumi.Input

	ToMembershipRbacRoleBindingRoleOutput() MembershipRbacRoleBindingRoleOutput
	ToMembershipRbacRoleBindingRoleOutputWithContext(context.Context) MembershipRbacRoleBindingRoleOutput
}

MembershipRbacRoleBindingRoleInput is an input type that accepts MembershipRbacRoleBindingRoleArgs and MembershipRbacRoleBindingRoleOutput values. You can construct a concrete instance of `MembershipRbacRoleBindingRoleInput` via:

MembershipRbacRoleBindingRoleArgs{...}

type MembershipRbacRoleBindingRoleOutput

type MembershipRbacRoleBindingRoleOutput struct{ *pulumi.OutputState }

func (MembershipRbacRoleBindingRoleOutput) ElementType

func (MembershipRbacRoleBindingRoleOutput) PredefinedRole

PredefinedRole is an ENUM representation of the default Kubernetes Roles Possible values are: `UNKNOWN`, `ADMIN`, `EDIT`, `VIEW`, `ANTHOS_SUPPORT`.

***

func (MembershipRbacRoleBindingRoleOutput) ToMembershipRbacRoleBindingRoleOutput

func (o MembershipRbacRoleBindingRoleOutput) ToMembershipRbacRoleBindingRoleOutput() MembershipRbacRoleBindingRoleOutput

func (MembershipRbacRoleBindingRoleOutput) ToMembershipRbacRoleBindingRoleOutputWithContext

func (o MembershipRbacRoleBindingRoleOutput) ToMembershipRbacRoleBindingRoleOutputWithContext(ctx context.Context) MembershipRbacRoleBindingRoleOutput

func (MembershipRbacRoleBindingRoleOutput) ToMembershipRbacRoleBindingRolePtrOutput

func (o MembershipRbacRoleBindingRoleOutput) ToMembershipRbacRoleBindingRolePtrOutput() MembershipRbacRoleBindingRolePtrOutput

func (MembershipRbacRoleBindingRoleOutput) ToMembershipRbacRoleBindingRolePtrOutputWithContext

func (o MembershipRbacRoleBindingRoleOutput) ToMembershipRbacRoleBindingRolePtrOutputWithContext(ctx context.Context) MembershipRbacRoleBindingRolePtrOutput

func (MembershipRbacRoleBindingRoleOutput) ToOutput

type MembershipRbacRoleBindingRolePtrInput

type MembershipRbacRoleBindingRolePtrInput interface {
	pulumi.Input

	ToMembershipRbacRoleBindingRolePtrOutput() MembershipRbacRoleBindingRolePtrOutput
	ToMembershipRbacRoleBindingRolePtrOutputWithContext(context.Context) MembershipRbacRoleBindingRolePtrOutput
}

MembershipRbacRoleBindingRolePtrInput is an input type that accepts MembershipRbacRoleBindingRoleArgs, MembershipRbacRoleBindingRolePtr and MembershipRbacRoleBindingRolePtrOutput values. You can construct a concrete instance of `MembershipRbacRoleBindingRolePtrInput` via:

        MembershipRbacRoleBindingRoleArgs{...}

or:

        nil

type MembershipRbacRoleBindingRolePtrOutput

type MembershipRbacRoleBindingRolePtrOutput struct{ *pulumi.OutputState }

func (MembershipRbacRoleBindingRolePtrOutput) Elem

func (MembershipRbacRoleBindingRolePtrOutput) ElementType

func (MembershipRbacRoleBindingRolePtrOutput) PredefinedRole

PredefinedRole is an ENUM representation of the default Kubernetes Roles Possible values are: `UNKNOWN`, `ADMIN`, `EDIT`, `VIEW`, `ANTHOS_SUPPORT`.

***

func (MembershipRbacRoleBindingRolePtrOutput) ToMembershipRbacRoleBindingRolePtrOutput

func (o MembershipRbacRoleBindingRolePtrOutput) ToMembershipRbacRoleBindingRolePtrOutput() MembershipRbacRoleBindingRolePtrOutput

func (MembershipRbacRoleBindingRolePtrOutput) ToMembershipRbacRoleBindingRolePtrOutputWithContext

func (o MembershipRbacRoleBindingRolePtrOutput) ToMembershipRbacRoleBindingRolePtrOutputWithContext(ctx context.Context) MembershipRbacRoleBindingRolePtrOutput

func (MembershipRbacRoleBindingRolePtrOutput) ToOutput

type MembershipRbacRoleBindingState

type MembershipRbacRoleBindingState struct {
	// Time the RBAC Role Binding was created in UTC.
	CreateTime pulumi.StringPtrInput
	// Time the RBAC Role Binding was deleted in UTC.
	DeleteTime pulumi.StringPtrInput
	// Location of the Membership
	Location pulumi.StringPtrInput
	// Id of the membership
	MembershipId pulumi.StringPtrInput
	// The client-provided identifier of the RBAC Role Binding.
	MembershipRbacRoleBindingId pulumi.StringPtrInput
	// The resource name for the RBAC Role Binding
	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
	// Role to bind to the principal.
	// Structure is documented below.
	Role MembershipRbacRoleBindingRolePtrInput
	// State of the RBAC Role Binding resource.
	// Structure is documented below.
	States MembershipRbacRoleBindingStateTypeArrayInput
	// Google-generated UUID for this resource.
	Uid pulumi.StringPtrInput
	// Time the RBAC Role Binding was updated in UTC.
	UpdateTime pulumi.StringPtrInput
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// user is the name of the user as seen by the kubernetes cluster, example
	// "alice" or "alice@domain.tld"
	User pulumi.StringPtrInput
}

func (MembershipRbacRoleBindingState) ElementType

type MembershipRbacRoleBindingStateType

type MembershipRbacRoleBindingStateType struct {
	// (Output)
	// Code describes the state of a RBAC Role Binding resource.
	Code *string `pulumi:"code"`
}

type MembershipRbacRoleBindingStateTypeArgs

type MembershipRbacRoleBindingStateTypeArgs struct {
	// (Output)
	// Code describes the state of a RBAC Role Binding resource.
	Code pulumi.StringPtrInput `pulumi:"code"`
}

func (MembershipRbacRoleBindingStateTypeArgs) ElementType

func (MembershipRbacRoleBindingStateTypeArgs) ToMembershipRbacRoleBindingStateTypeOutput

func (i MembershipRbacRoleBindingStateTypeArgs) ToMembershipRbacRoleBindingStateTypeOutput() MembershipRbacRoleBindingStateTypeOutput

func (MembershipRbacRoleBindingStateTypeArgs) ToMembershipRbacRoleBindingStateTypeOutputWithContext

func (i MembershipRbacRoleBindingStateTypeArgs) ToMembershipRbacRoleBindingStateTypeOutputWithContext(ctx context.Context) MembershipRbacRoleBindingStateTypeOutput

func (MembershipRbacRoleBindingStateTypeArgs) ToOutput

type MembershipRbacRoleBindingStateTypeArray

type MembershipRbacRoleBindingStateTypeArray []MembershipRbacRoleBindingStateTypeInput

func (MembershipRbacRoleBindingStateTypeArray) ElementType

func (MembershipRbacRoleBindingStateTypeArray) ToMembershipRbacRoleBindingStateTypeArrayOutput

func (i MembershipRbacRoleBindingStateTypeArray) ToMembershipRbacRoleBindingStateTypeArrayOutput() MembershipRbacRoleBindingStateTypeArrayOutput

func (MembershipRbacRoleBindingStateTypeArray) ToMembershipRbacRoleBindingStateTypeArrayOutputWithContext

func (i MembershipRbacRoleBindingStateTypeArray) ToMembershipRbacRoleBindingStateTypeArrayOutputWithContext(ctx context.Context) MembershipRbacRoleBindingStateTypeArrayOutput

func (MembershipRbacRoleBindingStateTypeArray) ToOutput

type MembershipRbacRoleBindingStateTypeArrayInput

type MembershipRbacRoleBindingStateTypeArrayInput interface {
	pulumi.Input

	ToMembershipRbacRoleBindingStateTypeArrayOutput() MembershipRbacRoleBindingStateTypeArrayOutput
	ToMembershipRbacRoleBindingStateTypeArrayOutputWithContext(context.Context) MembershipRbacRoleBindingStateTypeArrayOutput
}

MembershipRbacRoleBindingStateTypeArrayInput is an input type that accepts MembershipRbacRoleBindingStateTypeArray and MembershipRbacRoleBindingStateTypeArrayOutput values. You can construct a concrete instance of `MembershipRbacRoleBindingStateTypeArrayInput` via:

MembershipRbacRoleBindingStateTypeArray{ MembershipRbacRoleBindingStateTypeArgs{...} }

type MembershipRbacRoleBindingStateTypeArrayOutput

type MembershipRbacRoleBindingStateTypeArrayOutput struct{ *pulumi.OutputState }

func (MembershipRbacRoleBindingStateTypeArrayOutput) ElementType

func (MembershipRbacRoleBindingStateTypeArrayOutput) Index

func (MembershipRbacRoleBindingStateTypeArrayOutput) ToMembershipRbacRoleBindingStateTypeArrayOutput

func (o MembershipRbacRoleBindingStateTypeArrayOutput) ToMembershipRbacRoleBindingStateTypeArrayOutput() MembershipRbacRoleBindingStateTypeArrayOutput

func (MembershipRbacRoleBindingStateTypeArrayOutput) ToMembershipRbacRoleBindingStateTypeArrayOutputWithContext

func (o MembershipRbacRoleBindingStateTypeArrayOutput) ToMembershipRbacRoleBindingStateTypeArrayOutputWithContext(ctx context.Context) MembershipRbacRoleBindingStateTypeArrayOutput

func (MembershipRbacRoleBindingStateTypeArrayOutput) ToOutput

type MembershipRbacRoleBindingStateTypeInput

type MembershipRbacRoleBindingStateTypeInput interface {
	pulumi.Input

	ToMembershipRbacRoleBindingStateTypeOutput() MembershipRbacRoleBindingStateTypeOutput
	ToMembershipRbacRoleBindingStateTypeOutputWithContext(context.Context) MembershipRbacRoleBindingStateTypeOutput
}

MembershipRbacRoleBindingStateTypeInput is an input type that accepts MembershipRbacRoleBindingStateTypeArgs and MembershipRbacRoleBindingStateTypeOutput values. You can construct a concrete instance of `MembershipRbacRoleBindingStateTypeInput` via:

MembershipRbacRoleBindingStateTypeArgs{...}

type MembershipRbacRoleBindingStateTypeOutput

type MembershipRbacRoleBindingStateTypeOutput struct{ *pulumi.OutputState }

func (MembershipRbacRoleBindingStateTypeOutput) Code

(Output) Code describes the state of a RBAC Role Binding resource.

func (MembershipRbacRoleBindingStateTypeOutput) ElementType

func (MembershipRbacRoleBindingStateTypeOutput) ToMembershipRbacRoleBindingStateTypeOutput

func (o MembershipRbacRoleBindingStateTypeOutput) ToMembershipRbacRoleBindingStateTypeOutput() MembershipRbacRoleBindingStateTypeOutput

func (MembershipRbacRoleBindingStateTypeOutput) ToMembershipRbacRoleBindingStateTypeOutputWithContext

func (o MembershipRbacRoleBindingStateTypeOutput) ToMembershipRbacRoleBindingStateTypeOutputWithContext(ctx context.Context) MembershipRbacRoleBindingStateTypeOutput

func (MembershipRbacRoleBindingStateTypeOutput) ToOutput

type MembershipState

type MembershipState struct {
	// Authority encodes how Google will recognize identities from this Membership.
	// See the workload identity documentation for more details:
	// https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity
	// Structure is documented below.
	Authority MembershipAuthorityPtrInput
	// (Optional, Deprecated)
	// The name of this entity type to be displayed on the console. This field is unavailable in v1 of the API.
	//
	// > **Warning:** `description` is deprecated and will be removed in a future major release.
	//
	// Deprecated: `description` is deprecated and will be removed in a future major release.
	Description pulumi.StringPtrInput
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapInput
	// If this Membership is a Kubernetes API server hosted on GKE, this is a self link to its GCP resource.
	// Structure is documented below.
	Endpoint MembershipEndpointPtrInput
	// Labels to apply to this membership.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The client-provided identifier of the membership.
	//
	// ***
	MembershipId pulumi.StringPtrInput
	// The unique identifier of the membership.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapInput
}

func (MembershipState) ElementType

func (MembershipState) ElementType() reflect.Type

type Namespace

type Namespace struct {
	pulumi.CustomResourceState

	// Time the Namespace was created in UTC.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Time the Namespace was deleted in UTC.
	DeleteTime pulumi.StringOutput `pulumi:"deleteTime"`
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapOutput `pulumi:"effectiveLabels"`
	// Labels for this Namespace.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The resource name for the namespace
	Name pulumi.StringOutput `pulumi:"name"`
	// Namespace-level cluster namespace labels. These labels are applied
	// to the related namespace of the member clusters bound to the parent
	// Scope. Scope-level labels (`namespaceLabels` in the Fleet Scope
	// resource) take precedence over Namespace-level labels if they share
	// a key. Keys and values must be Kubernetes-conformant.
	NamespaceLabels pulumi.StringMapOutput `pulumi:"namespaceLabels"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapOutput `pulumi:"pulumiLabels"`
	// The name of the Scope instance.
	Scope pulumi.StringOutput `pulumi:"scope"`
	// Id of the scope
	//
	// ***
	ScopeId pulumi.StringOutput `pulumi:"scopeId"`
	// The client-provided identifier of the namespace.
	ScopeNamespaceId pulumi.StringOutput `pulumi:"scopeNamespaceId"`
	// State of the namespace resource.
	// Structure is documented below.
	States NamespaceStateTypeArrayOutput `pulumi:"states"`
	// Google-generated UUID for this resource.
	Uid pulumi.StringOutput `pulumi:"uid"`
	// Time the Namespace was updated in UTC.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
}

Namespace represents a namespace across the Fleet.

To get more information about Namespace, see:

* [API documentation](https://cloud.google.com/anthos/fleet-management/docs/reference/rest/v1/projects.locations.scopes.namespaces) * How-to Guides

## Example Usage

## Import

Namespace can be imported using any of these accepted formats

```sh

$ pulumi import gcp:gkehub/namespace:Namespace default projects/{{project}}/locations/global/scopes/{{scope_id}}/namespaces/{{scope_namespace_id}}

```

```sh

$ pulumi import gcp:gkehub/namespace:Namespace default {{project}}/{{scope_id}}/{{scope_namespace_id}}

```

```sh

$ pulumi import gcp:gkehub/namespace:Namespace default {{scope_id}}/{{scope_namespace_id}}

```

func GetNamespace

func GetNamespace(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NamespaceState, opts ...pulumi.ResourceOption) (*Namespace, error)

GetNamespace gets an existing Namespace 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 NewNamespace

func NewNamespace(ctx *pulumi.Context,
	name string, args *NamespaceArgs, opts ...pulumi.ResourceOption) (*Namespace, error)

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

func (*Namespace) ElementType

func (*Namespace) ElementType() reflect.Type

func (*Namespace) ToNamespaceOutput

func (i *Namespace) ToNamespaceOutput() NamespaceOutput

func (*Namespace) ToNamespaceOutputWithContext

func (i *Namespace) ToNamespaceOutputWithContext(ctx context.Context) NamespaceOutput

func (*Namespace) ToOutput

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

type NamespaceArgs

type NamespaceArgs struct {
	// Labels for this Namespace.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// Namespace-level cluster namespace labels. These labels are applied
	// to the related namespace of the member clusters bound to the parent
	// Scope. Scope-level labels (`namespaceLabels` in the Fleet Scope
	// resource) take precedence over Namespace-level labels if they share
	// a key. Keys and values must be Kubernetes-conformant.
	NamespaceLabels pulumi.StringMapInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The name of the Scope instance.
	Scope pulumi.StringInput
	// Id of the scope
	//
	// ***
	ScopeId pulumi.StringInput
	// The client-provided identifier of the namespace.
	ScopeNamespaceId pulumi.StringInput
}

The set of arguments for constructing a Namespace resource.

func (NamespaceArgs) ElementType

func (NamespaceArgs) ElementType() reflect.Type

type NamespaceArray

type NamespaceArray []NamespaceInput

func (NamespaceArray) ElementType

func (NamespaceArray) ElementType() reflect.Type

func (NamespaceArray) ToNamespaceArrayOutput

func (i NamespaceArray) ToNamespaceArrayOutput() NamespaceArrayOutput

func (NamespaceArray) ToNamespaceArrayOutputWithContext

func (i NamespaceArray) ToNamespaceArrayOutputWithContext(ctx context.Context) NamespaceArrayOutput

func (NamespaceArray) ToOutput

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

type NamespaceArrayInput

type NamespaceArrayInput interface {
	pulumi.Input

	ToNamespaceArrayOutput() NamespaceArrayOutput
	ToNamespaceArrayOutputWithContext(context.Context) NamespaceArrayOutput
}

NamespaceArrayInput is an input type that accepts NamespaceArray and NamespaceArrayOutput values. You can construct a concrete instance of `NamespaceArrayInput` via:

NamespaceArray{ NamespaceArgs{...} }

type NamespaceArrayOutput

type NamespaceArrayOutput struct{ *pulumi.OutputState }

func (NamespaceArrayOutput) ElementType

func (NamespaceArrayOutput) ElementType() reflect.Type

func (NamespaceArrayOutput) Index

func (NamespaceArrayOutput) ToNamespaceArrayOutput

func (o NamespaceArrayOutput) ToNamespaceArrayOutput() NamespaceArrayOutput

func (NamespaceArrayOutput) ToNamespaceArrayOutputWithContext

func (o NamespaceArrayOutput) ToNamespaceArrayOutputWithContext(ctx context.Context) NamespaceArrayOutput

func (NamespaceArrayOutput) ToOutput

type NamespaceInput

type NamespaceInput interface {
	pulumi.Input

	ToNamespaceOutput() NamespaceOutput
	ToNamespaceOutputWithContext(ctx context.Context) NamespaceOutput
}

type NamespaceMap

type NamespaceMap map[string]NamespaceInput

func (NamespaceMap) ElementType

func (NamespaceMap) ElementType() reflect.Type

func (NamespaceMap) ToNamespaceMapOutput

func (i NamespaceMap) ToNamespaceMapOutput() NamespaceMapOutput

func (NamespaceMap) ToNamespaceMapOutputWithContext

func (i NamespaceMap) ToNamespaceMapOutputWithContext(ctx context.Context) NamespaceMapOutput

func (NamespaceMap) ToOutput

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

type NamespaceMapInput

type NamespaceMapInput interface {
	pulumi.Input

	ToNamespaceMapOutput() NamespaceMapOutput
	ToNamespaceMapOutputWithContext(context.Context) NamespaceMapOutput
}

NamespaceMapInput is an input type that accepts NamespaceMap and NamespaceMapOutput values. You can construct a concrete instance of `NamespaceMapInput` via:

NamespaceMap{ "key": NamespaceArgs{...} }

type NamespaceMapOutput

type NamespaceMapOutput struct{ *pulumi.OutputState }

func (NamespaceMapOutput) ElementType

func (NamespaceMapOutput) ElementType() reflect.Type

func (NamespaceMapOutput) MapIndex

func (NamespaceMapOutput) ToNamespaceMapOutput

func (o NamespaceMapOutput) ToNamespaceMapOutput() NamespaceMapOutput

func (NamespaceMapOutput) ToNamespaceMapOutputWithContext

func (o NamespaceMapOutput) ToNamespaceMapOutputWithContext(ctx context.Context) NamespaceMapOutput

func (NamespaceMapOutput) ToOutput

type NamespaceOutput

type NamespaceOutput struct{ *pulumi.OutputState }

func (NamespaceOutput) CreateTime

func (o NamespaceOutput) CreateTime() pulumi.StringOutput

Time the Namespace was created in UTC.

func (NamespaceOutput) DeleteTime

func (o NamespaceOutput) DeleteTime() pulumi.StringOutput

Time the Namespace was deleted in UTC.

func (NamespaceOutput) EffectiveLabels

func (o NamespaceOutput) EffectiveLabels() pulumi.StringMapOutput

All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other clients and services.

func (NamespaceOutput) ElementType

func (NamespaceOutput) ElementType() reflect.Type

func (NamespaceOutput) Labels

Labels for this Namespace.

**Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field `effectiveLabels` for all of the labels present on the resource.

func (NamespaceOutput) Name

The resource name for the namespace

func (NamespaceOutput) NamespaceLabels

func (o NamespaceOutput) NamespaceLabels() pulumi.StringMapOutput

Namespace-level cluster namespace labels. These labels are applied to the related namespace of the member clusters bound to the parent Scope. Scope-level labels (`namespaceLabels` in the Fleet Scope resource) take precedence over Namespace-level labels if they share a key. Keys and values must be Kubernetes-conformant.

func (NamespaceOutput) Project

func (o NamespaceOutput) Project() pulumi.StringOutput

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

func (NamespaceOutput) PulumiLabels

func (o NamespaceOutput) PulumiLabels() pulumi.StringMapOutput

The combination of labels configured directly on the resource and default labels configured on the provider.

func (NamespaceOutput) Scope

The name of the Scope instance.

func (NamespaceOutput) ScopeId

func (o NamespaceOutput) ScopeId() pulumi.StringOutput

Id of the scope

***

func (NamespaceOutput) ScopeNamespaceId

func (o NamespaceOutput) ScopeNamespaceId() pulumi.StringOutput

The client-provided identifier of the namespace.

func (NamespaceOutput) States

State of the namespace resource. Structure is documented below.

func (NamespaceOutput) ToNamespaceOutput

func (o NamespaceOutput) ToNamespaceOutput() NamespaceOutput

func (NamespaceOutput) ToNamespaceOutputWithContext

func (o NamespaceOutput) ToNamespaceOutputWithContext(ctx context.Context) NamespaceOutput

func (NamespaceOutput) ToOutput

func (NamespaceOutput) Uid

Google-generated UUID for this resource.

func (NamespaceOutput) UpdateTime

func (o NamespaceOutput) UpdateTime() pulumi.StringOutput

Time the Namespace was updated in UTC.

type NamespaceState

type NamespaceState struct {
	// Time the Namespace was created in UTC.
	CreateTime pulumi.StringPtrInput
	// Time the Namespace was deleted in UTC.
	DeleteTime pulumi.StringPtrInput
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapInput
	// Labels for this Namespace.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The resource name for the namespace
	Name pulumi.StringPtrInput
	// Namespace-level cluster namespace labels. These labels are applied
	// to the related namespace of the member clusters bound to the parent
	// Scope. Scope-level labels (`namespaceLabels` in the Fleet Scope
	// resource) take precedence over Namespace-level labels if they share
	// a key. Keys and values must be Kubernetes-conformant.
	NamespaceLabels pulumi.StringMapInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapInput
	// The name of the Scope instance.
	Scope pulumi.StringPtrInput
	// Id of the scope
	//
	// ***
	ScopeId pulumi.StringPtrInput
	// The client-provided identifier of the namespace.
	ScopeNamespaceId pulumi.StringPtrInput
	// State of the namespace resource.
	// Structure is documented below.
	States NamespaceStateTypeArrayInput
	// Google-generated UUID for this resource.
	Uid pulumi.StringPtrInput
	// Time the Namespace was updated in UTC.
	UpdateTime pulumi.StringPtrInput
}

func (NamespaceState) ElementType

func (NamespaceState) ElementType() reflect.Type

type NamespaceStateType

type NamespaceStateType struct {
	// (Output)
	// Code describes the state of a Namespace resource.
	Code *string `pulumi:"code"`
}

type NamespaceStateTypeArgs

type NamespaceStateTypeArgs struct {
	// (Output)
	// Code describes the state of a Namespace resource.
	Code pulumi.StringPtrInput `pulumi:"code"`
}

func (NamespaceStateTypeArgs) ElementType

func (NamespaceStateTypeArgs) ElementType() reflect.Type

func (NamespaceStateTypeArgs) ToNamespaceStateTypeOutput

func (i NamespaceStateTypeArgs) ToNamespaceStateTypeOutput() NamespaceStateTypeOutput

func (NamespaceStateTypeArgs) ToNamespaceStateTypeOutputWithContext

func (i NamespaceStateTypeArgs) ToNamespaceStateTypeOutputWithContext(ctx context.Context) NamespaceStateTypeOutput

func (NamespaceStateTypeArgs) ToOutput

type NamespaceStateTypeArray

type NamespaceStateTypeArray []NamespaceStateTypeInput

func (NamespaceStateTypeArray) ElementType

func (NamespaceStateTypeArray) ElementType() reflect.Type

func (NamespaceStateTypeArray) ToNamespaceStateTypeArrayOutput

func (i NamespaceStateTypeArray) ToNamespaceStateTypeArrayOutput() NamespaceStateTypeArrayOutput

func (NamespaceStateTypeArray) ToNamespaceStateTypeArrayOutputWithContext

func (i NamespaceStateTypeArray) ToNamespaceStateTypeArrayOutputWithContext(ctx context.Context) NamespaceStateTypeArrayOutput

func (NamespaceStateTypeArray) ToOutput

type NamespaceStateTypeArrayInput

type NamespaceStateTypeArrayInput interface {
	pulumi.Input

	ToNamespaceStateTypeArrayOutput() NamespaceStateTypeArrayOutput
	ToNamespaceStateTypeArrayOutputWithContext(context.Context) NamespaceStateTypeArrayOutput
}

NamespaceStateTypeArrayInput is an input type that accepts NamespaceStateTypeArray and NamespaceStateTypeArrayOutput values. You can construct a concrete instance of `NamespaceStateTypeArrayInput` via:

NamespaceStateTypeArray{ NamespaceStateTypeArgs{...} }

type NamespaceStateTypeArrayOutput

type NamespaceStateTypeArrayOutput struct{ *pulumi.OutputState }

func (NamespaceStateTypeArrayOutput) ElementType

func (NamespaceStateTypeArrayOutput) Index

func (NamespaceStateTypeArrayOutput) ToNamespaceStateTypeArrayOutput

func (o NamespaceStateTypeArrayOutput) ToNamespaceStateTypeArrayOutput() NamespaceStateTypeArrayOutput

func (NamespaceStateTypeArrayOutput) ToNamespaceStateTypeArrayOutputWithContext

func (o NamespaceStateTypeArrayOutput) ToNamespaceStateTypeArrayOutputWithContext(ctx context.Context) NamespaceStateTypeArrayOutput

func (NamespaceStateTypeArrayOutput) ToOutput

type NamespaceStateTypeInput

type NamespaceStateTypeInput interface {
	pulumi.Input

	ToNamespaceStateTypeOutput() NamespaceStateTypeOutput
	ToNamespaceStateTypeOutputWithContext(context.Context) NamespaceStateTypeOutput
}

NamespaceStateTypeInput is an input type that accepts NamespaceStateTypeArgs and NamespaceStateTypeOutput values. You can construct a concrete instance of `NamespaceStateTypeInput` via:

NamespaceStateTypeArgs{...}

type NamespaceStateTypeOutput

type NamespaceStateTypeOutput struct{ *pulumi.OutputState }

func (NamespaceStateTypeOutput) Code

(Output) Code describes the state of a Namespace resource.

func (NamespaceStateTypeOutput) ElementType

func (NamespaceStateTypeOutput) ElementType() reflect.Type

func (NamespaceStateTypeOutput) ToNamespaceStateTypeOutput

func (o NamespaceStateTypeOutput) ToNamespaceStateTypeOutput() NamespaceStateTypeOutput

func (NamespaceStateTypeOutput) ToNamespaceStateTypeOutputWithContext

func (o NamespaceStateTypeOutput) ToNamespaceStateTypeOutputWithContext(ctx context.Context) NamespaceStateTypeOutput

func (NamespaceStateTypeOutput) ToOutput

type Scope

type Scope struct {
	pulumi.CustomResourceState

	// Time the Scope was created in UTC.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Time the Scope was deleted in UTC.
	DeleteTime pulumi.StringOutput `pulumi:"deleteTime"`
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapOutput `pulumi:"effectiveLabels"`
	// Labels for this Scope.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The unique identifier of the scope
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapOutput `pulumi:"pulumiLabels"`
	// The client-provided identifier of the scope.
	//
	// ***
	ScopeId pulumi.StringOutput `pulumi:"scopeId"`
	// State of the scope resource.
	// Structure is documented below.
	States ScopeStateTypeArrayOutput `pulumi:"states"`
	// Google-generated UUID for this resource.
	Uid pulumi.StringOutput `pulumi:"uid"`
	// Time the Scope was updated in UTC.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
}

Scope represents a Scope in a Fleet.

To get more information about Scope, see:

* [API documentation](https://cloud.google.com/anthos/fleet-management/docs/reference/rest/v1/projects.locations.scopes) * How-to Guides

## Example Usage ### Gkehub Scope Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewScope(ctx, "scope", &gkehub.ScopeArgs{
			Labels: pulumi.StringMap{
				"keya": pulumi.String("valuea"),
				"keyb": pulumi.String("valueb"),
				"keyc": pulumi.String("valuec"),
			},
			ScopeId: pulumi.String("tf-test-scope%{random_suffix}"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Scope can be imported using any of these accepted formats

```sh

$ pulumi import gcp:gkehub/scope:Scope default projects/{{project}}/locations/global/scopes/{{scope_id}}

```

```sh

$ pulumi import gcp:gkehub/scope:Scope default {{project}}/{{scope_id}}

```

```sh

$ pulumi import gcp:gkehub/scope:Scope default {{scope_id}}

```

func GetScope

func GetScope(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScopeState, opts ...pulumi.ResourceOption) (*Scope, error)

GetScope gets an existing Scope 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 NewScope

func NewScope(ctx *pulumi.Context,
	name string, args *ScopeArgs, opts ...pulumi.ResourceOption) (*Scope, error)

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

func (*Scope) ElementType

func (*Scope) ElementType() reflect.Type

func (*Scope) ToOutput

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

func (*Scope) ToScopeOutput

func (i *Scope) ToScopeOutput() ScopeOutput

func (*Scope) ToScopeOutputWithContext

func (i *Scope) ToScopeOutputWithContext(ctx context.Context) ScopeOutput

type ScopeArgs

type ScopeArgs struct {
	// Labels for this Scope.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The client-provided identifier of the scope.
	//
	// ***
	ScopeId pulumi.StringInput
}

The set of arguments for constructing a Scope resource.

func (ScopeArgs) ElementType

func (ScopeArgs) ElementType() reflect.Type

type ScopeArray

type ScopeArray []ScopeInput

func (ScopeArray) ElementType

func (ScopeArray) ElementType() reflect.Type

func (ScopeArray) ToOutput

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

func (ScopeArray) ToScopeArrayOutput

func (i ScopeArray) ToScopeArrayOutput() ScopeArrayOutput

func (ScopeArray) ToScopeArrayOutputWithContext

func (i ScopeArray) ToScopeArrayOutputWithContext(ctx context.Context) ScopeArrayOutput

type ScopeArrayInput

type ScopeArrayInput interface {
	pulumi.Input

	ToScopeArrayOutput() ScopeArrayOutput
	ToScopeArrayOutputWithContext(context.Context) ScopeArrayOutput
}

ScopeArrayInput is an input type that accepts ScopeArray and ScopeArrayOutput values. You can construct a concrete instance of `ScopeArrayInput` via:

ScopeArray{ ScopeArgs{...} }

type ScopeArrayOutput

type ScopeArrayOutput struct{ *pulumi.OutputState }

func (ScopeArrayOutput) ElementType

func (ScopeArrayOutput) ElementType() reflect.Type

func (ScopeArrayOutput) Index

func (ScopeArrayOutput) ToOutput

func (o ScopeArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*Scope]

func (ScopeArrayOutput) ToScopeArrayOutput

func (o ScopeArrayOutput) ToScopeArrayOutput() ScopeArrayOutput

func (ScopeArrayOutput) ToScopeArrayOutputWithContext

func (o ScopeArrayOutput) ToScopeArrayOutputWithContext(ctx context.Context) ScopeArrayOutput

type ScopeIamBinding

type ScopeIamBinding struct {
	pulumi.CustomResourceState

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

Three different resources help you manage your IAM policy for GKEHub Scope. Each of these resources serves a different use case:

* `gkehub.ScopeIamPolicy`: Authoritative. Sets the IAM policy for the scope and replaces any existing policy already attached. * `gkehub.ScopeIamBinding`: 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 scope are preserved. * `gkehub.ScopeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the scope are preserved.

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

* `gkehub.ScopeIamPolicy`: Retrieves the IAM policy for the scope

> **Note:** `gkehub.ScopeIamPolicy` **cannot** be used in conjunction with `gkehub.ScopeIamBinding` and `gkehub.ScopeIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_scope\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewScopeIamPolicy(ctx, "policy", &gkehub.ScopeIamPolicyArgs{
			Project:    pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId:    pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_scope\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewScopeIamBinding(ctx, "binding", &gkehub.ScopeIamBindingArgs{
			Project: pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId: pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			Role:    pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_scope\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewScopeIamMember(ctx, "member", &gkehub.ScopeIamMemberArgs{
			Project: pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId: pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			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/global/scopes/{{scope_id}} * {{project}}/{{scope_id}} * {{scope_id}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub scope 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:gkehub/scopeIamBinding:ScopeIamBinding editor "projects/{{project}}/locations/global/scopes/{{scope_id}} 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:gkehub/scopeIamBinding:ScopeIamBinding editor "projects/{{project}}/locations/global/scopes/{{scope_id}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/scopeIamBinding:ScopeIamBinding editor projects/{{project}}/locations/global/scopes/{{scope_id}}

```

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

func GetScopeIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScopeIamBindingState, opts ...pulumi.ResourceOption) (*ScopeIamBinding, error)

GetScopeIamBinding gets an existing ScopeIamBinding 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 NewScopeIamBinding

func NewScopeIamBinding(ctx *pulumi.Context,
	name string, args *ScopeIamBindingArgs, opts ...pulumi.ResourceOption) (*ScopeIamBinding, error)

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

func (*ScopeIamBinding) ElementType

func (*ScopeIamBinding) ElementType() reflect.Type

func (*ScopeIamBinding) ToOutput

func (*ScopeIamBinding) ToScopeIamBindingOutput

func (i *ScopeIamBinding) ToScopeIamBindingOutput() ScopeIamBindingOutput

func (*ScopeIamBinding) ToScopeIamBindingOutputWithContext

func (i *ScopeIamBinding) ToScopeIamBindingOutputWithContext(ctx context.Context) ScopeIamBindingOutput

type ScopeIamBindingArgs

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

The set of arguments for constructing a ScopeIamBinding resource.

func (ScopeIamBindingArgs) ElementType

func (ScopeIamBindingArgs) ElementType() reflect.Type

type ScopeIamBindingArray

type ScopeIamBindingArray []ScopeIamBindingInput

func (ScopeIamBindingArray) ElementType

func (ScopeIamBindingArray) ElementType() reflect.Type

func (ScopeIamBindingArray) ToOutput

func (ScopeIamBindingArray) ToScopeIamBindingArrayOutput

func (i ScopeIamBindingArray) ToScopeIamBindingArrayOutput() ScopeIamBindingArrayOutput

func (ScopeIamBindingArray) ToScopeIamBindingArrayOutputWithContext

func (i ScopeIamBindingArray) ToScopeIamBindingArrayOutputWithContext(ctx context.Context) ScopeIamBindingArrayOutput

type ScopeIamBindingArrayInput

type ScopeIamBindingArrayInput interface {
	pulumi.Input

	ToScopeIamBindingArrayOutput() ScopeIamBindingArrayOutput
	ToScopeIamBindingArrayOutputWithContext(context.Context) ScopeIamBindingArrayOutput
}

ScopeIamBindingArrayInput is an input type that accepts ScopeIamBindingArray and ScopeIamBindingArrayOutput values. You can construct a concrete instance of `ScopeIamBindingArrayInput` via:

ScopeIamBindingArray{ ScopeIamBindingArgs{...} }

type ScopeIamBindingArrayOutput

type ScopeIamBindingArrayOutput struct{ *pulumi.OutputState }

func (ScopeIamBindingArrayOutput) ElementType

func (ScopeIamBindingArrayOutput) ElementType() reflect.Type

func (ScopeIamBindingArrayOutput) Index

func (ScopeIamBindingArrayOutput) ToOutput

func (ScopeIamBindingArrayOutput) ToScopeIamBindingArrayOutput

func (o ScopeIamBindingArrayOutput) ToScopeIamBindingArrayOutput() ScopeIamBindingArrayOutput

func (ScopeIamBindingArrayOutput) ToScopeIamBindingArrayOutputWithContext

func (o ScopeIamBindingArrayOutput) ToScopeIamBindingArrayOutputWithContext(ctx context.Context) ScopeIamBindingArrayOutput

type ScopeIamBindingCondition

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

type ScopeIamBindingConditionArgs

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

func (ScopeIamBindingConditionArgs) ElementType

func (ScopeIamBindingConditionArgs) ToOutput

func (ScopeIamBindingConditionArgs) ToScopeIamBindingConditionOutput

func (i ScopeIamBindingConditionArgs) ToScopeIamBindingConditionOutput() ScopeIamBindingConditionOutput

func (ScopeIamBindingConditionArgs) ToScopeIamBindingConditionOutputWithContext

func (i ScopeIamBindingConditionArgs) ToScopeIamBindingConditionOutputWithContext(ctx context.Context) ScopeIamBindingConditionOutput

func (ScopeIamBindingConditionArgs) ToScopeIamBindingConditionPtrOutput

func (i ScopeIamBindingConditionArgs) ToScopeIamBindingConditionPtrOutput() ScopeIamBindingConditionPtrOutput

func (ScopeIamBindingConditionArgs) ToScopeIamBindingConditionPtrOutputWithContext

func (i ScopeIamBindingConditionArgs) ToScopeIamBindingConditionPtrOutputWithContext(ctx context.Context) ScopeIamBindingConditionPtrOutput

type ScopeIamBindingConditionInput

type ScopeIamBindingConditionInput interface {
	pulumi.Input

	ToScopeIamBindingConditionOutput() ScopeIamBindingConditionOutput
	ToScopeIamBindingConditionOutputWithContext(context.Context) ScopeIamBindingConditionOutput
}

ScopeIamBindingConditionInput is an input type that accepts ScopeIamBindingConditionArgs and ScopeIamBindingConditionOutput values. You can construct a concrete instance of `ScopeIamBindingConditionInput` via:

ScopeIamBindingConditionArgs{...}

type ScopeIamBindingConditionOutput

type ScopeIamBindingConditionOutput struct{ *pulumi.OutputState }

func (ScopeIamBindingConditionOutput) Description

func (ScopeIamBindingConditionOutput) ElementType

func (ScopeIamBindingConditionOutput) Expression

func (ScopeIamBindingConditionOutput) Title

func (ScopeIamBindingConditionOutput) ToOutput

func (ScopeIamBindingConditionOutput) ToScopeIamBindingConditionOutput

func (o ScopeIamBindingConditionOutput) ToScopeIamBindingConditionOutput() ScopeIamBindingConditionOutput

func (ScopeIamBindingConditionOutput) ToScopeIamBindingConditionOutputWithContext

func (o ScopeIamBindingConditionOutput) ToScopeIamBindingConditionOutputWithContext(ctx context.Context) ScopeIamBindingConditionOutput

func (ScopeIamBindingConditionOutput) ToScopeIamBindingConditionPtrOutput

func (o ScopeIamBindingConditionOutput) ToScopeIamBindingConditionPtrOutput() ScopeIamBindingConditionPtrOutput

func (ScopeIamBindingConditionOutput) ToScopeIamBindingConditionPtrOutputWithContext

func (o ScopeIamBindingConditionOutput) ToScopeIamBindingConditionPtrOutputWithContext(ctx context.Context) ScopeIamBindingConditionPtrOutput

type ScopeIamBindingConditionPtrInput

type ScopeIamBindingConditionPtrInput interface {
	pulumi.Input

	ToScopeIamBindingConditionPtrOutput() ScopeIamBindingConditionPtrOutput
	ToScopeIamBindingConditionPtrOutputWithContext(context.Context) ScopeIamBindingConditionPtrOutput
}

ScopeIamBindingConditionPtrInput is an input type that accepts ScopeIamBindingConditionArgs, ScopeIamBindingConditionPtr and ScopeIamBindingConditionPtrOutput values. You can construct a concrete instance of `ScopeIamBindingConditionPtrInput` via:

        ScopeIamBindingConditionArgs{...}

or:

        nil

type ScopeIamBindingConditionPtrOutput

type ScopeIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (ScopeIamBindingConditionPtrOutput) Description

func (ScopeIamBindingConditionPtrOutput) Elem

func (ScopeIamBindingConditionPtrOutput) ElementType

func (ScopeIamBindingConditionPtrOutput) Expression

func (ScopeIamBindingConditionPtrOutput) Title

func (ScopeIamBindingConditionPtrOutput) ToOutput

func (ScopeIamBindingConditionPtrOutput) ToScopeIamBindingConditionPtrOutput

func (o ScopeIamBindingConditionPtrOutput) ToScopeIamBindingConditionPtrOutput() ScopeIamBindingConditionPtrOutput

func (ScopeIamBindingConditionPtrOutput) ToScopeIamBindingConditionPtrOutputWithContext

func (o ScopeIamBindingConditionPtrOutput) ToScopeIamBindingConditionPtrOutputWithContext(ctx context.Context) ScopeIamBindingConditionPtrOutput

type ScopeIamBindingInput

type ScopeIamBindingInput interface {
	pulumi.Input

	ToScopeIamBindingOutput() ScopeIamBindingOutput
	ToScopeIamBindingOutputWithContext(ctx context.Context) ScopeIamBindingOutput
}

type ScopeIamBindingMap

type ScopeIamBindingMap map[string]ScopeIamBindingInput

func (ScopeIamBindingMap) ElementType

func (ScopeIamBindingMap) ElementType() reflect.Type

func (ScopeIamBindingMap) ToOutput

func (ScopeIamBindingMap) ToScopeIamBindingMapOutput

func (i ScopeIamBindingMap) ToScopeIamBindingMapOutput() ScopeIamBindingMapOutput

func (ScopeIamBindingMap) ToScopeIamBindingMapOutputWithContext

func (i ScopeIamBindingMap) ToScopeIamBindingMapOutputWithContext(ctx context.Context) ScopeIamBindingMapOutput

type ScopeIamBindingMapInput

type ScopeIamBindingMapInput interface {
	pulumi.Input

	ToScopeIamBindingMapOutput() ScopeIamBindingMapOutput
	ToScopeIamBindingMapOutputWithContext(context.Context) ScopeIamBindingMapOutput
}

ScopeIamBindingMapInput is an input type that accepts ScopeIamBindingMap and ScopeIamBindingMapOutput values. You can construct a concrete instance of `ScopeIamBindingMapInput` via:

ScopeIamBindingMap{ "key": ScopeIamBindingArgs{...} }

type ScopeIamBindingMapOutput

type ScopeIamBindingMapOutput struct{ *pulumi.OutputState }

func (ScopeIamBindingMapOutput) ElementType

func (ScopeIamBindingMapOutput) ElementType() reflect.Type

func (ScopeIamBindingMapOutput) MapIndex

func (ScopeIamBindingMapOutput) ToOutput

func (ScopeIamBindingMapOutput) ToScopeIamBindingMapOutput

func (o ScopeIamBindingMapOutput) ToScopeIamBindingMapOutput() ScopeIamBindingMapOutput

func (ScopeIamBindingMapOutput) ToScopeIamBindingMapOutputWithContext

func (o ScopeIamBindingMapOutput) ToScopeIamBindingMapOutputWithContext(ctx context.Context) ScopeIamBindingMapOutput

type ScopeIamBindingOutput

type ScopeIamBindingOutput struct{ *pulumi.OutputState }

func (ScopeIamBindingOutput) Condition

func (ScopeIamBindingOutput) ElementType

func (ScopeIamBindingOutput) ElementType() reflect.Type

func (ScopeIamBindingOutput) Etag

(Computed) The etag of the IAM policy.

func (ScopeIamBindingOutput) Members

func (ScopeIamBindingOutput) Project

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

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

func (ScopeIamBindingOutput) Role

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

func (ScopeIamBindingOutput) ScopeId

func (ScopeIamBindingOutput) ToOutput

func (ScopeIamBindingOutput) ToScopeIamBindingOutput

func (o ScopeIamBindingOutput) ToScopeIamBindingOutput() ScopeIamBindingOutput

func (ScopeIamBindingOutput) ToScopeIamBindingOutputWithContext

func (o ScopeIamBindingOutput) ToScopeIamBindingOutputWithContext(ctx context.Context) ScopeIamBindingOutput

type ScopeIamBindingState

type ScopeIamBindingState struct {
	Condition ScopeIamBindingConditionPtrInput
	// (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.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `gkehub.ScopeIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role    pulumi.StringPtrInput
	ScopeId pulumi.StringPtrInput
}

func (ScopeIamBindingState) ElementType

func (ScopeIamBindingState) ElementType() reflect.Type

type ScopeIamMember

type ScopeIamMember struct {
	pulumi.CustomResourceState

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

Three different resources help you manage your IAM policy for GKEHub Scope. Each of these resources serves a different use case:

* `gkehub.ScopeIamPolicy`: Authoritative. Sets the IAM policy for the scope and replaces any existing policy already attached. * `gkehub.ScopeIamBinding`: 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 scope are preserved. * `gkehub.ScopeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the scope are preserved.

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

* `gkehub.ScopeIamPolicy`: Retrieves the IAM policy for the scope

> **Note:** `gkehub.ScopeIamPolicy` **cannot** be used in conjunction with `gkehub.ScopeIamBinding` and `gkehub.ScopeIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_scope\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewScopeIamPolicy(ctx, "policy", &gkehub.ScopeIamPolicyArgs{
			Project:    pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId:    pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_scope\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewScopeIamBinding(ctx, "binding", &gkehub.ScopeIamBindingArgs{
			Project: pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId: pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			Role:    pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_scope\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewScopeIamMember(ctx, "member", &gkehub.ScopeIamMemberArgs{
			Project: pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId: pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			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/global/scopes/{{scope_id}} * {{project}}/{{scope_id}} * {{scope_id}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub scope 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:gkehub/scopeIamMember:ScopeIamMember editor "projects/{{project}}/locations/global/scopes/{{scope_id}} 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:gkehub/scopeIamMember:ScopeIamMember editor "projects/{{project}}/locations/global/scopes/{{scope_id}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/scopeIamMember:ScopeIamMember editor projects/{{project}}/locations/global/scopes/{{scope_id}}

```

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

func GetScopeIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScopeIamMemberState, opts ...pulumi.ResourceOption) (*ScopeIamMember, error)

GetScopeIamMember gets an existing ScopeIamMember 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 NewScopeIamMember

func NewScopeIamMember(ctx *pulumi.Context,
	name string, args *ScopeIamMemberArgs, opts ...pulumi.ResourceOption) (*ScopeIamMember, error)

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

func (*ScopeIamMember) ElementType

func (*ScopeIamMember) ElementType() reflect.Type

func (*ScopeIamMember) ToOutput

func (*ScopeIamMember) ToScopeIamMemberOutput

func (i *ScopeIamMember) ToScopeIamMemberOutput() ScopeIamMemberOutput

func (*ScopeIamMember) ToScopeIamMemberOutputWithContext

func (i *ScopeIamMember) ToScopeIamMemberOutputWithContext(ctx context.Context) ScopeIamMemberOutput

type ScopeIamMemberArgs

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

The set of arguments for constructing a ScopeIamMember resource.

func (ScopeIamMemberArgs) ElementType

func (ScopeIamMemberArgs) ElementType() reflect.Type

type ScopeIamMemberArray

type ScopeIamMemberArray []ScopeIamMemberInput

func (ScopeIamMemberArray) ElementType

func (ScopeIamMemberArray) ElementType() reflect.Type

func (ScopeIamMemberArray) ToOutput

func (ScopeIamMemberArray) ToScopeIamMemberArrayOutput

func (i ScopeIamMemberArray) ToScopeIamMemberArrayOutput() ScopeIamMemberArrayOutput

func (ScopeIamMemberArray) ToScopeIamMemberArrayOutputWithContext

func (i ScopeIamMemberArray) ToScopeIamMemberArrayOutputWithContext(ctx context.Context) ScopeIamMemberArrayOutput

type ScopeIamMemberArrayInput

type ScopeIamMemberArrayInput interface {
	pulumi.Input

	ToScopeIamMemberArrayOutput() ScopeIamMemberArrayOutput
	ToScopeIamMemberArrayOutputWithContext(context.Context) ScopeIamMemberArrayOutput
}

ScopeIamMemberArrayInput is an input type that accepts ScopeIamMemberArray and ScopeIamMemberArrayOutput values. You can construct a concrete instance of `ScopeIamMemberArrayInput` via:

ScopeIamMemberArray{ ScopeIamMemberArgs{...} }

type ScopeIamMemberArrayOutput

type ScopeIamMemberArrayOutput struct{ *pulumi.OutputState }

func (ScopeIamMemberArrayOutput) ElementType

func (ScopeIamMemberArrayOutput) ElementType() reflect.Type

func (ScopeIamMemberArrayOutput) Index

func (ScopeIamMemberArrayOutput) ToOutput

func (ScopeIamMemberArrayOutput) ToScopeIamMemberArrayOutput

func (o ScopeIamMemberArrayOutput) ToScopeIamMemberArrayOutput() ScopeIamMemberArrayOutput

func (ScopeIamMemberArrayOutput) ToScopeIamMemberArrayOutputWithContext

func (o ScopeIamMemberArrayOutput) ToScopeIamMemberArrayOutputWithContext(ctx context.Context) ScopeIamMemberArrayOutput

type ScopeIamMemberCondition

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

type ScopeIamMemberConditionArgs

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

func (ScopeIamMemberConditionArgs) ElementType

func (ScopeIamMemberConditionArgs) ToOutput

func (ScopeIamMemberConditionArgs) ToScopeIamMemberConditionOutput

func (i ScopeIamMemberConditionArgs) ToScopeIamMemberConditionOutput() ScopeIamMemberConditionOutput

func (ScopeIamMemberConditionArgs) ToScopeIamMemberConditionOutputWithContext

func (i ScopeIamMemberConditionArgs) ToScopeIamMemberConditionOutputWithContext(ctx context.Context) ScopeIamMemberConditionOutput

func (ScopeIamMemberConditionArgs) ToScopeIamMemberConditionPtrOutput

func (i ScopeIamMemberConditionArgs) ToScopeIamMemberConditionPtrOutput() ScopeIamMemberConditionPtrOutput

func (ScopeIamMemberConditionArgs) ToScopeIamMemberConditionPtrOutputWithContext

func (i ScopeIamMemberConditionArgs) ToScopeIamMemberConditionPtrOutputWithContext(ctx context.Context) ScopeIamMemberConditionPtrOutput

type ScopeIamMemberConditionInput

type ScopeIamMemberConditionInput interface {
	pulumi.Input

	ToScopeIamMemberConditionOutput() ScopeIamMemberConditionOutput
	ToScopeIamMemberConditionOutputWithContext(context.Context) ScopeIamMemberConditionOutput
}

ScopeIamMemberConditionInput is an input type that accepts ScopeIamMemberConditionArgs and ScopeIamMemberConditionOutput values. You can construct a concrete instance of `ScopeIamMemberConditionInput` via:

ScopeIamMemberConditionArgs{...}

type ScopeIamMemberConditionOutput

type ScopeIamMemberConditionOutput struct{ *pulumi.OutputState }

func (ScopeIamMemberConditionOutput) Description

func (ScopeIamMemberConditionOutput) ElementType

func (ScopeIamMemberConditionOutput) Expression

func (ScopeIamMemberConditionOutput) Title

func (ScopeIamMemberConditionOutput) ToOutput

func (ScopeIamMemberConditionOutput) ToScopeIamMemberConditionOutput

func (o ScopeIamMemberConditionOutput) ToScopeIamMemberConditionOutput() ScopeIamMemberConditionOutput

func (ScopeIamMemberConditionOutput) ToScopeIamMemberConditionOutputWithContext

func (o ScopeIamMemberConditionOutput) ToScopeIamMemberConditionOutputWithContext(ctx context.Context) ScopeIamMemberConditionOutput

func (ScopeIamMemberConditionOutput) ToScopeIamMemberConditionPtrOutput

func (o ScopeIamMemberConditionOutput) ToScopeIamMemberConditionPtrOutput() ScopeIamMemberConditionPtrOutput

func (ScopeIamMemberConditionOutput) ToScopeIamMemberConditionPtrOutputWithContext

func (o ScopeIamMemberConditionOutput) ToScopeIamMemberConditionPtrOutputWithContext(ctx context.Context) ScopeIamMemberConditionPtrOutput

type ScopeIamMemberConditionPtrInput

type ScopeIamMemberConditionPtrInput interface {
	pulumi.Input

	ToScopeIamMemberConditionPtrOutput() ScopeIamMemberConditionPtrOutput
	ToScopeIamMemberConditionPtrOutputWithContext(context.Context) ScopeIamMemberConditionPtrOutput
}

ScopeIamMemberConditionPtrInput is an input type that accepts ScopeIamMemberConditionArgs, ScopeIamMemberConditionPtr and ScopeIamMemberConditionPtrOutput values. You can construct a concrete instance of `ScopeIamMemberConditionPtrInput` via:

        ScopeIamMemberConditionArgs{...}

or:

        nil

type ScopeIamMemberConditionPtrOutput

type ScopeIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (ScopeIamMemberConditionPtrOutput) Description

func (ScopeIamMemberConditionPtrOutput) Elem

func (ScopeIamMemberConditionPtrOutput) ElementType

func (ScopeIamMemberConditionPtrOutput) Expression

func (ScopeIamMemberConditionPtrOutput) Title

func (ScopeIamMemberConditionPtrOutput) ToOutput

func (ScopeIamMemberConditionPtrOutput) ToScopeIamMemberConditionPtrOutput

func (o ScopeIamMemberConditionPtrOutput) ToScopeIamMemberConditionPtrOutput() ScopeIamMemberConditionPtrOutput

func (ScopeIamMemberConditionPtrOutput) ToScopeIamMemberConditionPtrOutputWithContext

func (o ScopeIamMemberConditionPtrOutput) ToScopeIamMemberConditionPtrOutputWithContext(ctx context.Context) ScopeIamMemberConditionPtrOutput

type ScopeIamMemberInput

type ScopeIamMemberInput interface {
	pulumi.Input

	ToScopeIamMemberOutput() ScopeIamMemberOutput
	ToScopeIamMemberOutputWithContext(ctx context.Context) ScopeIamMemberOutput
}

type ScopeIamMemberMap

type ScopeIamMemberMap map[string]ScopeIamMemberInput

func (ScopeIamMemberMap) ElementType

func (ScopeIamMemberMap) ElementType() reflect.Type

func (ScopeIamMemberMap) ToOutput

func (ScopeIamMemberMap) ToScopeIamMemberMapOutput

func (i ScopeIamMemberMap) ToScopeIamMemberMapOutput() ScopeIamMemberMapOutput

func (ScopeIamMemberMap) ToScopeIamMemberMapOutputWithContext

func (i ScopeIamMemberMap) ToScopeIamMemberMapOutputWithContext(ctx context.Context) ScopeIamMemberMapOutput

type ScopeIamMemberMapInput

type ScopeIamMemberMapInput interface {
	pulumi.Input

	ToScopeIamMemberMapOutput() ScopeIamMemberMapOutput
	ToScopeIamMemberMapOutputWithContext(context.Context) ScopeIamMemberMapOutput
}

ScopeIamMemberMapInput is an input type that accepts ScopeIamMemberMap and ScopeIamMemberMapOutput values. You can construct a concrete instance of `ScopeIamMemberMapInput` via:

ScopeIamMemberMap{ "key": ScopeIamMemberArgs{...} }

type ScopeIamMemberMapOutput

type ScopeIamMemberMapOutput struct{ *pulumi.OutputState }

func (ScopeIamMemberMapOutput) ElementType

func (ScopeIamMemberMapOutput) ElementType() reflect.Type

func (ScopeIamMemberMapOutput) MapIndex

func (ScopeIamMemberMapOutput) ToOutput

func (ScopeIamMemberMapOutput) ToScopeIamMemberMapOutput

func (o ScopeIamMemberMapOutput) ToScopeIamMemberMapOutput() ScopeIamMemberMapOutput

func (ScopeIamMemberMapOutput) ToScopeIamMemberMapOutputWithContext

func (o ScopeIamMemberMapOutput) ToScopeIamMemberMapOutputWithContext(ctx context.Context) ScopeIamMemberMapOutput

type ScopeIamMemberOutput

type ScopeIamMemberOutput struct{ *pulumi.OutputState }

func (ScopeIamMemberOutput) Condition

func (ScopeIamMemberOutput) ElementType

func (ScopeIamMemberOutput) ElementType() reflect.Type

func (ScopeIamMemberOutput) Etag

(Computed) The etag of the IAM policy.

func (ScopeIamMemberOutput) Member

func (ScopeIamMemberOutput) Project

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

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

func (ScopeIamMemberOutput) Role

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

func (ScopeIamMemberOutput) ScopeId

func (ScopeIamMemberOutput) ToOutput

func (ScopeIamMemberOutput) ToScopeIamMemberOutput

func (o ScopeIamMemberOutput) ToScopeIamMemberOutput() ScopeIamMemberOutput

func (ScopeIamMemberOutput) ToScopeIamMemberOutputWithContext

func (o ScopeIamMemberOutput) ToScopeIamMemberOutputWithContext(ctx context.Context) ScopeIamMemberOutput

type ScopeIamMemberState

type ScopeIamMemberState struct {
	Condition ScopeIamMemberConditionPtrInput
	// (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.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `gkehub.ScopeIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role    pulumi.StringPtrInput
	ScopeId pulumi.StringPtrInput
}

func (ScopeIamMemberState) ElementType

func (ScopeIamMemberState) ElementType() reflect.Type

type ScopeIamPolicy

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

Three different resources help you manage your IAM policy for GKEHub Scope. Each of these resources serves a different use case:

* `gkehub.ScopeIamPolicy`: Authoritative. Sets the IAM policy for the scope and replaces any existing policy already attached. * `gkehub.ScopeIamBinding`: 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 scope are preserved. * `gkehub.ScopeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the scope are preserved.

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

* `gkehub.ScopeIamPolicy`: Retrieves the IAM policy for the scope

> **Note:** `gkehub.ScopeIamPolicy` **cannot** be used in conjunction with `gkehub.ScopeIamBinding` and `gkehub.ScopeIamMember` or they will fight over what your policy should be.

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

## google\_gke\_hub\_scope\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = gkehub.NewScopeIamPolicy(ctx, "policy", &gkehub.ScopeIamPolicyArgs{
			Project:    pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId:    pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_scope\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewScopeIamBinding(ctx, "binding", &gkehub.ScopeIamBindingArgs{
			Project: pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId: pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			Role:    pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_gke\_hub\_scope\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/gkehub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gkehub.NewScopeIamMember(ctx, "member", &gkehub.ScopeIamMemberArgs{
			Project: pulumi.Any(google_gke_hub_scope.Scope.Project),
			ScopeId: pulumi.Any(google_gke_hub_scope.Scope.Scope_id),
			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/global/scopes/{{scope_id}} * {{project}}/{{scope_id}} * {{scope_id}} Any variables not passed in the import command will be taken from the provider configuration. GKEHub scope 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:gkehub/scopeIamPolicy:ScopeIamPolicy editor "projects/{{project}}/locations/global/scopes/{{scope_id}} 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:gkehub/scopeIamPolicy:ScopeIamPolicy editor "projects/{{project}}/locations/global/scopes/{{scope_id}} roles/viewer"

```

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

```sh

$ pulumi import gcp:gkehub/scopeIamPolicy:ScopeIamPolicy editor projects/{{project}}/locations/global/scopes/{{scope_id}}

```

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

func GetScopeIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScopeIamPolicyState, opts ...pulumi.ResourceOption) (*ScopeIamPolicy, error)

GetScopeIamPolicy gets an existing ScopeIamPolicy 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 NewScopeIamPolicy

func NewScopeIamPolicy(ctx *pulumi.Context,
	name string, args *ScopeIamPolicyArgs, opts ...pulumi.ResourceOption) (*ScopeIamPolicy, error)

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

func (*ScopeIamPolicy) ElementType

func (*ScopeIamPolicy) ElementType() reflect.Type

func (*ScopeIamPolicy) ToOutput

func (*ScopeIamPolicy) ToScopeIamPolicyOutput

func (i *ScopeIamPolicy) ToScopeIamPolicyOutput() ScopeIamPolicyOutput

func (*ScopeIamPolicy) ToScopeIamPolicyOutputWithContext

func (i *ScopeIamPolicy) ToScopeIamPolicyOutputWithContext(ctx context.Context) ScopeIamPolicyOutput

type ScopeIamPolicyArgs

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

The set of arguments for constructing a ScopeIamPolicy resource.

func (ScopeIamPolicyArgs) ElementType

func (ScopeIamPolicyArgs) ElementType() reflect.Type

type ScopeIamPolicyArray

type ScopeIamPolicyArray []ScopeIamPolicyInput

func (ScopeIamPolicyArray) ElementType

func (ScopeIamPolicyArray) ElementType() reflect.Type

func (ScopeIamPolicyArray) ToOutput

func (ScopeIamPolicyArray) ToScopeIamPolicyArrayOutput

func (i ScopeIamPolicyArray) ToScopeIamPolicyArrayOutput() ScopeIamPolicyArrayOutput

func (ScopeIamPolicyArray) ToScopeIamPolicyArrayOutputWithContext

func (i ScopeIamPolicyArray) ToScopeIamPolicyArrayOutputWithContext(ctx context.Context) ScopeIamPolicyArrayOutput

type ScopeIamPolicyArrayInput

type ScopeIamPolicyArrayInput interface {
	pulumi.Input

	ToScopeIamPolicyArrayOutput() ScopeIamPolicyArrayOutput
	ToScopeIamPolicyArrayOutputWithContext(context.Context) ScopeIamPolicyArrayOutput
}

ScopeIamPolicyArrayInput is an input type that accepts ScopeIamPolicyArray and ScopeIamPolicyArrayOutput values. You can construct a concrete instance of `ScopeIamPolicyArrayInput` via:

ScopeIamPolicyArray{ ScopeIamPolicyArgs{...} }

type ScopeIamPolicyArrayOutput

type ScopeIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (ScopeIamPolicyArrayOutput) ElementType

func (ScopeIamPolicyArrayOutput) ElementType() reflect.Type

func (ScopeIamPolicyArrayOutput) Index

func (ScopeIamPolicyArrayOutput) ToOutput

func (ScopeIamPolicyArrayOutput) ToScopeIamPolicyArrayOutput

func (o ScopeIamPolicyArrayOutput) ToScopeIamPolicyArrayOutput() ScopeIamPolicyArrayOutput

func (ScopeIamPolicyArrayOutput) ToScopeIamPolicyArrayOutputWithContext

func (o ScopeIamPolicyArrayOutput) ToScopeIamPolicyArrayOutputWithContext(ctx context.Context) ScopeIamPolicyArrayOutput

type ScopeIamPolicyInput

type ScopeIamPolicyInput interface {
	pulumi.Input

	ToScopeIamPolicyOutput() ScopeIamPolicyOutput
	ToScopeIamPolicyOutputWithContext(ctx context.Context) ScopeIamPolicyOutput
}

type ScopeIamPolicyMap

type ScopeIamPolicyMap map[string]ScopeIamPolicyInput

func (ScopeIamPolicyMap) ElementType

func (ScopeIamPolicyMap) ElementType() reflect.Type

func (ScopeIamPolicyMap) ToOutput

func (ScopeIamPolicyMap) ToScopeIamPolicyMapOutput

func (i ScopeIamPolicyMap) ToScopeIamPolicyMapOutput() ScopeIamPolicyMapOutput

func (ScopeIamPolicyMap) ToScopeIamPolicyMapOutputWithContext

func (i ScopeIamPolicyMap) ToScopeIamPolicyMapOutputWithContext(ctx context.Context) ScopeIamPolicyMapOutput

type ScopeIamPolicyMapInput

type ScopeIamPolicyMapInput interface {
	pulumi.Input

	ToScopeIamPolicyMapOutput() ScopeIamPolicyMapOutput
	ToScopeIamPolicyMapOutputWithContext(context.Context) ScopeIamPolicyMapOutput
}

ScopeIamPolicyMapInput is an input type that accepts ScopeIamPolicyMap and ScopeIamPolicyMapOutput values. You can construct a concrete instance of `ScopeIamPolicyMapInput` via:

ScopeIamPolicyMap{ "key": ScopeIamPolicyArgs{...} }

type ScopeIamPolicyMapOutput

type ScopeIamPolicyMapOutput struct{ *pulumi.OutputState }

func (ScopeIamPolicyMapOutput) ElementType

func (ScopeIamPolicyMapOutput) ElementType() reflect.Type

func (ScopeIamPolicyMapOutput) MapIndex

func (ScopeIamPolicyMapOutput) ToOutput

func (ScopeIamPolicyMapOutput) ToScopeIamPolicyMapOutput

func (o ScopeIamPolicyMapOutput) ToScopeIamPolicyMapOutput() ScopeIamPolicyMapOutput

func (ScopeIamPolicyMapOutput) ToScopeIamPolicyMapOutputWithContext

func (o ScopeIamPolicyMapOutput) ToScopeIamPolicyMapOutputWithContext(ctx context.Context) ScopeIamPolicyMapOutput

type ScopeIamPolicyOutput

type ScopeIamPolicyOutput struct{ *pulumi.OutputState }

func (ScopeIamPolicyOutput) ElementType

func (ScopeIamPolicyOutput) ElementType() reflect.Type

func (ScopeIamPolicyOutput) Etag

(Computed) The etag of the IAM policy.

func (ScopeIamPolicyOutput) PolicyData

func (o ScopeIamPolicyOutput) PolicyData() pulumi.StringOutput

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

func (ScopeIamPolicyOutput) Project

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

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

func (ScopeIamPolicyOutput) ScopeId

func (ScopeIamPolicyOutput) ToOutput

func (ScopeIamPolicyOutput) ToScopeIamPolicyOutput

func (o ScopeIamPolicyOutput) ToScopeIamPolicyOutput() ScopeIamPolicyOutput

func (ScopeIamPolicyOutput) ToScopeIamPolicyOutputWithContext

func (o ScopeIamPolicyOutput) ToScopeIamPolicyOutputWithContext(ctx context.Context) ScopeIamPolicyOutput

type ScopeIamPolicyState

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

func (ScopeIamPolicyState) ElementType

func (ScopeIamPolicyState) ElementType() reflect.Type

type ScopeInput

type ScopeInput interface {
	pulumi.Input

	ToScopeOutput() ScopeOutput
	ToScopeOutputWithContext(ctx context.Context) ScopeOutput
}

type ScopeMap

type ScopeMap map[string]ScopeInput

func (ScopeMap) ElementType

func (ScopeMap) ElementType() reflect.Type

func (ScopeMap) ToOutput

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

func (ScopeMap) ToScopeMapOutput

func (i ScopeMap) ToScopeMapOutput() ScopeMapOutput

func (ScopeMap) ToScopeMapOutputWithContext

func (i ScopeMap) ToScopeMapOutputWithContext(ctx context.Context) ScopeMapOutput

type ScopeMapInput

type ScopeMapInput interface {
	pulumi.Input

	ToScopeMapOutput() ScopeMapOutput
	ToScopeMapOutputWithContext(context.Context) ScopeMapOutput
}

ScopeMapInput is an input type that accepts ScopeMap and ScopeMapOutput values. You can construct a concrete instance of `ScopeMapInput` via:

ScopeMap{ "key": ScopeArgs{...} }

type ScopeMapOutput

type ScopeMapOutput struct{ *pulumi.OutputState }

func (ScopeMapOutput) ElementType

func (ScopeMapOutput) ElementType() reflect.Type

func (ScopeMapOutput) MapIndex

func (ScopeMapOutput) ToOutput

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

func (ScopeMapOutput) ToScopeMapOutput

func (o ScopeMapOutput) ToScopeMapOutput() ScopeMapOutput

func (ScopeMapOutput) ToScopeMapOutputWithContext

func (o ScopeMapOutput) ToScopeMapOutputWithContext(ctx context.Context) ScopeMapOutput

type ScopeOutput

type ScopeOutput struct{ *pulumi.OutputState }

func (ScopeOutput) CreateTime

func (o ScopeOutput) CreateTime() pulumi.StringOutput

Time the Scope was created in UTC.

func (ScopeOutput) DeleteTime

func (o ScopeOutput) DeleteTime() pulumi.StringOutput

Time the Scope was deleted in UTC.

func (ScopeOutput) EffectiveLabels

func (o ScopeOutput) EffectiveLabels() pulumi.StringMapOutput

All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other clients and services.

func (ScopeOutput) ElementType

func (ScopeOutput) ElementType() reflect.Type

func (ScopeOutput) Labels

func (o ScopeOutput) Labels() pulumi.StringMapOutput

Labels for this Scope.

**Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field `effectiveLabels` for all of the labels present on the resource.

func (ScopeOutput) Name

func (o ScopeOutput) Name() pulumi.StringOutput

The unique identifier of the scope

func (ScopeOutput) Project

func (o ScopeOutput) Project() pulumi.StringOutput

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

func (ScopeOutput) PulumiLabels

func (o ScopeOutput) PulumiLabels() pulumi.StringMapOutput

The combination of labels configured directly on the resource and default labels configured on the provider.

func (ScopeOutput) ScopeId

func (o ScopeOutput) ScopeId() pulumi.StringOutput

The client-provided identifier of the scope.

***

func (ScopeOutput) States

State of the scope resource. Structure is documented below.

func (ScopeOutput) ToOutput

func (o ScopeOutput) ToOutput(ctx context.Context) pulumix.Output[*Scope]

func (ScopeOutput) ToScopeOutput

func (o ScopeOutput) ToScopeOutput() ScopeOutput

func (ScopeOutput) ToScopeOutputWithContext

func (o ScopeOutput) ToScopeOutputWithContext(ctx context.Context) ScopeOutput

func (ScopeOutput) Uid

Google-generated UUID for this resource.

func (ScopeOutput) UpdateTime

func (o ScopeOutput) UpdateTime() pulumi.StringOutput

Time the Scope was updated in UTC.

type ScopeRbacRoleBinding

type ScopeRbacRoleBinding struct {
	pulumi.CustomResourceState

	// Time the RBAC Role Binding was created in UTC.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Time the RBAC Role Binding was deleted in UTC.
	DeleteTime pulumi.StringOutput `pulumi:"deleteTime"`
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapOutput `pulumi:"effectiveLabels"`
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// group is the group, as seen by the kubernetes cluster.
	Group pulumi.StringPtrOutput `pulumi:"group"`
	// Labels for this ScopeRBACRoleBinding.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The resource name for the RBAC Role Binding
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapOutput `pulumi:"pulumiLabels"`
	// Role to bind to the principal.
	// Structure is documented below.
	Role ScopeRbacRoleBindingRoleOutput `pulumi:"role"`
	// Id of the scope
	ScopeId pulumi.StringOutput `pulumi:"scopeId"`
	// The client-provided identifier of the RBAC Role Binding.
	ScopeRbacRoleBindingId pulumi.StringOutput `pulumi:"scopeRbacRoleBindingId"`
	// State of the RBAC Role Binding resource.
	// Structure is documented below.
	States ScopeRbacRoleBindingStateTypeArrayOutput `pulumi:"states"`
	// Google-generated UUID for this resource.
	Uid pulumi.StringOutput `pulumi:"uid"`
	// Time the RBAC Role Binding was updated in UTC.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// user is the name of the user as seen by the kubernetes cluster, example
	// "alice" or "alice@domain.tld"
	User pulumi.StringPtrOutput `pulumi:"user"`
}

RBACRoleBinding represents a rbacrolebinding across the Fleet.

To get more information about ScopeRBACRoleBinding, see:

* [API documentation](https://cloud.google.com/anthos/fleet-management/docs/reference/rest/v1/projects.locations.scopes.rbacrolebindings) * How-to Guides

## Example Usage

## Import

ScopeRBACRoleBinding can be imported using any of these accepted formats

```sh

$ pulumi import gcp:gkehub/scopeRbacRoleBinding:ScopeRbacRoleBinding default projects/{{project}}/locations/global/scopes/{{scope_id}}/rbacrolebindings/{{scope_rbac_role_binding_id}}

```

```sh

$ pulumi import gcp:gkehub/scopeRbacRoleBinding:ScopeRbacRoleBinding default {{project}}/{{scope_id}}/{{scope_rbac_role_binding_id}}

```

```sh

$ pulumi import gcp:gkehub/scopeRbacRoleBinding:ScopeRbacRoleBinding default {{scope_id}}/{{scope_rbac_role_binding_id}}

```

func GetScopeRbacRoleBinding

func GetScopeRbacRoleBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScopeRbacRoleBindingState, opts ...pulumi.ResourceOption) (*ScopeRbacRoleBinding, error)

GetScopeRbacRoleBinding gets an existing ScopeRbacRoleBinding 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 NewScopeRbacRoleBinding

func NewScopeRbacRoleBinding(ctx *pulumi.Context,
	name string, args *ScopeRbacRoleBindingArgs, opts ...pulumi.ResourceOption) (*ScopeRbacRoleBinding, error)

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

func (*ScopeRbacRoleBinding) ElementType

func (*ScopeRbacRoleBinding) ElementType() reflect.Type

func (*ScopeRbacRoleBinding) ToOutput

func (*ScopeRbacRoleBinding) ToScopeRbacRoleBindingOutput

func (i *ScopeRbacRoleBinding) ToScopeRbacRoleBindingOutput() ScopeRbacRoleBindingOutput

func (*ScopeRbacRoleBinding) ToScopeRbacRoleBindingOutputWithContext

func (i *ScopeRbacRoleBinding) ToScopeRbacRoleBindingOutputWithContext(ctx context.Context) ScopeRbacRoleBindingOutput

type ScopeRbacRoleBindingArgs

type ScopeRbacRoleBindingArgs struct {
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// group is the group, as seen by the kubernetes cluster.
	Group pulumi.StringPtrInput
	// Labels for this ScopeRBACRoleBinding.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Role to bind to the principal.
	// Structure is documented below.
	Role ScopeRbacRoleBindingRoleInput
	// Id of the scope
	ScopeId pulumi.StringInput
	// The client-provided identifier of the RBAC Role Binding.
	ScopeRbacRoleBindingId pulumi.StringInput
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// user is the name of the user as seen by the kubernetes cluster, example
	// "alice" or "alice@domain.tld"
	User pulumi.StringPtrInput
}

The set of arguments for constructing a ScopeRbacRoleBinding resource.

func (ScopeRbacRoleBindingArgs) ElementType

func (ScopeRbacRoleBindingArgs) ElementType() reflect.Type

type ScopeRbacRoleBindingArray

type ScopeRbacRoleBindingArray []ScopeRbacRoleBindingInput

func (ScopeRbacRoleBindingArray) ElementType

func (ScopeRbacRoleBindingArray) ElementType() reflect.Type

func (ScopeRbacRoleBindingArray) ToOutput

func (ScopeRbacRoleBindingArray) ToScopeRbacRoleBindingArrayOutput

func (i ScopeRbacRoleBindingArray) ToScopeRbacRoleBindingArrayOutput() ScopeRbacRoleBindingArrayOutput

func (ScopeRbacRoleBindingArray) ToScopeRbacRoleBindingArrayOutputWithContext

func (i ScopeRbacRoleBindingArray) ToScopeRbacRoleBindingArrayOutputWithContext(ctx context.Context) ScopeRbacRoleBindingArrayOutput

type ScopeRbacRoleBindingArrayInput

type ScopeRbacRoleBindingArrayInput interface {
	pulumi.Input

	ToScopeRbacRoleBindingArrayOutput() ScopeRbacRoleBindingArrayOutput
	ToScopeRbacRoleBindingArrayOutputWithContext(context.Context) ScopeRbacRoleBindingArrayOutput
}

ScopeRbacRoleBindingArrayInput is an input type that accepts ScopeRbacRoleBindingArray and ScopeRbacRoleBindingArrayOutput values. You can construct a concrete instance of `ScopeRbacRoleBindingArrayInput` via:

ScopeRbacRoleBindingArray{ ScopeRbacRoleBindingArgs{...} }

type ScopeRbacRoleBindingArrayOutput

type ScopeRbacRoleBindingArrayOutput struct{ *pulumi.OutputState }

func (ScopeRbacRoleBindingArrayOutput) ElementType

func (ScopeRbacRoleBindingArrayOutput) Index

func (ScopeRbacRoleBindingArrayOutput) ToOutput

func (ScopeRbacRoleBindingArrayOutput) ToScopeRbacRoleBindingArrayOutput

func (o ScopeRbacRoleBindingArrayOutput) ToScopeRbacRoleBindingArrayOutput() ScopeRbacRoleBindingArrayOutput

func (ScopeRbacRoleBindingArrayOutput) ToScopeRbacRoleBindingArrayOutputWithContext

func (o ScopeRbacRoleBindingArrayOutput) ToScopeRbacRoleBindingArrayOutputWithContext(ctx context.Context) ScopeRbacRoleBindingArrayOutput

type ScopeRbacRoleBindingInput

type ScopeRbacRoleBindingInput interface {
	pulumi.Input

	ToScopeRbacRoleBindingOutput() ScopeRbacRoleBindingOutput
	ToScopeRbacRoleBindingOutputWithContext(ctx context.Context) ScopeRbacRoleBindingOutput
}

type ScopeRbacRoleBindingMap

type ScopeRbacRoleBindingMap map[string]ScopeRbacRoleBindingInput

func (ScopeRbacRoleBindingMap) ElementType

func (ScopeRbacRoleBindingMap) ElementType() reflect.Type

func (ScopeRbacRoleBindingMap) ToOutput

func (ScopeRbacRoleBindingMap) ToScopeRbacRoleBindingMapOutput

func (i ScopeRbacRoleBindingMap) ToScopeRbacRoleBindingMapOutput() ScopeRbacRoleBindingMapOutput

func (ScopeRbacRoleBindingMap) ToScopeRbacRoleBindingMapOutputWithContext

func (i ScopeRbacRoleBindingMap) ToScopeRbacRoleBindingMapOutputWithContext(ctx context.Context) ScopeRbacRoleBindingMapOutput

type ScopeRbacRoleBindingMapInput

type ScopeRbacRoleBindingMapInput interface {
	pulumi.Input

	ToScopeRbacRoleBindingMapOutput() ScopeRbacRoleBindingMapOutput
	ToScopeRbacRoleBindingMapOutputWithContext(context.Context) ScopeRbacRoleBindingMapOutput
}

ScopeRbacRoleBindingMapInput is an input type that accepts ScopeRbacRoleBindingMap and ScopeRbacRoleBindingMapOutput values. You can construct a concrete instance of `ScopeRbacRoleBindingMapInput` via:

ScopeRbacRoleBindingMap{ "key": ScopeRbacRoleBindingArgs{...} }

type ScopeRbacRoleBindingMapOutput

type ScopeRbacRoleBindingMapOutput struct{ *pulumi.OutputState }

func (ScopeRbacRoleBindingMapOutput) ElementType

func (ScopeRbacRoleBindingMapOutput) MapIndex

func (ScopeRbacRoleBindingMapOutput) ToOutput

func (ScopeRbacRoleBindingMapOutput) ToScopeRbacRoleBindingMapOutput

func (o ScopeRbacRoleBindingMapOutput) ToScopeRbacRoleBindingMapOutput() ScopeRbacRoleBindingMapOutput

func (ScopeRbacRoleBindingMapOutput) ToScopeRbacRoleBindingMapOutputWithContext

func (o ScopeRbacRoleBindingMapOutput) ToScopeRbacRoleBindingMapOutputWithContext(ctx context.Context) ScopeRbacRoleBindingMapOutput

type ScopeRbacRoleBindingOutput

type ScopeRbacRoleBindingOutput struct{ *pulumi.OutputState }

func (ScopeRbacRoleBindingOutput) CreateTime

Time the RBAC Role Binding was created in UTC.

func (ScopeRbacRoleBindingOutput) DeleteTime

Time the RBAC Role Binding was deleted in UTC.

func (ScopeRbacRoleBindingOutput) EffectiveLabels

All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other clients and services.

func (ScopeRbacRoleBindingOutput) ElementType

func (ScopeRbacRoleBindingOutput) ElementType() reflect.Type

func (ScopeRbacRoleBindingOutput) Group

Principal that is be authorized in the cluster (at least of one the oneof is required). Updating one will unset the other automatically. group is the group, as seen by the kubernetes cluster.

func (ScopeRbacRoleBindingOutput) Labels

Labels for this ScopeRBACRoleBinding.

**Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field `effectiveLabels` for all of the labels present on the resource.

func (ScopeRbacRoleBindingOutput) Name

The resource name for the RBAC Role Binding

func (ScopeRbacRoleBindingOutput) Project

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

func (ScopeRbacRoleBindingOutput) PulumiLabels

The combination of labels configured directly on the resource and default labels configured on the provider.

func (ScopeRbacRoleBindingOutput) Role

Role to bind to the principal. Structure is documented below.

func (ScopeRbacRoleBindingOutput) ScopeId

Id of the scope

func (ScopeRbacRoleBindingOutput) ScopeRbacRoleBindingId

func (o ScopeRbacRoleBindingOutput) ScopeRbacRoleBindingId() pulumi.StringOutput

The client-provided identifier of the RBAC Role Binding.

func (ScopeRbacRoleBindingOutput) States

State of the RBAC Role Binding resource. Structure is documented below.

func (ScopeRbacRoleBindingOutput) ToOutput

func (ScopeRbacRoleBindingOutput) ToScopeRbacRoleBindingOutput

func (o ScopeRbacRoleBindingOutput) ToScopeRbacRoleBindingOutput() ScopeRbacRoleBindingOutput

func (ScopeRbacRoleBindingOutput) ToScopeRbacRoleBindingOutputWithContext

func (o ScopeRbacRoleBindingOutput) ToScopeRbacRoleBindingOutputWithContext(ctx context.Context) ScopeRbacRoleBindingOutput

func (ScopeRbacRoleBindingOutput) Uid

Google-generated UUID for this resource.

func (ScopeRbacRoleBindingOutput) UpdateTime

Time the RBAC Role Binding was updated in UTC.

func (ScopeRbacRoleBindingOutput) User

Principal that is be authorized in the cluster (at least of one the oneof is required). Updating one will unset the other automatically. user is the name of the user as seen by the kubernetes cluster, example "alice" or "alice@domain.tld"

type ScopeRbacRoleBindingRole

type ScopeRbacRoleBindingRole struct {
	// PredefinedRole is an ENUM representation of the default Kubernetes Roles
	// Possible values are: `UNKNOWN`, `ADMIN`, `EDIT`, `VIEW`.
	//
	// ***
	PredefinedRole *string `pulumi:"predefinedRole"`
}

type ScopeRbacRoleBindingRoleArgs

type ScopeRbacRoleBindingRoleArgs struct {
	// PredefinedRole is an ENUM representation of the default Kubernetes Roles
	// Possible values are: `UNKNOWN`, `ADMIN`, `EDIT`, `VIEW`.
	//
	// ***
	PredefinedRole pulumi.StringPtrInput `pulumi:"predefinedRole"`
}

func (ScopeRbacRoleBindingRoleArgs) ElementType

func (ScopeRbacRoleBindingRoleArgs) ToOutput

func (ScopeRbacRoleBindingRoleArgs) ToScopeRbacRoleBindingRoleOutput

func (i ScopeRbacRoleBindingRoleArgs) ToScopeRbacRoleBindingRoleOutput() ScopeRbacRoleBindingRoleOutput

func (ScopeRbacRoleBindingRoleArgs) ToScopeRbacRoleBindingRoleOutputWithContext

func (i ScopeRbacRoleBindingRoleArgs) ToScopeRbacRoleBindingRoleOutputWithContext(ctx context.Context) ScopeRbacRoleBindingRoleOutput

func (ScopeRbacRoleBindingRoleArgs) ToScopeRbacRoleBindingRolePtrOutput

func (i ScopeRbacRoleBindingRoleArgs) ToScopeRbacRoleBindingRolePtrOutput() ScopeRbacRoleBindingRolePtrOutput

func (ScopeRbacRoleBindingRoleArgs) ToScopeRbacRoleBindingRolePtrOutputWithContext

func (i ScopeRbacRoleBindingRoleArgs) ToScopeRbacRoleBindingRolePtrOutputWithContext(ctx context.Context) ScopeRbacRoleBindingRolePtrOutput

type ScopeRbacRoleBindingRoleInput

type ScopeRbacRoleBindingRoleInput interface {
	pulumi.Input

	ToScopeRbacRoleBindingRoleOutput() ScopeRbacRoleBindingRoleOutput
	ToScopeRbacRoleBindingRoleOutputWithContext(context.Context) ScopeRbacRoleBindingRoleOutput
}

ScopeRbacRoleBindingRoleInput is an input type that accepts ScopeRbacRoleBindingRoleArgs and ScopeRbacRoleBindingRoleOutput values. You can construct a concrete instance of `ScopeRbacRoleBindingRoleInput` via:

ScopeRbacRoleBindingRoleArgs{...}

type ScopeRbacRoleBindingRoleOutput

type ScopeRbacRoleBindingRoleOutput struct{ *pulumi.OutputState }

func (ScopeRbacRoleBindingRoleOutput) ElementType

func (ScopeRbacRoleBindingRoleOutput) PredefinedRole

PredefinedRole is an ENUM representation of the default Kubernetes Roles Possible values are: `UNKNOWN`, `ADMIN`, `EDIT`, `VIEW`.

***

func (ScopeRbacRoleBindingRoleOutput) ToOutput

func (ScopeRbacRoleBindingRoleOutput) ToScopeRbacRoleBindingRoleOutput

func (o ScopeRbacRoleBindingRoleOutput) ToScopeRbacRoleBindingRoleOutput() ScopeRbacRoleBindingRoleOutput

func (ScopeRbacRoleBindingRoleOutput) ToScopeRbacRoleBindingRoleOutputWithContext

func (o ScopeRbacRoleBindingRoleOutput) ToScopeRbacRoleBindingRoleOutputWithContext(ctx context.Context) ScopeRbacRoleBindingRoleOutput

func (ScopeRbacRoleBindingRoleOutput) ToScopeRbacRoleBindingRolePtrOutput

func (o ScopeRbacRoleBindingRoleOutput) ToScopeRbacRoleBindingRolePtrOutput() ScopeRbacRoleBindingRolePtrOutput

func (ScopeRbacRoleBindingRoleOutput) ToScopeRbacRoleBindingRolePtrOutputWithContext

func (o ScopeRbacRoleBindingRoleOutput) ToScopeRbacRoleBindingRolePtrOutputWithContext(ctx context.Context) ScopeRbacRoleBindingRolePtrOutput

type ScopeRbacRoleBindingRolePtrInput

type ScopeRbacRoleBindingRolePtrInput interface {
	pulumi.Input

	ToScopeRbacRoleBindingRolePtrOutput() ScopeRbacRoleBindingRolePtrOutput
	ToScopeRbacRoleBindingRolePtrOutputWithContext(context.Context) ScopeRbacRoleBindingRolePtrOutput
}

ScopeRbacRoleBindingRolePtrInput is an input type that accepts ScopeRbacRoleBindingRoleArgs, ScopeRbacRoleBindingRolePtr and ScopeRbacRoleBindingRolePtrOutput values. You can construct a concrete instance of `ScopeRbacRoleBindingRolePtrInput` via:

        ScopeRbacRoleBindingRoleArgs{...}

or:

        nil

type ScopeRbacRoleBindingRolePtrOutput

type ScopeRbacRoleBindingRolePtrOutput struct{ *pulumi.OutputState }

func (ScopeRbacRoleBindingRolePtrOutput) Elem

func (ScopeRbacRoleBindingRolePtrOutput) ElementType

func (ScopeRbacRoleBindingRolePtrOutput) PredefinedRole

PredefinedRole is an ENUM representation of the default Kubernetes Roles Possible values are: `UNKNOWN`, `ADMIN`, `EDIT`, `VIEW`.

***

func (ScopeRbacRoleBindingRolePtrOutput) ToOutput

func (ScopeRbacRoleBindingRolePtrOutput) ToScopeRbacRoleBindingRolePtrOutput

func (o ScopeRbacRoleBindingRolePtrOutput) ToScopeRbacRoleBindingRolePtrOutput() ScopeRbacRoleBindingRolePtrOutput

func (ScopeRbacRoleBindingRolePtrOutput) ToScopeRbacRoleBindingRolePtrOutputWithContext

func (o ScopeRbacRoleBindingRolePtrOutput) ToScopeRbacRoleBindingRolePtrOutputWithContext(ctx context.Context) ScopeRbacRoleBindingRolePtrOutput

type ScopeRbacRoleBindingState

type ScopeRbacRoleBindingState struct {
	// Time the RBAC Role Binding was created in UTC.
	CreateTime pulumi.StringPtrInput
	// Time the RBAC Role Binding was deleted in UTC.
	DeleteTime pulumi.StringPtrInput
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapInput
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// group is the group, as seen by the kubernetes cluster.
	Group pulumi.StringPtrInput
	// Labels for this ScopeRBACRoleBinding.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The resource name for the RBAC Role Binding
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapInput
	// Role to bind to the principal.
	// Structure is documented below.
	Role ScopeRbacRoleBindingRolePtrInput
	// Id of the scope
	ScopeId pulumi.StringPtrInput
	// The client-provided identifier of the RBAC Role Binding.
	ScopeRbacRoleBindingId pulumi.StringPtrInput
	// State of the RBAC Role Binding resource.
	// Structure is documented below.
	States ScopeRbacRoleBindingStateTypeArrayInput
	// Google-generated UUID for this resource.
	Uid pulumi.StringPtrInput
	// Time the RBAC Role Binding was updated in UTC.
	UpdateTime pulumi.StringPtrInput
	// Principal that is be authorized in the cluster (at least of one the oneof
	// is required). Updating one will unset the other automatically.
	// user is the name of the user as seen by the kubernetes cluster, example
	// "alice" or "alice@domain.tld"
	User pulumi.StringPtrInput
}

func (ScopeRbacRoleBindingState) ElementType

func (ScopeRbacRoleBindingState) ElementType() reflect.Type

type ScopeRbacRoleBindingStateType

type ScopeRbacRoleBindingStateType struct {
	// (Output)
	// Code describes the state of a RBAC Role Binding resource.
	Code *string `pulumi:"code"`
}

type ScopeRbacRoleBindingStateTypeArgs

type ScopeRbacRoleBindingStateTypeArgs struct {
	// (Output)
	// Code describes the state of a RBAC Role Binding resource.
	Code pulumi.StringPtrInput `pulumi:"code"`
}

func (ScopeRbacRoleBindingStateTypeArgs) ElementType

func (ScopeRbacRoleBindingStateTypeArgs) ToOutput

func (ScopeRbacRoleBindingStateTypeArgs) ToScopeRbacRoleBindingStateTypeOutput

func (i ScopeRbacRoleBindingStateTypeArgs) ToScopeRbacRoleBindingStateTypeOutput() ScopeRbacRoleBindingStateTypeOutput

func (ScopeRbacRoleBindingStateTypeArgs) ToScopeRbacRoleBindingStateTypeOutputWithContext

func (i ScopeRbacRoleBindingStateTypeArgs) ToScopeRbacRoleBindingStateTypeOutputWithContext(ctx context.Context) ScopeRbacRoleBindingStateTypeOutput

type ScopeRbacRoleBindingStateTypeArray

type ScopeRbacRoleBindingStateTypeArray []ScopeRbacRoleBindingStateTypeInput

func (ScopeRbacRoleBindingStateTypeArray) ElementType

func (ScopeRbacRoleBindingStateTypeArray) ToOutput

func (ScopeRbacRoleBindingStateTypeArray) ToScopeRbacRoleBindingStateTypeArrayOutput

func (i ScopeRbacRoleBindingStateTypeArray) ToScopeRbacRoleBindingStateTypeArrayOutput() ScopeRbacRoleBindingStateTypeArrayOutput

func (ScopeRbacRoleBindingStateTypeArray) ToScopeRbacRoleBindingStateTypeArrayOutputWithContext

func (i ScopeRbacRoleBindingStateTypeArray) ToScopeRbacRoleBindingStateTypeArrayOutputWithContext(ctx context.Context) ScopeRbacRoleBindingStateTypeArrayOutput

type ScopeRbacRoleBindingStateTypeArrayInput

type ScopeRbacRoleBindingStateTypeArrayInput interface {
	pulumi.Input

	ToScopeRbacRoleBindingStateTypeArrayOutput() ScopeRbacRoleBindingStateTypeArrayOutput
	ToScopeRbacRoleBindingStateTypeArrayOutputWithContext(context.Context) ScopeRbacRoleBindingStateTypeArrayOutput
}

ScopeRbacRoleBindingStateTypeArrayInput is an input type that accepts ScopeRbacRoleBindingStateTypeArray and ScopeRbacRoleBindingStateTypeArrayOutput values. You can construct a concrete instance of `ScopeRbacRoleBindingStateTypeArrayInput` via:

ScopeRbacRoleBindingStateTypeArray{ ScopeRbacRoleBindingStateTypeArgs{...} }

type ScopeRbacRoleBindingStateTypeArrayOutput

type ScopeRbacRoleBindingStateTypeArrayOutput struct{ *pulumi.OutputState }

func (ScopeRbacRoleBindingStateTypeArrayOutput) ElementType

func (ScopeRbacRoleBindingStateTypeArrayOutput) Index

func (ScopeRbacRoleBindingStateTypeArrayOutput) ToOutput

func (ScopeRbacRoleBindingStateTypeArrayOutput) ToScopeRbacRoleBindingStateTypeArrayOutput

func (o ScopeRbacRoleBindingStateTypeArrayOutput) ToScopeRbacRoleBindingStateTypeArrayOutput() ScopeRbacRoleBindingStateTypeArrayOutput

func (ScopeRbacRoleBindingStateTypeArrayOutput) ToScopeRbacRoleBindingStateTypeArrayOutputWithContext

func (o ScopeRbacRoleBindingStateTypeArrayOutput) ToScopeRbacRoleBindingStateTypeArrayOutputWithContext(ctx context.Context) ScopeRbacRoleBindingStateTypeArrayOutput

type ScopeRbacRoleBindingStateTypeInput

type ScopeRbacRoleBindingStateTypeInput interface {
	pulumi.Input

	ToScopeRbacRoleBindingStateTypeOutput() ScopeRbacRoleBindingStateTypeOutput
	ToScopeRbacRoleBindingStateTypeOutputWithContext(context.Context) ScopeRbacRoleBindingStateTypeOutput
}

ScopeRbacRoleBindingStateTypeInput is an input type that accepts ScopeRbacRoleBindingStateTypeArgs and ScopeRbacRoleBindingStateTypeOutput values. You can construct a concrete instance of `ScopeRbacRoleBindingStateTypeInput` via:

ScopeRbacRoleBindingStateTypeArgs{...}

type ScopeRbacRoleBindingStateTypeOutput

type ScopeRbacRoleBindingStateTypeOutput struct{ *pulumi.OutputState }

func (ScopeRbacRoleBindingStateTypeOutput) Code

(Output) Code describes the state of a RBAC Role Binding resource.

func (ScopeRbacRoleBindingStateTypeOutput) ElementType

func (ScopeRbacRoleBindingStateTypeOutput) ToOutput

func (ScopeRbacRoleBindingStateTypeOutput) ToScopeRbacRoleBindingStateTypeOutput

func (o ScopeRbacRoleBindingStateTypeOutput) ToScopeRbacRoleBindingStateTypeOutput() ScopeRbacRoleBindingStateTypeOutput

func (ScopeRbacRoleBindingStateTypeOutput) ToScopeRbacRoleBindingStateTypeOutputWithContext

func (o ScopeRbacRoleBindingStateTypeOutput) ToScopeRbacRoleBindingStateTypeOutputWithContext(ctx context.Context) ScopeRbacRoleBindingStateTypeOutput

type ScopeState

type ScopeState struct {
	// Time the Scope was created in UTC.
	CreateTime pulumi.StringPtrInput
	// Time the Scope was deleted in UTC.
	DeleteTime pulumi.StringPtrInput
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other
	// clients and services.
	EffectiveLabels pulumi.StringMapInput
	// Labels for this Scope.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The unique identifier of the scope
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapInput
	// The client-provided identifier of the scope.
	//
	// ***
	ScopeId pulumi.StringPtrInput
	// State of the scope resource.
	// Structure is documented below.
	States ScopeStateTypeArrayInput
	// Google-generated UUID for this resource.
	Uid pulumi.StringPtrInput
	// Time the Scope was updated in UTC.
	UpdateTime pulumi.StringPtrInput
}

func (ScopeState) ElementType

func (ScopeState) ElementType() reflect.Type

type ScopeStateType

type ScopeStateType struct {
	// (Output)
	// Code describes the state of a Scope resource.
	Code *string `pulumi:"code"`
}

type ScopeStateTypeArgs

type ScopeStateTypeArgs struct {
	// (Output)
	// Code describes the state of a Scope resource.
	Code pulumi.StringPtrInput `pulumi:"code"`
}

func (ScopeStateTypeArgs) ElementType

func (ScopeStateTypeArgs) ElementType() reflect.Type

func (ScopeStateTypeArgs) ToOutput

func (ScopeStateTypeArgs) ToScopeStateTypeOutput

func (i ScopeStateTypeArgs) ToScopeStateTypeOutput() ScopeStateTypeOutput

func (ScopeStateTypeArgs) ToScopeStateTypeOutputWithContext

func (i ScopeStateTypeArgs) ToScopeStateTypeOutputWithContext(ctx context.Context) ScopeStateTypeOutput

type ScopeStateTypeArray

type ScopeStateTypeArray []ScopeStateTypeInput

func (ScopeStateTypeArray) ElementType

func (ScopeStateTypeArray) ElementType() reflect.Type

func (ScopeStateTypeArray) ToOutput

func (ScopeStateTypeArray) ToScopeStateTypeArrayOutput

func (i ScopeStateTypeArray) ToScopeStateTypeArrayOutput() ScopeStateTypeArrayOutput

func (ScopeStateTypeArray) ToScopeStateTypeArrayOutputWithContext

func (i ScopeStateTypeArray) ToScopeStateTypeArrayOutputWithContext(ctx context.Context) ScopeStateTypeArrayOutput

type ScopeStateTypeArrayInput

type ScopeStateTypeArrayInput interface {
	pulumi.Input

	ToScopeStateTypeArrayOutput() ScopeStateTypeArrayOutput
	ToScopeStateTypeArrayOutputWithContext(context.Context) ScopeStateTypeArrayOutput
}

ScopeStateTypeArrayInput is an input type that accepts ScopeStateTypeArray and ScopeStateTypeArrayOutput values. You can construct a concrete instance of `ScopeStateTypeArrayInput` via:

ScopeStateTypeArray{ ScopeStateTypeArgs{...} }

type ScopeStateTypeArrayOutput

type ScopeStateTypeArrayOutput struct{ *pulumi.OutputState }

func (ScopeStateTypeArrayOutput) ElementType

func (ScopeStateTypeArrayOutput) ElementType() reflect.Type

func (ScopeStateTypeArrayOutput) Index

func (ScopeStateTypeArrayOutput) ToOutput

func (ScopeStateTypeArrayOutput) ToScopeStateTypeArrayOutput

func (o ScopeStateTypeArrayOutput) ToScopeStateTypeArrayOutput() ScopeStateTypeArrayOutput

func (ScopeStateTypeArrayOutput) ToScopeStateTypeArrayOutputWithContext

func (o ScopeStateTypeArrayOutput) ToScopeStateTypeArrayOutputWithContext(ctx context.Context) ScopeStateTypeArrayOutput

type ScopeStateTypeInput

type ScopeStateTypeInput interface {
	pulumi.Input

	ToScopeStateTypeOutput() ScopeStateTypeOutput
	ToScopeStateTypeOutputWithContext(context.Context) ScopeStateTypeOutput
}

ScopeStateTypeInput is an input type that accepts ScopeStateTypeArgs and ScopeStateTypeOutput values. You can construct a concrete instance of `ScopeStateTypeInput` via:

ScopeStateTypeArgs{...}

type ScopeStateTypeOutput

type ScopeStateTypeOutput struct{ *pulumi.OutputState }

func (ScopeStateTypeOutput) Code

(Output) Code describes the state of a Scope resource.

func (ScopeStateTypeOutput) ElementType

func (ScopeStateTypeOutput) ElementType() reflect.Type

func (ScopeStateTypeOutput) ToOutput

func (ScopeStateTypeOutput) ToScopeStateTypeOutput

func (o ScopeStateTypeOutput) ToScopeStateTypeOutput() ScopeStateTypeOutput

func (ScopeStateTypeOutput) ToScopeStateTypeOutputWithContext

func (o ScopeStateTypeOutput) ToScopeStateTypeOutputWithContext(ctx context.Context) ScopeStateTypeOutput

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL