gkehub

package
v6.61.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type 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"`
	// GCP labels for this Feature.
	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"`
	// 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/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/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/v6/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/v6/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/v6/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/v6/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

type FeatureArgs

type FeatureArgs struct {
	// GCP labels for this Feature.
	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

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

type FeatureIamBinding added in v6.60.0

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/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = 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/v6/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/v6/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 added in v6.60.0

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 added in v6.60.0

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 added in v6.60.0

func (*FeatureIamBinding) ElementType() reflect.Type

func (*FeatureIamBinding) ToFeatureIamBindingOutput added in v6.60.0

func (i *FeatureIamBinding) ToFeatureIamBindingOutput() FeatureIamBindingOutput

func (*FeatureIamBinding) ToFeatureIamBindingOutputWithContext added in v6.60.0

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

type FeatureIamBindingArgs added in v6.60.0

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 added in v6.60.0

func (FeatureIamBindingArgs) ElementType() reflect.Type

type FeatureIamBindingArray added in v6.60.0

type FeatureIamBindingArray []FeatureIamBindingInput

func (FeatureIamBindingArray) ElementType added in v6.60.0

func (FeatureIamBindingArray) ElementType() reflect.Type

func (FeatureIamBindingArray) ToFeatureIamBindingArrayOutput added in v6.60.0

func (i FeatureIamBindingArray) ToFeatureIamBindingArrayOutput() FeatureIamBindingArrayOutput

func (FeatureIamBindingArray) ToFeatureIamBindingArrayOutputWithContext added in v6.60.0

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

type FeatureIamBindingArrayInput added in v6.60.0

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 added in v6.60.0

type FeatureIamBindingArrayOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingArrayOutput) ElementType added in v6.60.0

func (FeatureIamBindingArrayOutput) Index added in v6.60.0

func (FeatureIamBindingArrayOutput) ToFeatureIamBindingArrayOutput added in v6.60.0

func (o FeatureIamBindingArrayOutput) ToFeatureIamBindingArrayOutput() FeatureIamBindingArrayOutput

func (FeatureIamBindingArrayOutput) ToFeatureIamBindingArrayOutputWithContext added in v6.60.0

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

type FeatureIamBindingCondition added in v6.60.0

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

type FeatureIamBindingConditionArgs added in v6.60.0

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

func (FeatureIamBindingConditionArgs) ElementType added in v6.60.0

func (FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionOutput added in v6.60.0

func (i FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionOutput() FeatureIamBindingConditionOutput

func (FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionOutputWithContext added in v6.60.0

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

func (FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionPtrOutput added in v6.60.0

func (i FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionPtrOutput() FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionArgs) ToFeatureIamBindingConditionPtrOutputWithContext added in v6.60.0

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

type FeatureIamBindingConditionInput added in v6.60.0

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 added in v6.60.0

type FeatureIamBindingConditionOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingConditionOutput) Description added in v6.60.0

func (FeatureIamBindingConditionOutput) ElementType added in v6.60.0

func (FeatureIamBindingConditionOutput) Expression added in v6.60.0

func (FeatureIamBindingConditionOutput) Title added in v6.60.0

func (FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionOutput added in v6.60.0

func (o FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionOutput() FeatureIamBindingConditionOutput

func (FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionOutputWithContext added in v6.60.0

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

func (FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionPtrOutput added in v6.60.0

func (o FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionPtrOutput() FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionOutput) ToFeatureIamBindingConditionPtrOutputWithContext added in v6.60.0

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

type FeatureIamBindingConditionPtrInput added in v6.60.0

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

func FeatureIamBindingConditionPtr added in v6.60.0

type FeatureIamBindingConditionPtrOutput added in v6.60.0

type FeatureIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingConditionPtrOutput) Description added in v6.60.0

func (FeatureIamBindingConditionPtrOutput) Elem added in v6.60.0

func (FeatureIamBindingConditionPtrOutput) ElementType added in v6.60.0

func (FeatureIamBindingConditionPtrOutput) Expression added in v6.60.0

func (FeatureIamBindingConditionPtrOutput) Title added in v6.60.0

func (FeatureIamBindingConditionPtrOutput) ToFeatureIamBindingConditionPtrOutput added in v6.60.0

func (o FeatureIamBindingConditionPtrOutput) ToFeatureIamBindingConditionPtrOutput() FeatureIamBindingConditionPtrOutput

func (FeatureIamBindingConditionPtrOutput) ToFeatureIamBindingConditionPtrOutputWithContext added in v6.60.0

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

type FeatureIamBindingInput added in v6.60.0

type FeatureIamBindingInput interface {
	pulumi.Input

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

type FeatureIamBindingMap added in v6.60.0

type FeatureIamBindingMap map[string]FeatureIamBindingInput

func (FeatureIamBindingMap) ElementType added in v6.60.0

func (FeatureIamBindingMap) ElementType() reflect.Type

func (FeatureIamBindingMap) ToFeatureIamBindingMapOutput added in v6.60.0

func (i FeatureIamBindingMap) ToFeatureIamBindingMapOutput() FeatureIamBindingMapOutput

func (FeatureIamBindingMap) ToFeatureIamBindingMapOutputWithContext added in v6.60.0

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

type FeatureIamBindingMapInput added in v6.60.0

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 added in v6.60.0

type FeatureIamBindingMapOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingMapOutput) ElementType added in v6.60.0

func (FeatureIamBindingMapOutput) ElementType() reflect.Type

func (FeatureIamBindingMapOutput) MapIndex added in v6.60.0

func (FeatureIamBindingMapOutput) ToFeatureIamBindingMapOutput added in v6.60.0

func (o FeatureIamBindingMapOutput) ToFeatureIamBindingMapOutput() FeatureIamBindingMapOutput

func (FeatureIamBindingMapOutput) ToFeatureIamBindingMapOutputWithContext added in v6.60.0

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

type FeatureIamBindingOutput added in v6.60.0

type FeatureIamBindingOutput struct{ *pulumi.OutputState }

func (FeatureIamBindingOutput) Condition added in v6.60.0

func (FeatureIamBindingOutput) ElementType added in v6.60.0

func (FeatureIamBindingOutput) ElementType() reflect.Type

func (FeatureIamBindingOutput) Etag added in v6.60.0

(Computed) The etag of the IAM policy.

func (FeatureIamBindingOutput) Location added in v6.60.0

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

func (FeatureIamBindingOutput) Members added in v6.60.0

func (FeatureIamBindingOutput) Name added in v6.60.0

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

func (FeatureIamBindingOutput) Project added in v6.60.0

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

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

func (FeatureIamBindingOutput) Role added in v6.60.0

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 added in v6.60.0

func (o FeatureIamBindingOutput) ToFeatureIamBindingOutput() FeatureIamBindingOutput

func (FeatureIamBindingOutput) ToFeatureIamBindingOutputWithContext added in v6.60.0

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

type FeatureIamBindingState added in v6.60.0

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 added in v6.60.0

func (FeatureIamBindingState) ElementType() reflect.Type

type FeatureIamMember added in v6.60.0

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/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = 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/v6/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/v6/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 added in v6.60.0

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 added in v6.60.0

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 added in v6.60.0

func (*FeatureIamMember) ElementType() reflect.Type

func (*FeatureIamMember) ToFeatureIamMemberOutput added in v6.60.0

func (i *FeatureIamMember) ToFeatureIamMemberOutput() FeatureIamMemberOutput

func (*FeatureIamMember) ToFeatureIamMemberOutputWithContext added in v6.60.0

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

type FeatureIamMemberArgs added in v6.60.0

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 added in v6.60.0

func (FeatureIamMemberArgs) ElementType() reflect.Type

type FeatureIamMemberArray added in v6.60.0

type FeatureIamMemberArray []FeatureIamMemberInput

func (FeatureIamMemberArray) ElementType added in v6.60.0

func (FeatureIamMemberArray) ElementType() reflect.Type

func (FeatureIamMemberArray) ToFeatureIamMemberArrayOutput added in v6.60.0

func (i FeatureIamMemberArray) ToFeatureIamMemberArrayOutput() FeatureIamMemberArrayOutput

func (FeatureIamMemberArray) ToFeatureIamMemberArrayOutputWithContext added in v6.60.0

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

type FeatureIamMemberArrayInput added in v6.60.0

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 added in v6.60.0

type FeatureIamMemberArrayOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberArrayOutput) ElementType added in v6.60.0

func (FeatureIamMemberArrayOutput) Index added in v6.60.0

func (FeatureIamMemberArrayOutput) ToFeatureIamMemberArrayOutput added in v6.60.0

func (o FeatureIamMemberArrayOutput) ToFeatureIamMemberArrayOutput() FeatureIamMemberArrayOutput

func (FeatureIamMemberArrayOutput) ToFeatureIamMemberArrayOutputWithContext added in v6.60.0

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

type FeatureIamMemberCondition added in v6.60.0

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

type FeatureIamMemberConditionArgs added in v6.60.0

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

func (FeatureIamMemberConditionArgs) ElementType added in v6.60.0

func (FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionOutput added in v6.60.0

func (i FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionOutput() FeatureIamMemberConditionOutput

func (FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionOutputWithContext added in v6.60.0

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

func (FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionPtrOutput added in v6.60.0

func (i FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionPtrOutput() FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionArgs) ToFeatureIamMemberConditionPtrOutputWithContext added in v6.60.0

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

type FeatureIamMemberConditionInput added in v6.60.0

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 added in v6.60.0

type FeatureIamMemberConditionOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberConditionOutput) Description added in v6.60.0

func (FeatureIamMemberConditionOutput) ElementType added in v6.60.0

func (FeatureIamMemberConditionOutput) Expression added in v6.60.0

func (FeatureIamMemberConditionOutput) Title added in v6.60.0

func (FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionOutput added in v6.60.0

func (o FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionOutput() FeatureIamMemberConditionOutput

func (FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionOutputWithContext added in v6.60.0

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

func (FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionPtrOutput added in v6.60.0

func (o FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionPtrOutput() FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionOutput) ToFeatureIamMemberConditionPtrOutputWithContext added in v6.60.0

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

type FeatureIamMemberConditionPtrInput added in v6.60.0

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

func FeatureIamMemberConditionPtr added in v6.60.0

type FeatureIamMemberConditionPtrOutput added in v6.60.0

type FeatureIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberConditionPtrOutput) Description added in v6.60.0

func (FeatureIamMemberConditionPtrOutput) Elem added in v6.60.0

func (FeatureIamMemberConditionPtrOutput) ElementType added in v6.60.0

func (FeatureIamMemberConditionPtrOutput) Expression added in v6.60.0

func (FeatureIamMemberConditionPtrOutput) Title added in v6.60.0

func (FeatureIamMemberConditionPtrOutput) ToFeatureIamMemberConditionPtrOutput added in v6.60.0

func (o FeatureIamMemberConditionPtrOutput) ToFeatureIamMemberConditionPtrOutput() FeatureIamMemberConditionPtrOutput

func (FeatureIamMemberConditionPtrOutput) ToFeatureIamMemberConditionPtrOutputWithContext added in v6.60.0

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

type FeatureIamMemberInput added in v6.60.0

type FeatureIamMemberInput interface {
	pulumi.Input

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

type FeatureIamMemberMap added in v6.60.0

type FeatureIamMemberMap map[string]FeatureIamMemberInput

func (FeatureIamMemberMap) ElementType added in v6.60.0

func (FeatureIamMemberMap) ElementType() reflect.Type

func (FeatureIamMemberMap) ToFeatureIamMemberMapOutput added in v6.60.0

func (i FeatureIamMemberMap) ToFeatureIamMemberMapOutput() FeatureIamMemberMapOutput

func (FeatureIamMemberMap) ToFeatureIamMemberMapOutputWithContext added in v6.60.0

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

type FeatureIamMemberMapInput added in v6.60.0

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 added in v6.60.0

type FeatureIamMemberMapOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberMapOutput) ElementType added in v6.60.0

func (FeatureIamMemberMapOutput) ElementType() reflect.Type

func (FeatureIamMemberMapOutput) MapIndex added in v6.60.0

func (FeatureIamMemberMapOutput) ToFeatureIamMemberMapOutput added in v6.60.0

func (o FeatureIamMemberMapOutput) ToFeatureIamMemberMapOutput() FeatureIamMemberMapOutput

func (FeatureIamMemberMapOutput) ToFeatureIamMemberMapOutputWithContext added in v6.60.0

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

type FeatureIamMemberOutput added in v6.60.0

type FeatureIamMemberOutput struct{ *pulumi.OutputState }

func (FeatureIamMemberOutput) Condition added in v6.60.0

func (FeatureIamMemberOutput) ElementType added in v6.60.0

func (FeatureIamMemberOutput) ElementType() reflect.Type

func (FeatureIamMemberOutput) Etag added in v6.60.0

(Computed) The etag of the IAM policy.

func (FeatureIamMemberOutput) Location added in v6.60.0

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

func (FeatureIamMemberOutput) Member added in v6.60.0

func (FeatureIamMemberOutput) Name added in v6.60.0

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

func (FeatureIamMemberOutput) Project added in v6.60.0

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

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

func (FeatureIamMemberOutput) Role added in v6.60.0

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 added in v6.60.0

func (o FeatureIamMemberOutput) ToFeatureIamMemberOutput() FeatureIamMemberOutput

func (FeatureIamMemberOutput) ToFeatureIamMemberOutputWithContext added in v6.60.0

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

type FeatureIamMemberState added in v6.60.0

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 added in v6.60.0

func (FeatureIamMemberState) ElementType() reflect.Type

type FeatureIamPolicy added in v6.60.0

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/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = 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/v6/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/v6/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 added in v6.60.0

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 added in v6.60.0

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 added in v6.60.0

func (*FeatureIamPolicy) ElementType() reflect.Type

func (*FeatureIamPolicy) ToFeatureIamPolicyOutput added in v6.60.0

func (i *FeatureIamPolicy) ToFeatureIamPolicyOutput() FeatureIamPolicyOutput

func (*FeatureIamPolicy) ToFeatureIamPolicyOutputWithContext added in v6.60.0

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

type FeatureIamPolicyArgs added in v6.60.0

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 added in v6.60.0

func (FeatureIamPolicyArgs) ElementType() reflect.Type

type FeatureIamPolicyArray added in v6.60.0

type FeatureIamPolicyArray []FeatureIamPolicyInput

func (FeatureIamPolicyArray) ElementType added in v6.60.0

func (FeatureIamPolicyArray) ElementType() reflect.Type

func (FeatureIamPolicyArray) ToFeatureIamPolicyArrayOutput added in v6.60.0

func (i FeatureIamPolicyArray) ToFeatureIamPolicyArrayOutput() FeatureIamPolicyArrayOutput

func (FeatureIamPolicyArray) ToFeatureIamPolicyArrayOutputWithContext added in v6.60.0

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

type FeatureIamPolicyArrayInput added in v6.60.0

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 added in v6.60.0

type FeatureIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (FeatureIamPolicyArrayOutput) ElementType added in v6.60.0

func (FeatureIamPolicyArrayOutput) Index added in v6.60.0

func (FeatureIamPolicyArrayOutput) ToFeatureIamPolicyArrayOutput added in v6.60.0

func (o FeatureIamPolicyArrayOutput) ToFeatureIamPolicyArrayOutput() FeatureIamPolicyArrayOutput

func (FeatureIamPolicyArrayOutput) ToFeatureIamPolicyArrayOutputWithContext added in v6.60.0

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

type FeatureIamPolicyInput added in v6.60.0

type FeatureIamPolicyInput interface {
	pulumi.Input

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

type FeatureIamPolicyMap added in v6.60.0

type FeatureIamPolicyMap map[string]FeatureIamPolicyInput

func (FeatureIamPolicyMap) ElementType added in v6.60.0

func (FeatureIamPolicyMap) ElementType() reflect.Type

func (FeatureIamPolicyMap) ToFeatureIamPolicyMapOutput added in v6.60.0

func (i FeatureIamPolicyMap) ToFeatureIamPolicyMapOutput() FeatureIamPolicyMapOutput

func (FeatureIamPolicyMap) ToFeatureIamPolicyMapOutputWithContext added in v6.60.0

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

type FeatureIamPolicyMapInput added in v6.60.0

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 added in v6.60.0

type FeatureIamPolicyMapOutput struct{ *pulumi.OutputState }

func (FeatureIamPolicyMapOutput) ElementType added in v6.60.0

func (FeatureIamPolicyMapOutput) ElementType() reflect.Type

func (FeatureIamPolicyMapOutput) MapIndex added in v6.60.0

func (FeatureIamPolicyMapOutput) ToFeatureIamPolicyMapOutput added in v6.60.0

func (o FeatureIamPolicyMapOutput) ToFeatureIamPolicyMapOutput() FeatureIamPolicyMapOutput

func (FeatureIamPolicyMapOutput) ToFeatureIamPolicyMapOutputWithContext added in v6.60.0

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

type FeatureIamPolicyOutput added in v6.60.0

type FeatureIamPolicyOutput struct{ *pulumi.OutputState }

func (FeatureIamPolicyOutput) ElementType added in v6.60.0

func (FeatureIamPolicyOutput) ElementType() reflect.Type

func (FeatureIamPolicyOutput) Etag added in v6.60.0

(Computed) The etag of the IAM policy.

func (FeatureIamPolicyOutput) Location added in v6.60.0

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

func (FeatureIamPolicyOutput) Name added in v6.60.0

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

func (FeatureIamPolicyOutput) PolicyData added in v6.60.0

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

func (FeatureIamPolicyOutput) Project added in v6.60.0

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

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

func (FeatureIamPolicyOutput) ToFeatureIamPolicyOutput added in v6.60.0

func (o FeatureIamPolicyOutput) ToFeatureIamPolicyOutput() FeatureIamPolicyOutput

func (FeatureIamPolicyOutput) ToFeatureIamPolicyOutputWithContext added in v6.60.0

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

type FeatureIamPolicyState added in v6.60.0

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 added in v6.60.0

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

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

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/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/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/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/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

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

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

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

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

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

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

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

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

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

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

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 added in v6.47.0

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 added in v6.47.0

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 added in v6.47.0

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciOutput added in v6.47.0

func (i FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciOutput() FeatureMembershipConfigmanagementConfigSyncOciOutput

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciOutputWithContext added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput added in v6.47.0

func (i FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput() FeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOciArgs) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext added in v6.47.0

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

type FeatureMembershipConfigmanagementConfigSyncOciInput added in v6.47.0

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 added in v6.47.0

type FeatureMembershipConfigmanagementConfigSyncOciOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ElementType added in v6.47.0

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) GcpServiceAccountEmail added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) PolicyDir added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) SecretType added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) SyncRepo added in v6.47.0

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 added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciOutput added in v6.47.0

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciOutputWithContext added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput added in v6.47.0

func (o FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput() FeatureMembershipConfigmanagementConfigSyncOciPtrOutput

func (FeatureMembershipConfigmanagementConfigSyncOciOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext added in v6.47.0

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

type FeatureMembershipConfigmanagementConfigSyncOciPtrInput added in v6.47.0

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 added in v6.47.0

type FeatureMembershipConfigmanagementConfigSyncOciPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) Elem added in v6.47.0

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) ElementType added in v6.47.0

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) GcpServiceAccountEmail added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) PolicyDir added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) SecretType added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) SyncRepo added in v6.47.0

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 added in v6.47.0

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

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutput added in v6.47.0

func (FeatureMembershipConfigmanagementConfigSyncOciPtrOutput) ToFeatureMembershipConfigmanagementConfigSyncOciPtrOutputWithContext added in v6.47.0

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

type FeatureMembershipConfigmanagementConfigSyncOutput

type FeatureMembershipConfigmanagementConfigSyncOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementConfigSyncOutput) ElementType

func (FeatureMembershipConfigmanagementConfigSyncOutput) Git

(Optional) Structure is documented below.

func (FeatureMembershipConfigmanagementConfigSyncOutput) Oci added in v6.47.0

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

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

func (FeatureMembershipConfigmanagementConfigSyncOutput) PreventDrift added in v6.28.0

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

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 added in v6.47.0

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

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

func (FeatureMembershipConfigmanagementConfigSyncPtrOutput) PreventDrift added in v6.28.0

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

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

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

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

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) 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

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 added in v6.34.0

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

type FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs added in v6.34.0

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

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ElementType added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutput added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutputWithContext added in v6.34.0

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

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringArgs) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext added in v6.34.0

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

type FeatureMembershipConfigmanagementPolicyControllerMonitoringInput added in v6.34.0

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 added in v6.34.0

type FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) Backends added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ElementType added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutput added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringOutputWithContext added in v6.34.0

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

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext added in v6.34.0

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

type FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrInput added in v6.34.0

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 added in v6.34.0

type FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) Backends added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) Elem added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) ElementType added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput added in v6.34.0

func (FeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutput) ToFeatureMembershipConfigmanagementPolicyControllerMonitoringPtrOutputWithContext added in v6.34.0

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

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 added in v6.34.0

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 added in v6.34.0

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

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 added in v6.34.0

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 added in v6.34.0

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

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) 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

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

type FeatureMembershipMesh added in v6.44.0

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 added in v6.44.0

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 added in v6.44.0

func (FeatureMembershipMeshArgs) ElementType() reflect.Type

func (FeatureMembershipMeshArgs) ToFeatureMembershipMeshOutput added in v6.44.0

func (i FeatureMembershipMeshArgs) ToFeatureMembershipMeshOutput() FeatureMembershipMeshOutput

func (FeatureMembershipMeshArgs) ToFeatureMembershipMeshOutputWithContext added in v6.44.0

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

func (FeatureMembershipMeshArgs) ToFeatureMembershipMeshPtrOutput added in v6.44.0

func (i FeatureMembershipMeshArgs) ToFeatureMembershipMeshPtrOutput() FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshArgs) ToFeatureMembershipMeshPtrOutputWithContext added in v6.44.0

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

type FeatureMembershipMeshInput added in v6.44.0

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 added in v6.44.0

type FeatureMembershipMeshOutput struct{ *pulumi.OutputState }

func (FeatureMembershipMeshOutput) ControlPlane deprecated added in v6.45.0

Deprecated: Deprecated in favor of the `management` field

func (FeatureMembershipMeshOutput) ElementType added in v6.44.0

func (FeatureMembershipMeshOutput) Management added in v6.44.0

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

func (FeatureMembershipMeshOutput) ToFeatureMembershipMeshOutput added in v6.44.0

func (o FeatureMembershipMeshOutput) ToFeatureMembershipMeshOutput() FeatureMembershipMeshOutput

func (FeatureMembershipMeshOutput) ToFeatureMembershipMeshOutputWithContext added in v6.44.0

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

func (FeatureMembershipMeshOutput) ToFeatureMembershipMeshPtrOutput added in v6.44.0

func (o FeatureMembershipMeshOutput) ToFeatureMembershipMeshPtrOutput() FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshOutput) ToFeatureMembershipMeshPtrOutputWithContext added in v6.44.0

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

type FeatureMembershipMeshPtrInput added in v6.44.0

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

func FeatureMembershipMeshPtr added in v6.44.0

func FeatureMembershipMeshPtr(v *FeatureMembershipMeshArgs) FeatureMembershipMeshPtrInput

type FeatureMembershipMeshPtrOutput added in v6.44.0

type FeatureMembershipMeshPtrOutput struct{ *pulumi.OutputState }

func (FeatureMembershipMeshPtrOutput) ControlPlane deprecated added in v6.45.0

Deprecated: Deprecated in favor of the `management` field

func (FeatureMembershipMeshPtrOutput) Elem added in v6.44.0

func (FeatureMembershipMeshPtrOutput) ElementType added in v6.44.0

func (FeatureMembershipMeshPtrOutput) Management added in v6.44.0

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

func (FeatureMembershipMeshPtrOutput) ToFeatureMembershipMeshPtrOutput added in v6.44.0

func (o FeatureMembershipMeshPtrOutput) ToFeatureMembershipMeshPtrOutput() FeatureMembershipMeshPtrOutput

func (FeatureMembershipMeshPtrOutput) ToFeatureMembershipMeshPtrOutputWithContext added in v6.44.0

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

type FeatureMembershipOutput

type FeatureMembershipOutput struct{ *pulumi.OutputState }

func (FeatureMembershipOutput) Configmanagement added in v6.23.0

Config Management-specific spec. Structure is documented below.

func (FeatureMembershipOutput) ElementType

func (FeatureMembershipOutput) ElementType() reflect.Type

func (FeatureMembershipOutput) Feature added in v6.23.0

The name of the feature

func (FeatureMembershipOutput) Location added in v6.23.0

The location of the feature

func (FeatureMembershipOutput) Membership added in v6.23.0

The name of the membership

func (FeatureMembershipOutput) Mesh added in v6.44.0

Service mesh specific spec. Structure is documented below.

func (FeatureMembershipOutput) Project added in v6.23.0

The project of the feature

func (FeatureMembershipOutput) ToFeatureMembershipOutput

func (o FeatureMembershipOutput) ToFeatureMembershipOutput() FeatureMembershipOutput

func (FeatureMembershipOutput) ToFeatureMembershipOutputWithContext

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

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 added in v6.23.0

func (o FeatureOutput) CreateTime() pulumi.StringOutput

Output only. When the Feature resource was created.

func (FeatureOutput) DeleteTime added in v6.23.0

func (o FeatureOutput) DeleteTime() pulumi.StringOutput

Output only. When the Feature resource was deleted.

func (FeatureOutput) ElementType

func (FeatureOutput) ElementType() reflect.Type

func (FeatureOutput) Labels added in v6.23.0

GCP labels for this Feature.

func (FeatureOutput) Location added in v6.23.0

func (o FeatureOutput) Location() pulumi.StringOutput

The location for the resource

***

func (FeatureOutput) Name added in v6.23.0

The full, unique name of this Feature resource

func (FeatureOutput) Project added in v6.23.0

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) ResourceStates added in v6.23.0

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

func (FeatureOutput) Spec added in v6.23.0

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 added in v6.23.0

(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) UpdateTime added in v6.23.0

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

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

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

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

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

type FeatureSpecFleetobservability added in v6.59.0

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 added in v6.59.0

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 added in v6.59.0

func (FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityOutput added in v6.59.0

func (i FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityOutput() FeatureSpecFleetobservabilityOutput

func (FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityOutputWithContext added in v6.59.0

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

func (FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityPtrOutput added in v6.59.0

func (i FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityPtrOutput() FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityArgs) ToFeatureSpecFleetobservabilityPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityInput added in v6.59.0

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 added in v6.59.0

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 added in v6.59.0

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 added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigOutput added in v6.59.0

func (i FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigOutput() FeatureSpecFleetobservabilityLoggingConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigOutputWithContext added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput added in v6.59.0

func (i FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfig added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs added in v6.59.0

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 added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutputWithContext added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigInput added in v6.59.0

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 added in v6.59.0

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ElementType added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) Mode added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutputWithContext added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrInput added in v6.59.0

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 added in v6.59.0

type FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) Elem added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) ElementType added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) Mode added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigDefaultConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfig added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs added in v6.59.0

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 added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutputWithContext added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigArgs) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigInput added in v6.59.0

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 added in v6.59.0

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ElementType added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) Mode added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutputWithContext added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrInput added in v6.59.0

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 added in v6.59.0

type FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) Elem added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) ElementType added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) Mode added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigFleetScopeLogsConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigInput added in v6.59.0

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 added in v6.59.0

type FeatureSpecFleetobservabilityLoggingConfigOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigOutput) DefaultConfig added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ElementType added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigOutput) FleetScopeLogsConfig added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigOutput added in v6.59.0

func (o FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigOutput() FeatureSpecFleetobservabilityLoggingConfigOutput

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigOutputWithContext added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput added in v6.59.0

func (o FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityLoggingConfigPtrInput added in v6.59.0

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 added in v6.59.0

type FeatureSpecFleetobservabilityLoggingConfigPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) DefaultConfig added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) Elem added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ElementType added in v6.59.0

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) FleetScopeLogsConfig added in v6.59.0

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

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput added in v6.59.0

func (o FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutput() FeatureSpecFleetobservabilityLoggingConfigPtrOutput

func (FeatureSpecFleetobservabilityLoggingConfigPtrOutput) ToFeatureSpecFleetobservabilityLoggingConfigPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityOutput added in v6.59.0

type FeatureSpecFleetobservabilityOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityOutput) ElementType added in v6.59.0

func (FeatureSpecFleetobservabilityOutput) LoggingConfig added in v6.59.0

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 added in v6.59.0

func (o FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityOutput() FeatureSpecFleetobservabilityOutput

func (FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityOutputWithContext added in v6.59.0

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

func (FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityPtrOutput added in v6.59.0

func (o FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityPtrOutput() FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityOutput) ToFeatureSpecFleetobservabilityPtrOutputWithContext added in v6.59.0

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

type FeatureSpecFleetobservabilityPtrInput added in v6.59.0

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 added in v6.59.0

type FeatureSpecFleetobservabilityPtrOutput struct{ *pulumi.OutputState }

func (FeatureSpecFleetobservabilityPtrOutput) Elem added in v6.59.0

func (FeatureSpecFleetobservabilityPtrOutput) ElementType added in v6.59.0

func (FeatureSpecFleetobservabilityPtrOutput) LoggingConfig added in v6.59.0

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 added in v6.59.0

func (o FeatureSpecFleetobservabilityPtrOutput) ToFeatureSpecFleetobservabilityPtrOutput() FeatureSpecFleetobservabilityPtrOutput

func (FeatureSpecFleetobservabilityPtrOutput) ToFeatureSpecFleetobservabilityPtrOutputWithContext added in v6.59.0

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

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

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

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

type FeatureSpecOutput

type FeatureSpecOutput struct{ *pulumi.OutputState }

func (FeatureSpecOutput) ElementType

func (FeatureSpecOutput) ElementType() reflect.Type

func (FeatureSpecOutput) Fleetobservability added in v6.59.0

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

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 added in v6.59.0

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

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
	// GCP labels for this Feature.
	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
	// 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

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

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

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) 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

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

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

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

type LookupFeatureIamPolicyArgs added in v6.60.0

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 added in v6.60.0

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 added in v6.60.0

type LookupFeatureIamPolicyResult added in v6.60.0

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 added in v6.60.0

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/v6/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 added in v6.60.0

type LookupFeatureIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getFeatureIamPolicy.

func LookupFeatureIamPolicyOutput added in v6.60.0

func (LookupFeatureIamPolicyResultOutput) ElementType added in v6.60.0

func (LookupFeatureIamPolicyResultOutput) Etag added in v6.60.0

(Computed) The etag of the IAM policy.

func (LookupFeatureIamPolicyResultOutput) Id added in v6.60.0

The provider-assigned unique ID for this managed resource.

func (LookupFeatureIamPolicyResultOutput) Location added in v6.60.0

func (LookupFeatureIamPolicyResultOutput) Name added in v6.60.0

func (LookupFeatureIamPolicyResultOutput) PolicyData added in v6.60.0

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

func (LookupFeatureIamPolicyResultOutput) Project added in v6.60.0

func (LookupFeatureIamPolicyResultOutput) ToLookupFeatureIamPolicyResultOutput added in v6.60.0

func (o LookupFeatureIamPolicyResultOutput) ToLookupFeatureIamPolicyResultOutput() LookupFeatureIamPolicyResultOutput

func (LookupFeatureIamPolicyResultOutput) ToLookupFeatureIamPolicyResultOutputWithContext added in v6.60.0

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

type LookupMembershipIamPolicyArgs added in v6.59.0

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 added in v6.59.0

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 added in v6.59.0

type LookupMembershipIamPolicyResult added in v6.59.0

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 added in v6.59.0

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/v6/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 added in v6.59.0

type LookupMembershipIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getMembershipIamPolicy.

func (LookupMembershipIamPolicyResultOutput) ElementType added in v6.59.0

func (LookupMembershipIamPolicyResultOutput) Etag added in v6.59.0

(Computed) The etag of the IAM policy.

func (LookupMembershipIamPolicyResultOutput) Id added in v6.59.0

The provider-assigned unique ID for this managed resource.

func (LookupMembershipIamPolicyResultOutput) MembershipId added in v6.59.0

func (LookupMembershipIamPolicyResultOutput) PolicyData added in v6.59.0

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

func (LookupMembershipIamPolicyResultOutput) Project added in v6.59.0

func (LookupMembershipIamPolicyResultOutput) ToLookupMembershipIamPolicyResultOutput added in v6.59.0

func (o LookupMembershipIamPolicyResultOutput) ToLookupMembershipIamPolicyResultOutput() LookupMembershipIamPolicyResultOutput

func (LookupMembershipIamPolicyResultOutput) ToLookupMembershipIamPolicyResultOutputWithContext added in v6.59.0

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

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"`
	// The name of this entity type to be displayed on the console. This field is unavailable in v1 of the API.
	//
	// Deprecated: This field is unavailable in the GA provider and will be removed from the beta provider in a future release.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// 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.
	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"`
}

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/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/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{
			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),
				},
			},
			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/v6/go/gcp/container"
"github.com/pulumi/pulumi-gcp/sdk/v6/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"),
			},
		})
		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

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
	// The name of this entity type to be displayed on the console. This field is unavailable in v1 of the API.
	//
	// Deprecated: This field is unavailable in the GA provider and will be removed from the beta provider in a future 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.
	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

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

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

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

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

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

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

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

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

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

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

type MembershipIamBinding added in v6.34.0

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/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = 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/v6/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/v6/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 added in v6.34.0

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 added in v6.34.0

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 added in v6.34.0

func (*MembershipIamBinding) ElementType() reflect.Type

func (*MembershipIamBinding) ToMembershipIamBindingOutput added in v6.34.0

func (i *MembershipIamBinding) ToMembershipIamBindingOutput() MembershipIamBindingOutput

func (*MembershipIamBinding) ToMembershipIamBindingOutputWithContext added in v6.34.0

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

type MembershipIamBindingArgs added in v6.34.0

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 added in v6.34.0

func (MembershipIamBindingArgs) ElementType() reflect.Type

type MembershipIamBindingArray added in v6.34.0

type MembershipIamBindingArray []MembershipIamBindingInput

func (MembershipIamBindingArray) ElementType added in v6.34.0

func (MembershipIamBindingArray) ElementType() reflect.Type

func (MembershipIamBindingArray) ToMembershipIamBindingArrayOutput added in v6.34.0

func (i MembershipIamBindingArray) ToMembershipIamBindingArrayOutput() MembershipIamBindingArrayOutput

func (MembershipIamBindingArray) ToMembershipIamBindingArrayOutputWithContext added in v6.34.0

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

type MembershipIamBindingArrayInput added in v6.34.0

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 added in v6.34.0

type MembershipIamBindingArrayOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingArrayOutput) ElementType added in v6.34.0

func (MembershipIamBindingArrayOutput) Index added in v6.34.0

func (MembershipIamBindingArrayOutput) ToMembershipIamBindingArrayOutput added in v6.34.0

func (o MembershipIamBindingArrayOutput) ToMembershipIamBindingArrayOutput() MembershipIamBindingArrayOutput

func (MembershipIamBindingArrayOutput) ToMembershipIamBindingArrayOutputWithContext added in v6.34.0

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

type MembershipIamBindingCondition added in v6.34.0

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

type MembershipIamBindingConditionArgs added in v6.34.0

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

func (MembershipIamBindingConditionArgs) ElementType added in v6.34.0

func (MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionOutput added in v6.34.0

func (i MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionOutput() MembershipIamBindingConditionOutput

func (MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionOutputWithContext added in v6.34.0

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

func (MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionPtrOutput added in v6.34.0

func (i MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionPtrOutput() MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionArgs) ToMembershipIamBindingConditionPtrOutputWithContext added in v6.34.0

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

type MembershipIamBindingConditionInput added in v6.34.0

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 added in v6.34.0

type MembershipIamBindingConditionOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingConditionOutput) Description added in v6.34.0

func (MembershipIamBindingConditionOutput) ElementType added in v6.34.0

func (MembershipIamBindingConditionOutput) Expression added in v6.34.0

func (MembershipIamBindingConditionOutput) Title added in v6.34.0

func (MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionOutput added in v6.34.0

func (o MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionOutput() MembershipIamBindingConditionOutput

func (MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionOutputWithContext added in v6.34.0

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

func (MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionPtrOutput added in v6.34.0

func (o MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionPtrOutput() MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionOutput) ToMembershipIamBindingConditionPtrOutputWithContext added in v6.34.0

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

type MembershipIamBindingConditionPtrInput added in v6.34.0

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 added in v6.34.0

type MembershipIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingConditionPtrOutput) Description added in v6.34.0

func (MembershipIamBindingConditionPtrOutput) Elem added in v6.34.0

func (MembershipIamBindingConditionPtrOutput) ElementType added in v6.34.0

func (MembershipIamBindingConditionPtrOutput) Expression added in v6.34.0

func (MembershipIamBindingConditionPtrOutput) Title added in v6.34.0

func (MembershipIamBindingConditionPtrOutput) ToMembershipIamBindingConditionPtrOutput added in v6.34.0

func (o MembershipIamBindingConditionPtrOutput) ToMembershipIamBindingConditionPtrOutput() MembershipIamBindingConditionPtrOutput

func (MembershipIamBindingConditionPtrOutput) ToMembershipIamBindingConditionPtrOutputWithContext added in v6.34.0

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

type MembershipIamBindingInput added in v6.34.0

type MembershipIamBindingInput interface {
	pulumi.Input

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

type MembershipIamBindingMap added in v6.34.0

type MembershipIamBindingMap map[string]MembershipIamBindingInput

func (MembershipIamBindingMap) ElementType added in v6.34.0

func (MembershipIamBindingMap) ElementType() reflect.Type

func (MembershipIamBindingMap) ToMembershipIamBindingMapOutput added in v6.34.0

func (i MembershipIamBindingMap) ToMembershipIamBindingMapOutput() MembershipIamBindingMapOutput

func (MembershipIamBindingMap) ToMembershipIamBindingMapOutputWithContext added in v6.34.0

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

type MembershipIamBindingMapInput added in v6.34.0

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 added in v6.34.0

type MembershipIamBindingMapOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingMapOutput) ElementType added in v6.34.0

func (MembershipIamBindingMapOutput) MapIndex added in v6.34.0

func (MembershipIamBindingMapOutput) ToMembershipIamBindingMapOutput added in v6.34.0

func (o MembershipIamBindingMapOutput) ToMembershipIamBindingMapOutput() MembershipIamBindingMapOutput

func (MembershipIamBindingMapOutput) ToMembershipIamBindingMapOutputWithContext added in v6.34.0

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

type MembershipIamBindingOutput added in v6.34.0

type MembershipIamBindingOutput struct{ *pulumi.OutputState }

func (MembershipIamBindingOutput) Condition added in v6.34.0

func (MembershipIamBindingOutput) ElementType added in v6.34.0

func (MembershipIamBindingOutput) ElementType() reflect.Type

func (MembershipIamBindingOutput) Etag added in v6.34.0

(Computed) The etag of the IAM policy.

func (MembershipIamBindingOutput) Members added in v6.34.0

func (MembershipIamBindingOutput) MembershipId added in v6.34.0

func (MembershipIamBindingOutput) Project added in v6.34.0

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

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

func (MembershipIamBindingOutput) Role added in v6.34.0

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 added in v6.34.0

func (o MembershipIamBindingOutput) ToMembershipIamBindingOutput() MembershipIamBindingOutput

func (MembershipIamBindingOutput) ToMembershipIamBindingOutputWithContext added in v6.34.0

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

type MembershipIamBindingState added in v6.34.0

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 added in v6.34.0

func (MembershipIamBindingState) ElementType() reflect.Type

type MembershipIamMember added in v6.34.0

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/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = 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/v6/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/v6/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 added in v6.34.0

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 added in v6.34.0

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 added in v6.34.0

func (*MembershipIamMember) ElementType() reflect.Type

func (*MembershipIamMember) ToMembershipIamMemberOutput added in v6.34.0

func (i *MembershipIamMember) ToMembershipIamMemberOutput() MembershipIamMemberOutput

func (*MembershipIamMember) ToMembershipIamMemberOutputWithContext added in v6.34.0

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

type MembershipIamMemberArgs added in v6.34.0

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 added in v6.34.0

func (MembershipIamMemberArgs) ElementType() reflect.Type

type MembershipIamMemberArray added in v6.34.0

type MembershipIamMemberArray []MembershipIamMemberInput

func (MembershipIamMemberArray) ElementType added in v6.34.0

func (MembershipIamMemberArray) ElementType() reflect.Type

func (MembershipIamMemberArray) ToMembershipIamMemberArrayOutput added in v6.34.0

func (i MembershipIamMemberArray) ToMembershipIamMemberArrayOutput() MembershipIamMemberArrayOutput

func (MembershipIamMemberArray) ToMembershipIamMemberArrayOutputWithContext added in v6.34.0

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

type MembershipIamMemberArrayInput added in v6.34.0

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 added in v6.34.0

type MembershipIamMemberArrayOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberArrayOutput) ElementType added in v6.34.0

func (MembershipIamMemberArrayOutput) Index added in v6.34.0

func (MembershipIamMemberArrayOutput) ToMembershipIamMemberArrayOutput added in v6.34.0

func (o MembershipIamMemberArrayOutput) ToMembershipIamMemberArrayOutput() MembershipIamMemberArrayOutput

func (MembershipIamMemberArrayOutput) ToMembershipIamMemberArrayOutputWithContext added in v6.34.0

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

type MembershipIamMemberCondition added in v6.34.0

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

type MembershipIamMemberConditionArgs added in v6.34.0

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

func (MembershipIamMemberConditionArgs) ElementType added in v6.34.0

func (MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionOutput added in v6.34.0

func (i MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionOutput() MembershipIamMemberConditionOutput

func (MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionOutputWithContext added in v6.34.0

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

func (MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionPtrOutput added in v6.34.0

func (i MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionPtrOutput() MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionArgs) ToMembershipIamMemberConditionPtrOutputWithContext added in v6.34.0

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

type MembershipIamMemberConditionInput added in v6.34.0

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 added in v6.34.0

type MembershipIamMemberConditionOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberConditionOutput) Description added in v6.34.0

func (MembershipIamMemberConditionOutput) ElementType added in v6.34.0

func (MembershipIamMemberConditionOutput) Expression added in v6.34.0

func (MembershipIamMemberConditionOutput) Title added in v6.34.0

func (MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionOutput added in v6.34.0

func (o MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionOutput() MembershipIamMemberConditionOutput

func (MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionOutputWithContext added in v6.34.0

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

func (MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionPtrOutput added in v6.34.0

func (o MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionPtrOutput() MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionOutput) ToMembershipIamMemberConditionPtrOutputWithContext added in v6.34.0

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

type MembershipIamMemberConditionPtrInput added in v6.34.0

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

func MembershipIamMemberConditionPtr added in v6.34.0

type MembershipIamMemberConditionPtrOutput added in v6.34.0

type MembershipIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberConditionPtrOutput) Description added in v6.34.0

func (MembershipIamMemberConditionPtrOutput) Elem added in v6.34.0

func (MembershipIamMemberConditionPtrOutput) ElementType added in v6.34.0

func (MembershipIamMemberConditionPtrOutput) Expression added in v6.34.0

func (MembershipIamMemberConditionPtrOutput) Title added in v6.34.0

func (MembershipIamMemberConditionPtrOutput) ToMembershipIamMemberConditionPtrOutput added in v6.34.0

func (o MembershipIamMemberConditionPtrOutput) ToMembershipIamMemberConditionPtrOutput() MembershipIamMemberConditionPtrOutput

func (MembershipIamMemberConditionPtrOutput) ToMembershipIamMemberConditionPtrOutputWithContext added in v6.34.0

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

type MembershipIamMemberInput added in v6.34.0

type MembershipIamMemberInput interface {
	pulumi.Input

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

type MembershipIamMemberMap added in v6.34.0

type MembershipIamMemberMap map[string]MembershipIamMemberInput

func (MembershipIamMemberMap) ElementType added in v6.34.0

func (MembershipIamMemberMap) ElementType() reflect.Type

func (MembershipIamMemberMap) ToMembershipIamMemberMapOutput added in v6.34.0

func (i MembershipIamMemberMap) ToMembershipIamMemberMapOutput() MembershipIamMemberMapOutput

func (MembershipIamMemberMap) ToMembershipIamMemberMapOutputWithContext added in v6.34.0

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

type MembershipIamMemberMapInput added in v6.34.0

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 added in v6.34.0

type MembershipIamMemberMapOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberMapOutput) ElementType added in v6.34.0

func (MembershipIamMemberMapOutput) MapIndex added in v6.34.0

func (MembershipIamMemberMapOutput) ToMembershipIamMemberMapOutput added in v6.34.0

func (o MembershipIamMemberMapOutput) ToMembershipIamMemberMapOutput() MembershipIamMemberMapOutput

func (MembershipIamMemberMapOutput) ToMembershipIamMemberMapOutputWithContext added in v6.34.0

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

type MembershipIamMemberOutput added in v6.34.0

type MembershipIamMemberOutput struct{ *pulumi.OutputState }

func (MembershipIamMemberOutput) Condition added in v6.34.0

func (MembershipIamMemberOutput) ElementType added in v6.34.0

func (MembershipIamMemberOutput) ElementType() reflect.Type

func (MembershipIamMemberOutput) Etag added in v6.34.0

(Computed) The etag of the IAM policy.

func (MembershipIamMemberOutput) Member added in v6.34.0

func (MembershipIamMemberOutput) MembershipId added in v6.34.0

func (MembershipIamMemberOutput) Project added in v6.34.0

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

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

func (MembershipIamMemberOutput) Role added in v6.34.0

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 added in v6.34.0

func (o MembershipIamMemberOutput) ToMembershipIamMemberOutput() MembershipIamMemberOutput

func (MembershipIamMemberOutput) ToMembershipIamMemberOutputWithContext added in v6.34.0

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

type MembershipIamMemberState added in v6.34.0

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 added in v6.34.0

func (MembershipIamMemberState) ElementType() reflect.Type

type MembershipIamPolicy added in v6.34.0

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/v6/go/gcp/gkehub"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = 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/v6/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/v6/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 added in v6.34.0

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 added in v6.34.0

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 added in v6.34.0

func (*MembershipIamPolicy) ElementType() reflect.Type

func (*MembershipIamPolicy) ToMembershipIamPolicyOutput added in v6.34.0

func (i *MembershipIamPolicy) ToMembershipIamPolicyOutput() MembershipIamPolicyOutput

func (*MembershipIamPolicy) ToMembershipIamPolicyOutputWithContext added in v6.34.0

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

type MembershipIamPolicyArgs added in v6.34.0

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 added in v6.34.0

func (MembershipIamPolicyArgs) ElementType() reflect.Type

type MembershipIamPolicyArray added in v6.34.0

type MembershipIamPolicyArray []MembershipIamPolicyInput

func (MembershipIamPolicyArray) ElementType added in v6.34.0

func (MembershipIamPolicyArray) ElementType() reflect.Type

func (MembershipIamPolicyArray) ToMembershipIamPolicyArrayOutput added in v6.34.0

func (i MembershipIamPolicyArray) ToMembershipIamPolicyArrayOutput() MembershipIamPolicyArrayOutput

func (MembershipIamPolicyArray) ToMembershipIamPolicyArrayOutputWithContext added in v6.34.0

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

type MembershipIamPolicyArrayInput added in v6.34.0

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 added in v6.34.0

type MembershipIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (MembershipIamPolicyArrayOutput) ElementType added in v6.34.0

func (MembershipIamPolicyArrayOutput) Index added in v6.34.0

func (MembershipIamPolicyArrayOutput) ToMembershipIamPolicyArrayOutput added in v6.34.0

func (o MembershipIamPolicyArrayOutput) ToMembershipIamPolicyArrayOutput() MembershipIamPolicyArrayOutput

func (MembershipIamPolicyArrayOutput) ToMembershipIamPolicyArrayOutputWithContext added in v6.34.0

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

type MembershipIamPolicyInput added in v6.34.0

type MembershipIamPolicyInput interface {
	pulumi.Input

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

type MembershipIamPolicyMap added in v6.34.0

type MembershipIamPolicyMap map[string]MembershipIamPolicyInput

func (MembershipIamPolicyMap) ElementType added in v6.34.0

func (MembershipIamPolicyMap) ElementType() reflect.Type

func (MembershipIamPolicyMap) ToMembershipIamPolicyMapOutput added in v6.34.0

func (i MembershipIamPolicyMap) ToMembershipIamPolicyMapOutput() MembershipIamPolicyMapOutput

func (MembershipIamPolicyMap) ToMembershipIamPolicyMapOutputWithContext added in v6.34.0

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

type MembershipIamPolicyMapInput added in v6.34.0

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 added in v6.34.0

type MembershipIamPolicyMapOutput struct{ *pulumi.OutputState }

func (MembershipIamPolicyMapOutput) ElementType added in v6.34.0

func (MembershipIamPolicyMapOutput) MapIndex added in v6.34.0

func (MembershipIamPolicyMapOutput) ToMembershipIamPolicyMapOutput added in v6.34.0

func (o MembershipIamPolicyMapOutput) ToMembershipIamPolicyMapOutput() MembershipIamPolicyMapOutput

func (MembershipIamPolicyMapOutput) ToMembershipIamPolicyMapOutputWithContext added in v6.34.0

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

type MembershipIamPolicyOutput added in v6.34.0

type MembershipIamPolicyOutput struct{ *pulumi.OutputState }

func (MembershipIamPolicyOutput) ElementType added in v6.34.0

func (MembershipIamPolicyOutput) ElementType() reflect.Type

func (MembershipIamPolicyOutput) Etag added in v6.34.0

(Computed) The etag of the IAM policy.

func (MembershipIamPolicyOutput) MembershipId added in v6.34.0

func (MembershipIamPolicyOutput) PolicyData added in v6.34.0

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

func (MembershipIamPolicyOutput) Project added in v6.34.0

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

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

func (MembershipIamPolicyOutput) ToMembershipIamPolicyOutput added in v6.34.0

func (o MembershipIamPolicyOutput) ToMembershipIamPolicyOutput() MembershipIamPolicyOutput

func (MembershipIamPolicyOutput) ToMembershipIamPolicyOutputWithContext added in v6.34.0

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

type MembershipIamPolicyState added in v6.34.0

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 added in v6.34.0

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

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

type MembershipOutput

type MembershipOutput struct{ *pulumi.OutputState }

func (MembershipOutput) Authority added in v6.23.0

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 added in v6.23.0

func (o MembershipOutput) Description() pulumi.StringPtrOutput

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

Deprecated: This field is unavailable in the GA provider and will be removed from the beta provider in a future release.

func (MembershipOutput) ElementType

func (MembershipOutput) ElementType() reflect.Type

func (MembershipOutput) Endpoint added in v6.23.0

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 added in v6.23.0

Labels to apply to this membership.

func (MembershipOutput) MembershipId added in v6.23.0

func (o MembershipOutput) MembershipId() pulumi.StringOutput

The client-provided identifier of the membership.

***

func (MembershipOutput) Name added in v6.23.0

The unique identifier of the membership.

func (MembershipOutput) Project added in v6.23.0

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) ToMembershipOutput

func (o MembershipOutput) ToMembershipOutput() MembershipOutput

func (MembershipOutput) ToMembershipOutputWithContext

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

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
	// The name of this entity type to be displayed on the console. This field is unavailable in v1 of the API.
	//
	// Deprecated: This field is unavailable in the GA provider and will be removed from the beta provider in a future 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.
	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
}

func (MembershipState) ElementType

func (MembershipState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL