endpoints

package
v6.67.1 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ConsumersIamBinding added in v6.19.0

type ConsumersIamBinding struct {
	pulumi.CustomResourceState

	Condition       ConsumersIamBindingConditionPtrOutput `pulumi:"condition"`
	ConsumerProject pulumi.StringOutput                   `pulumi:"consumerProject"`
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The role that should be applied. Only one
	// `endpoints.ConsumersIamBinding` 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"`
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

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

* `endpoints.ConsumersIamPolicy`: Authoritative. Sets the IAM policy for the serviceconsumers and replaces any existing policy already attached. * `endpoints.ConsumersIamBinding`: 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 serviceconsumers are preserved. * `endpoints.ConsumersIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the serviceconsumers are preserved.

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

* `endpoints.ConsumersIamPolicy`: Retrieves the IAM policy for the serviceconsumers

> **Note:** `endpoints.ConsumersIamPolicy` **cannot** be used in conjunction with `endpoints.ConsumersIamBinding` and `endpoints.ConsumersIamMember` or they will fight over what your policy should be.

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

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* services/{{service_name}}/consumers/{{consumer_project}} * {{service_name}}/{{consumer_project}} * {{consumer_project}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Endpoints serviceconsumers 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:endpoints/consumersIamBinding:ConsumersIamBinding editor "services/{{service_name}}/consumers/{{consumer_project}} roles/servicemanagement.serviceController user:jane@example.com"

```

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

```sh

$ pulumi import gcp:endpoints/consumersIamBinding:ConsumersIamBinding editor "services/{{service_name}}/consumers/{{consumer_project}} roles/servicemanagement.serviceController"

```

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

```sh

$ pulumi import gcp:endpoints/consumersIamBinding:ConsumersIamBinding editor services/{{service_name}}/consumers/{{consumer_project}}

```

-> **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 GetConsumersIamBinding added in v6.19.0

func GetConsumersIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumersIamBindingState, opts ...pulumi.ResourceOption) (*ConsumersIamBinding, error)

GetConsumersIamBinding gets an existing ConsumersIamBinding 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 NewConsumersIamBinding added in v6.19.0

func NewConsumersIamBinding(ctx *pulumi.Context,
	name string, args *ConsumersIamBindingArgs, opts ...pulumi.ResourceOption) (*ConsumersIamBinding, error)

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

func (*ConsumersIamBinding) ElementType added in v6.19.0

func (*ConsumersIamBinding) ElementType() reflect.Type

func (*ConsumersIamBinding) ToConsumersIamBindingOutput added in v6.19.0

func (i *ConsumersIamBinding) ToConsumersIamBindingOutput() ConsumersIamBindingOutput

func (*ConsumersIamBinding) ToConsumersIamBindingOutputWithContext added in v6.19.0

func (i *ConsumersIamBinding) ToConsumersIamBindingOutputWithContext(ctx context.Context) ConsumersIamBindingOutput

func (*ConsumersIamBinding) ToOutput added in v6.65.1

type ConsumersIamBindingArgs added in v6.19.0

type ConsumersIamBindingArgs struct {
	Condition       ConsumersIamBindingConditionPtrInput
	ConsumerProject pulumi.StringInput
	Members         pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `endpoints.ConsumersIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role        pulumi.StringInput
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a ConsumersIamBinding resource.

func (ConsumersIamBindingArgs) ElementType added in v6.19.0

func (ConsumersIamBindingArgs) ElementType() reflect.Type

type ConsumersIamBindingArray added in v6.19.0

type ConsumersIamBindingArray []ConsumersIamBindingInput

func (ConsumersIamBindingArray) ElementType added in v6.19.0

func (ConsumersIamBindingArray) ElementType() reflect.Type

func (ConsumersIamBindingArray) ToConsumersIamBindingArrayOutput added in v6.19.0

func (i ConsumersIamBindingArray) ToConsumersIamBindingArrayOutput() ConsumersIamBindingArrayOutput

func (ConsumersIamBindingArray) ToConsumersIamBindingArrayOutputWithContext added in v6.19.0

func (i ConsumersIamBindingArray) ToConsumersIamBindingArrayOutputWithContext(ctx context.Context) ConsumersIamBindingArrayOutput

func (ConsumersIamBindingArray) ToOutput added in v6.65.1

type ConsumersIamBindingArrayInput added in v6.19.0

type ConsumersIamBindingArrayInput interface {
	pulumi.Input

	ToConsumersIamBindingArrayOutput() ConsumersIamBindingArrayOutput
	ToConsumersIamBindingArrayOutputWithContext(context.Context) ConsumersIamBindingArrayOutput
}

ConsumersIamBindingArrayInput is an input type that accepts ConsumersIamBindingArray and ConsumersIamBindingArrayOutput values. You can construct a concrete instance of `ConsumersIamBindingArrayInput` via:

ConsumersIamBindingArray{ ConsumersIamBindingArgs{...} }

type ConsumersIamBindingArrayOutput added in v6.19.0

type ConsumersIamBindingArrayOutput struct{ *pulumi.OutputState }

func (ConsumersIamBindingArrayOutput) ElementType added in v6.19.0

func (ConsumersIamBindingArrayOutput) Index added in v6.19.0

func (ConsumersIamBindingArrayOutput) ToConsumersIamBindingArrayOutput added in v6.19.0

func (o ConsumersIamBindingArrayOutput) ToConsumersIamBindingArrayOutput() ConsumersIamBindingArrayOutput

func (ConsumersIamBindingArrayOutput) ToConsumersIamBindingArrayOutputWithContext added in v6.19.0

func (o ConsumersIamBindingArrayOutput) ToConsumersIamBindingArrayOutputWithContext(ctx context.Context) ConsumersIamBindingArrayOutput

func (ConsumersIamBindingArrayOutput) ToOutput added in v6.65.1

type ConsumersIamBindingCondition added in v6.19.0

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

type ConsumersIamBindingConditionArgs added in v6.19.0

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

func (ConsumersIamBindingConditionArgs) ElementType added in v6.19.0

func (ConsumersIamBindingConditionArgs) ToConsumersIamBindingConditionOutput added in v6.19.0

func (i ConsumersIamBindingConditionArgs) ToConsumersIamBindingConditionOutput() ConsumersIamBindingConditionOutput

func (ConsumersIamBindingConditionArgs) ToConsumersIamBindingConditionOutputWithContext added in v6.19.0

func (i ConsumersIamBindingConditionArgs) ToConsumersIamBindingConditionOutputWithContext(ctx context.Context) ConsumersIamBindingConditionOutput

func (ConsumersIamBindingConditionArgs) ToConsumersIamBindingConditionPtrOutput added in v6.19.0

func (i ConsumersIamBindingConditionArgs) ToConsumersIamBindingConditionPtrOutput() ConsumersIamBindingConditionPtrOutput

func (ConsumersIamBindingConditionArgs) ToConsumersIamBindingConditionPtrOutputWithContext added in v6.19.0

func (i ConsumersIamBindingConditionArgs) ToConsumersIamBindingConditionPtrOutputWithContext(ctx context.Context) ConsumersIamBindingConditionPtrOutput

func (ConsumersIamBindingConditionArgs) ToOutput added in v6.65.1

type ConsumersIamBindingConditionInput added in v6.19.0

type ConsumersIamBindingConditionInput interface {
	pulumi.Input

	ToConsumersIamBindingConditionOutput() ConsumersIamBindingConditionOutput
	ToConsumersIamBindingConditionOutputWithContext(context.Context) ConsumersIamBindingConditionOutput
}

ConsumersIamBindingConditionInput is an input type that accepts ConsumersIamBindingConditionArgs and ConsumersIamBindingConditionOutput values. You can construct a concrete instance of `ConsumersIamBindingConditionInput` via:

ConsumersIamBindingConditionArgs{...}

type ConsumersIamBindingConditionOutput added in v6.19.0

type ConsumersIamBindingConditionOutput struct{ *pulumi.OutputState }

func (ConsumersIamBindingConditionOutput) Description added in v6.19.0

func (ConsumersIamBindingConditionOutput) ElementType added in v6.19.0

func (ConsumersIamBindingConditionOutput) Expression added in v6.19.0

func (ConsumersIamBindingConditionOutput) Title added in v6.19.0

func (ConsumersIamBindingConditionOutput) ToConsumersIamBindingConditionOutput added in v6.19.0

func (o ConsumersIamBindingConditionOutput) ToConsumersIamBindingConditionOutput() ConsumersIamBindingConditionOutput

func (ConsumersIamBindingConditionOutput) ToConsumersIamBindingConditionOutputWithContext added in v6.19.0

func (o ConsumersIamBindingConditionOutput) ToConsumersIamBindingConditionOutputWithContext(ctx context.Context) ConsumersIamBindingConditionOutput

func (ConsumersIamBindingConditionOutput) ToConsumersIamBindingConditionPtrOutput added in v6.19.0

func (o ConsumersIamBindingConditionOutput) ToConsumersIamBindingConditionPtrOutput() ConsumersIamBindingConditionPtrOutput

func (ConsumersIamBindingConditionOutput) ToConsumersIamBindingConditionPtrOutputWithContext added in v6.19.0

func (o ConsumersIamBindingConditionOutput) ToConsumersIamBindingConditionPtrOutputWithContext(ctx context.Context) ConsumersIamBindingConditionPtrOutput

func (ConsumersIamBindingConditionOutput) ToOutput added in v6.65.1

type ConsumersIamBindingConditionPtrInput added in v6.19.0

type ConsumersIamBindingConditionPtrInput interface {
	pulumi.Input

	ToConsumersIamBindingConditionPtrOutput() ConsumersIamBindingConditionPtrOutput
	ToConsumersIamBindingConditionPtrOutputWithContext(context.Context) ConsumersIamBindingConditionPtrOutput
}

ConsumersIamBindingConditionPtrInput is an input type that accepts ConsumersIamBindingConditionArgs, ConsumersIamBindingConditionPtr and ConsumersIamBindingConditionPtrOutput values. You can construct a concrete instance of `ConsumersIamBindingConditionPtrInput` via:

        ConsumersIamBindingConditionArgs{...}

or:

        nil

func ConsumersIamBindingConditionPtr added in v6.19.0

type ConsumersIamBindingConditionPtrOutput added in v6.19.0

type ConsumersIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (ConsumersIamBindingConditionPtrOutput) Description added in v6.19.0

func (ConsumersIamBindingConditionPtrOutput) Elem added in v6.19.0

func (ConsumersIamBindingConditionPtrOutput) ElementType added in v6.19.0

func (ConsumersIamBindingConditionPtrOutput) Expression added in v6.19.0

func (ConsumersIamBindingConditionPtrOutput) Title added in v6.19.0

func (ConsumersIamBindingConditionPtrOutput) ToConsumersIamBindingConditionPtrOutput added in v6.19.0

func (o ConsumersIamBindingConditionPtrOutput) ToConsumersIamBindingConditionPtrOutput() ConsumersIamBindingConditionPtrOutput

func (ConsumersIamBindingConditionPtrOutput) ToConsumersIamBindingConditionPtrOutputWithContext added in v6.19.0

func (o ConsumersIamBindingConditionPtrOutput) ToConsumersIamBindingConditionPtrOutputWithContext(ctx context.Context) ConsumersIamBindingConditionPtrOutput

func (ConsumersIamBindingConditionPtrOutput) ToOutput added in v6.65.1

type ConsumersIamBindingInput added in v6.19.0

type ConsumersIamBindingInput interface {
	pulumi.Input

	ToConsumersIamBindingOutput() ConsumersIamBindingOutput
	ToConsumersIamBindingOutputWithContext(ctx context.Context) ConsumersIamBindingOutput
}

type ConsumersIamBindingMap added in v6.19.0

type ConsumersIamBindingMap map[string]ConsumersIamBindingInput

func (ConsumersIamBindingMap) ElementType added in v6.19.0

func (ConsumersIamBindingMap) ElementType() reflect.Type

func (ConsumersIamBindingMap) ToConsumersIamBindingMapOutput added in v6.19.0

func (i ConsumersIamBindingMap) ToConsumersIamBindingMapOutput() ConsumersIamBindingMapOutput

func (ConsumersIamBindingMap) ToConsumersIamBindingMapOutputWithContext added in v6.19.0

func (i ConsumersIamBindingMap) ToConsumersIamBindingMapOutputWithContext(ctx context.Context) ConsumersIamBindingMapOutput

func (ConsumersIamBindingMap) ToOutput added in v6.65.1

type ConsumersIamBindingMapInput added in v6.19.0

type ConsumersIamBindingMapInput interface {
	pulumi.Input

	ToConsumersIamBindingMapOutput() ConsumersIamBindingMapOutput
	ToConsumersIamBindingMapOutputWithContext(context.Context) ConsumersIamBindingMapOutput
}

ConsumersIamBindingMapInput is an input type that accepts ConsumersIamBindingMap and ConsumersIamBindingMapOutput values. You can construct a concrete instance of `ConsumersIamBindingMapInput` via:

ConsumersIamBindingMap{ "key": ConsumersIamBindingArgs{...} }

type ConsumersIamBindingMapOutput added in v6.19.0

type ConsumersIamBindingMapOutput struct{ *pulumi.OutputState }

func (ConsumersIamBindingMapOutput) ElementType added in v6.19.0

func (ConsumersIamBindingMapOutput) MapIndex added in v6.19.0

func (ConsumersIamBindingMapOutput) ToConsumersIamBindingMapOutput added in v6.19.0

func (o ConsumersIamBindingMapOutput) ToConsumersIamBindingMapOutput() ConsumersIamBindingMapOutput

func (ConsumersIamBindingMapOutput) ToConsumersIamBindingMapOutputWithContext added in v6.19.0

func (o ConsumersIamBindingMapOutput) ToConsumersIamBindingMapOutputWithContext(ctx context.Context) ConsumersIamBindingMapOutput

func (ConsumersIamBindingMapOutput) ToOutput added in v6.65.1

type ConsumersIamBindingOutput added in v6.19.0

type ConsumersIamBindingOutput struct{ *pulumi.OutputState }

func (ConsumersIamBindingOutput) Condition added in v6.23.0

func (ConsumersIamBindingOutput) ConsumerProject added in v6.23.0

func (o ConsumersIamBindingOutput) ConsumerProject() pulumi.StringOutput

func (ConsumersIamBindingOutput) ElementType added in v6.19.0

func (ConsumersIamBindingOutput) ElementType() reflect.Type

func (ConsumersIamBindingOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (ConsumersIamBindingOutput) Members added in v6.23.0

func (ConsumersIamBindingOutput) Role added in v6.23.0

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

func (ConsumersIamBindingOutput) ServiceName added in v6.23.0

func (ConsumersIamBindingOutput) ToConsumersIamBindingOutput added in v6.19.0

func (o ConsumersIamBindingOutput) ToConsumersIamBindingOutput() ConsumersIamBindingOutput

func (ConsumersIamBindingOutput) ToConsumersIamBindingOutputWithContext added in v6.19.0

func (o ConsumersIamBindingOutput) ToConsumersIamBindingOutputWithContext(ctx context.Context) ConsumersIamBindingOutput

func (ConsumersIamBindingOutput) ToOutput added in v6.65.1

type ConsumersIamBindingState added in v6.19.0

type ConsumersIamBindingState struct {
	Condition       ConsumersIamBindingConditionPtrInput
	ConsumerProject pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringPtrInput
	Members pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `endpoints.ConsumersIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role        pulumi.StringPtrInput
	ServiceName pulumi.StringPtrInput
}

func (ConsumersIamBindingState) ElementType added in v6.19.0

func (ConsumersIamBindingState) ElementType() reflect.Type

type ConsumersIamMember added in v6.19.0

type ConsumersIamMember struct {
	pulumi.CustomResourceState

	Condition       ConsumersIamMemberConditionPtrOutput `pulumi:"condition"`
	ConsumerProject pulumi.StringOutput                  `pulumi:"consumerProject"`
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	Member pulumi.StringOutput `pulumi:"member"`
	// The role that should be applied. Only one
	// `endpoints.ConsumersIamBinding` 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"`
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

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

* `endpoints.ConsumersIamPolicy`: Authoritative. Sets the IAM policy for the serviceconsumers and replaces any existing policy already attached. * `endpoints.ConsumersIamBinding`: 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 serviceconsumers are preserved. * `endpoints.ConsumersIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the serviceconsumers are preserved.

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

* `endpoints.ConsumersIamPolicy`: Retrieves the IAM policy for the serviceconsumers

> **Note:** `endpoints.ConsumersIamPolicy` **cannot** be used in conjunction with `endpoints.ConsumersIamBinding` and `endpoints.ConsumersIamMember` or they will fight over what your policy should be.

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

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* services/{{service_name}}/consumers/{{consumer_project}} * {{service_name}}/{{consumer_project}} * {{consumer_project}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Endpoints serviceconsumers 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:endpoints/consumersIamMember:ConsumersIamMember editor "services/{{service_name}}/consumers/{{consumer_project}} roles/servicemanagement.serviceController user:jane@example.com"

```

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

```sh

$ pulumi import gcp:endpoints/consumersIamMember:ConsumersIamMember editor "services/{{service_name}}/consumers/{{consumer_project}} roles/servicemanagement.serviceController"

```

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

```sh

$ pulumi import gcp:endpoints/consumersIamMember:ConsumersIamMember editor services/{{service_name}}/consumers/{{consumer_project}}

```

-> **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 GetConsumersIamMember added in v6.19.0

func GetConsumersIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumersIamMemberState, opts ...pulumi.ResourceOption) (*ConsumersIamMember, error)

GetConsumersIamMember gets an existing ConsumersIamMember 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 NewConsumersIamMember added in v6.19.0

func NewConsumersIamMember(ctx *pulumi.Context,
	name string, args *ConsumersIamMemberArgs, opts ...pulumi.ResourceOption) (*ConsumersIamMember, error)

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

func (*ConsumersIamMember) ElementType added in v6.19.0

func (*ConsumersIamMember) ElementType() reflect.Type

func (*ConsumersIamMember) ToConsumersIamMemberOutput added in v6.19.0

func (i *ConsumersIamMember) ToConsumersIamMemberOutput() ConsumersIamMemberOutput

func (*ConsumersIamMember) ToConsumersIamMemberOutputWithContext added in v6.19.0

func (i *ConsumersIamMember) ToConsumersIamMemberOutputWithContext(ctx context.Context) ConsumersIamMemberOutput

func (*ConsumersIamMember) ToOutput added in v6.65.1

type ConsumersIamMemberArgs added in v6.19.0

type ConsumersIamMemberArgs struct {
	Condition       ConsumersIamMemberConditionPtrInput
	ConsumerProject pulumi.StringInput
	Member          pulumi.StringInput
	// The role that should be applied. Only one
	// `endpoints.ConsumersIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role        pulumi.StringInput
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a ConsumersIamMember resource.

func (ConsumersIamMemberArgs) ElementType added in v6.19.0

func (ConsumersIamMemberArgs) ElementType() reflect.Type

type ConsumersIamMemberArray added in v6.19.0

type ConsumersIamMemberArray []ConsumersIamMemberInput

func (ConsumersIamMemberArray) ElementType added in v6.19.0

func (ConsumersIamMemberArray) ElementType() reflect.Type

func (ConsumersIamMemberArray) ToConsumersIamMemberArrayOutput added in v6.19.0

func (i ConsumersIamMemberArray) ToConsumersIamMemberArrayOutput() ConsumersIamMemberArrayOutput

func (ConsumersIamMemberArray) ToConsumersIamMemberArrayOutputWithContext added in v6.19.0

func (i ConsumersIamMemberArray) ToConsumersIamMemberArrayOutputWithContext(ctx context.Context) ConsumersIamMemberArrayOutput

func (ConsumersIamMemberArray) ToOutput added in v6.65.1

type ConsumersIamMemberArrayInput added in v6.19.0

type ConsumersIamMemberArrayInput interface {
	pulumi.Input

	ToConsumersIamMemberArrayOutput() ConsumersIamMemberArrayOutput
	ToConsumersIamMemberArrayOutputWithContext(context.Context) ConsumersIamMemberArrayOutput
}

ConsumersIamMemberArrayInput is an input type that accepts ConsumersIamMemberArray and ConsumersIamMemberArrayOutput values. You can construct a concrete instance of `ConsumersIamMemberArrayInput` via:

ConsumersIamMemberArray{ ConsumersIamMemberArgs{...} }

type ConsumersIamMemberArrayOutput added in v6.19.0

type ConsumersIamMemberArrayOutput struct{ *pulumi.OutputState }

func (ConsumersIamMemberArrayOutput) ElementType added in v6.19.0

func (ConsumersIamMemberArrayOutput) Index added in v6.19.0

func (ConsumersIamMemberArrayOutput) ToConsumersIamMemberArrayOutput added in v6.19.0

func (o ConsumersIamMemberArrayOutput) ToConsumersIamMemberArrayOutput() ConsumersIamMemberArrayOutput

func (ConsumersIamMemberArrayOutput) ToConsumersIamMemberArrayOutputWithContext added in v6.19.0

func (o ConsumersIamMemberArrayOutput) ToConsumersIamMemberArrayOutputWithContext(ctx context.Context) ConsumersIamMemberArrayOutput

func (ConsumersIamMemberArrayOutput) ToOutput added in v6.65.1

type ConsumersIamMemberCondition added in v6.19.0

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

type ConsumersIamMemberConditionArgs added in v6.19.0

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

func (ConsumersIamMemberConditionArgs) ElementType added in v6.19.0

func (ConsumersIamMemberConditionArgs) ToConsumersIamMemberConditionOutput added in v6.19.0

func (i ConsumersIamMemberConditionArgs) ToConsumersIamMemberConditionOutput() ConsumersIamMemberConditionOutput

func (ConsumersIamMemberConditionArgs) ToConsumersIamMemberConditionOutputWithContext added in v6.19.0

func (i ConsumersIamMemberConditionArgs) ToConsumersIamMemberConditionOutputWithContext(ctx context.Context) ConsumersIamMemberConditionOutput

func (ConsumersIamMemberConditionArgs) ToConsumersIamMemberConditionPtrOutput added in v6.19.0

func (i ConsumersIamMemberConditionArgs) ToConsumersIamMemberConditionPtrOutput() ConsumersIamMemberConditionPtrOutput

func (ConsumersIamMemberConditionArgs) ToConsumersIamMemberConditionPtrOutputWithContext added in v6.19.0

func (i ConsumersIamMemberConditionArgs) ToConsumersIamMemberConditionPtrOutputWithContext(ctx context.Context) ConsumersIamMemberConditionPtrOutput

func (ConsumersIamMemberConditionArgs) ToOutput added in v6.65.1

type ConsumersIamMemberConditionInput added in v6.19.0

type ConsumersIamMemberConditionInput interface {
	pulumi.Input

	ToConsumersIamMemberConditionOutput() ConsumersIamMemberConditionOutput
	ToConsumersIamMemberConditionOutputWithContext(context.Context) ConsumersIamMemberConditionOutput
}

ConsumersIamMemberConditionInput is an input type that accepts ConsumersIamMemberConditionArgs and ConsumersIamMemberConditionOutput values. You can construct a concrete instance of `ConsumersIamMemberConditionInput` via:

ConsumersIamMemberConditionArgs{...}

type ConsumersIamMemberConditionOutput added in v6.19.0

type ConsumersIamMemberConditionOutput struct{ *pulumi.OutputState }

func (ConsumersIamMemberConditionOutput) Description added in v6.19.0

func (ConsumersIamMemberConditionOutput) ElementType added in v6.19.0

func (ConsumersIamMemberConditionOutput) Expression added in v6.19.0

func (ConsumersIamMemberConditionOutput) Title added in v6.19.0

func (ConsumersIamMemberConditionOutput) ToConsumersIamMemberConditionOutput added in v6.19.0

func (o ConsumersIamMemberConditionOutput) ToConsumersIamMemberConditionOutput() ConsumersIamMemberConditionOutput

func (ConsumersIamMemberConditionOutput) ToConsumersIamMemberConditionOutputWithContext added in v6.19.0

func (o ConsumersIamMemberConditionOutput) ToConsumersIamMemberConditionOutputWithContext(ctx context.Context) ConsumersIamMemberConditionOutput

func (ConsumersIamMemberConditionOutput) ToConsumersIamMemberConditionPtrOutput added in v6.19.0

func (o ConsumersIamMemberConditionOutput) ToConsumersIamMemberConditionPtrOutput() ConsumersIamMemberConditionPtrOutput

func (ConsumersIamMemberConditionOutput) ToConsumersIamMemberConditionPtrOutputWithContext added in v6.19.0

func (o ConsumersIamMemberConditionOutput) ToConsumersIamMemberConditionPtrOutputWithContext(ctx context.Context) ConsumersIamMemberConditionPtrOutput

func (ConsumersIamMemberConditionOutput) ToOutput added in v6.65.1

type ConsumersIamMemberConditionPtrInput added in v6.19.0

type ConsumersIamMemberConditionPtrInput interface {
	pulumi.Input

	ToConsumersIamMemberConditionPtrOutput() ConsumersIamMemberConditionPtrOutput
	ToConsumersIamMemberConditionPtrOutputWithContext(context.Context) ConsumersIamMemberConditionPtrOutput
}

ConsumersIamMemberConditionPtrInput is an input type that accepts ConsumersIamMemberConditionArgs, ConsumersIamMemberConditionPtr and ConsumersIamMemberConditionPtrOutput values. You can construct a concrete instance of `ConsumersIamMemberConditionPtrInput` via:

        ConsumersIamMemberConditionArgs{...}

or:

        nil

func ConsumersIamMemberConditionPtr added in v6.19.0

type ConsumersIamMemberConditionPtrOutput added in v6.19.0

type ConsumersIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (ConsumersIamMemberConditionPtrOutput) Description added in v6.19.0

func (ConsumersIamMemberConditionPtrOutput) Elem added in v6.19.0

func (ConsumersIamMemberConditionPtrOutput) ElementType added in v6.19.0

func (ConsumersIamMemberConditionPtrOutput) Expression added in v6.19.0

func (ConsumersIamMemberConditionPtrOutput) Title added in v6.19.0

func (ConsumersIamMemberConditionPtrOutput) ToConsumersIamMemberConditionPtrOutput added in v6.19.0

func (o ConsumersIamMemberConditionPtrOutput) ToConsumersIamMemberConditionPtrOutput() ConsumersIamMemberConditionPtrOutput

func (ConsumersIamMemberConditionPtrOutput) ToConsumersIamMemberConditionPtrOutputWithContext added in v6.19.0

func (o ConsumersIamMemberConditionPtrOutput) ToConsumersIamMemberConditionPtrOutputWithContext(ctx context.Context) ConsumersIamMemberConditionPtrOutput

func (ConsumersIamMemberConditionPtrOutput) ToOutput added in v6.65.1

type ConsumersIamMemberInput added in v6.19.0

type ConsumersIamMemberInput interface {
	pulumi.Input

	ToConsumersIamMemberOutput() ConsumersIamMemberOutput
	ToConsumersIamMemberOutputWithContext(ctx context.Context) ConsumersIamMemberOutput
}

type ConsumersIamMemberMap added in v6.19.0

type ConsumersIamMemberMap map[string]ConsumersIamMemberInput

func (ConsumersIamMemberMap) ElementType added in v6.19.0

func (ConsumersIamMemberMap) ElementType() reflect.Type

func (ConsumersIamMemberMap) ToConsumersIamMemberMapOutput added in v6.19.0

func (i ConsumersIamMemberMap) ToConsumersIamMemberMapOutput() ConsumersIamMemberMapOutput

func (ConsumersIamMemberMap) ToConsumersIamMemberMapOutputWithContext added in v6.19.0

func (i ConsumersIamMemberMap) ToConsumersIamMemberMapOutputWithContext(ctx context.Context) ConsumersIamMemberMapOutput

func (ConsumersIamMemberMap) ToOutput added in v6.65.1

type ConsumersIamMemberMapInput added in v6.19.0

type ConsumersIamMemberMapInput interface {
	pulumi.Input

	ToConsumersIamMemberMapOutput() ConsumersIamMemberMapOutput
	ToConsumersIamMemberMapOutputWithContext(context.Context) ConsumersIamMemberMapOutput
}

ConsumersIamMemberMapInput is an input type that accepts ConsumersIamMemberMap and ConsumersIamMemberMapOutput values. You can construct a concrete instance of `ConsumersIamMemberMapInput` via:

ConsumersIamMemberMap{ "key": ConsumersIamMemberArgs{...} }

type ConsumersIamMemberMapOutput added in v6.19.0

type ConsumersIamMemberMapOutput struct{ *pulumi.OutputState }

func (ConsumersIamMemberMapOutput) ElementType added in v6.19.0

func (ConsumersIamMemberMapOutput) MapIndex added in v6.19.0

func (ConsumersIamMemberMapOutput) ToConsumersIamMemberMapOutput added in v6.19.0

func (o ConsumersIamMemberMapOutput) ToConsumersIamMemberMapOutput() ConsumersIamMemberMapOutput

func (ConsumersIamMemberMapOutput) ToConsumersIamMemberMapOutputWithContext added in v6.19.0

func (o ConsumersIamMemberMapOutput) ToConsumersIamMemberMapOutputWithContext(ctx context.Context) ConsumersIamMemberMapOutput

func (ConsumersIamMemberMapOutput) ToOutput added in v6.65.1

type ConsumersIamMemberOutput added in v6.19.0

type ConsumersIamMemberOutput struct{ *pulumi.OutputState }

func (ConsumersIamMemberOutput) Condition added in v6.23.0

func (ConsumersIamMemberOutput) ConsumerProject added in v6.23.0

func (o ConsumersIamMemberOutput) ConsumerProject() pulumi.StringOutput

func (ConsumersIamMemberOutput) ElementType added in v6.19.0

func (ConsumersIamMemberOutput) ElementType() reflect.Type

func (ConsumersIamMemberOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (ConsumersIamMemberOutput) Member added in v6.23.0

func (ConsumersIamMemberOutput) Role added in v6.23.0

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

func (ConsumersIamMemberOutput) ServiceName added in v6.23.0

func (ConsumersIamMemberOutput) ToConsumersIamMemberOutput added in v6.19.0

func (o ConsumersIamMemberOutput) ToConsumersIamMemberOutput() ConsumersIamMemberOutput

func (ConsumersIamMemberOutput) ToConsumersIamMemberOutputWithContext added in v6.19.0

func (o ConsumersIamMemberOutput) ToConsumersIamMemberOutputWithContext(ctx context.Context) ConsumersIamMemberOutput

func (ConsumersIamMemberOutput) ToOutput added in v6.65.1

type ConsumersIamMemberState added in v6.19.0

type ConsumersIamMemberState struct {
	Condition       ConsumersIamMemberConditionPtrInput
	ConsumerProject pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringPtrInput
	Member pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `endpoints.ConsumersIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role        pulumi.StringPtrInput
	ServiceName pulumi.StringPtrInput
}

func (ConsumersIamMemberState) ElementType added in v6.19.0

func (ConsumersIamMemberState) ElementType() reflect.Type

type ConsumersIamPolicy added in v6.19.0

type ConsumersIamPolicy struct {
	pulumi.CustomResourceState

	ConsumerProject pulumi.StringOutput `pulumi:"consumerProject"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  pulumi.StringOutput `pulumi:"policyData"`
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

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

* `endpoints.ConsumersIamPolicy`: Authoritative. Sets the IAM policy for the serviceconsumers and replaces any existing policy already attached. * `endpoints.ConsumersIamBinding`: 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 serviceconsumers are preserved. * `endpoints.ConsumersIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the serviceconsumers are preserved.

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

* `endpoints.ConsumersIamPolicy`: Retrieves the IAM policy for the serviceconsumers

> **Note:** `endpoints.ConsumersIamPolicy` **cannot** be used in conjunction with `endpoints.ConsumersIamBinding` and `endpoints.ConsumersIamMember` or they will fight over what your policy should be.

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

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* services/{{service_name}}/consumers/{{consumer_project}} * {{service_name}}/{{consumer_project}} * {{consumer_project}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Endpoints serviceconsumers 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:endpoints/consumersIamPolicy:ConsumersIamPolicy editor "services/{{service_name}}/consumers/{{consumer_project}} roles/servicemanagement.serviceController user:jane@example.com"

```

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

```sh

$ pulumi import gcp:endpoints/consumersIamPolicy:ConsumersIamPolicy editor "services/{{service_name}}/consumers/{{consumer_project}} roles/servicemanagement.serviceController"

```

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

```sh

$ pulumi import gcp:endpoints/consumersIamPolicy:ConsumersIamPolicy editor services/{{service_name}}/consumers/{{consumer_project}}

```

-> **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 GetConsumersIamPolicy added in v6.19.0

func GetConsumersIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsumersIamPolicyState, opts ...pulumi.ResourceOption) (*ConsumersIamPolicy, error)

GetConsumersIamPolicy gets an existing ConsumersIamPolicy 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 NewConsumersIamPolicy added in v6.19.0

func NewConsumersIamPolicy(ctx *pulumi.Context,
	name string, args *ConsumersIamPolicyArgs, opts ...pulumi.ResourceOption) (*ConsumersIamPolicy, error)

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

func (*ConsumersIamPolicy) ElementType added in v6.19.0

func (*ConsumersIamPolicy) ElementType() reflect.Type

func (*ConsumersIamPolicy) ToConsumersIamPolicyOutput added in v6.19.0

func (i *ConsumersIamPolicy) ToConsumersIamPolicyOutput() ConsumersIamPolicyOutput

func (*ConsumersIamPolicy) ToConsumersIamPolicyOutputWithContext added in v6.19.0

func (i *ConsumersIamPolicy) ToConsumersIamPolicyOutputWithContext(ctx context.Context) ConsumersIamPolicyOutput

func (*ConsumersIamPolicy) ToOutput added in v6.65.1

type ConsumersIamPolicyArgs added in v6.19.0

type ConsumersIamPolicyArgs struct {
	ConsumerProject pulumi.StringInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  pulumi.StringInput
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a ConsumersIamPolicy resource.

func (ConsumersIamPolicyArgs) ElementType added in v6.19.0

func (ConsumersIamPolicyArgs) ElementType() reflect.Type

type ConsumersIamPolicyArray added in v6.19.0

type ConsumersIamPolicyArray []ConsumersIamPolicyInput

func (ConsumersIamPolicyArray) ElementType added in v6.19.0

func (ConsumersIamPolicyArray) ElementType() reflect.Type

func (ConsumersIamPolicyArray) ToConsumersIamPolicyArrayOutput added in v6.19.0

func (i ConsumersIamPolicyArray) ToConsumersIamPolicyArrayOutput() ConsumersIamPolicyArrayOutput

func (ConsumersIamPolicyArray) ToConsumersIamPolicyArrayOutputWithContext added in v6.19.0

func (i ConsumersIamPolicyArray) ToConsumersIamPolicyArrayOutputWithContext(ctx context.Context) ConsumersIamPolicyArrayOutput

func (ConsumersIamPolicyArray) ToOutput added in v6.65.1

type ConsumersIamPolicyArrayInput added in v6.19.0

type ConsumersIamPolicyArrayInput interface {
	pulumi.Input

	ToConsumersIamPolicyArrayOutput() ConsumersIamPolicyArrayOutput
	ToConsumersIamPolicyArrayOutputWithContext(context.Context) ConsumersIamPolicyArrayOutput
}

ConsumersIamPolicyArrayInput is an input type that accepts ConsumersIamPolicyArray and ConsumersIamPolicyArrayOutput values. You can construct a concrete instance of `ConsumersIamPolicyArrayInput` via:

ConsumersIamPolicyArray{ ConsumersIamPolicyArgs{...} }

type ConsumersIamPolicyArrayOutput added in v6.19.0

type ConsumersIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (ConsumersIamPolicyArrayOutput) ElementType added in v6.19.0

func (ConsumersIamPolicyArrayOutput) Index added in v6.19.0

func (ConsumersIamPolicyArrayOutput) ToConsumersIamPolicyArrayOutput added in v6.19.0

func (o ConsumersIamPolicyArrayOutput) ToConsumersIamPolicyArrayOutput() ConsumersIamPolicyArrayOutput

func (ConsumersIamPolicyArrayOutput) ToConsumersIamPolicyArrayOutputWithContext added in v6.19.0

func (o ConsumersIamPolicyArrayOutput) ToConsumersIamPolicyArrayOutputWithContext(ctx context.Context) ConsumersIamPolicyArrayOutput

func (ConsumersIamPolicyArrayOutput) ToOutput added in v6.65.1

type ConsumersIamPolicyInput added in v6.19.0

type ConsumersIamPolicyInput interface {
	pulumi.Input

	ToConsumersIamPolicyOutput() ConsumersIamPolicyOutput
	ToConsumersIamPolicyOutputWithContext(ctx context.Context) ConsumersIamPolicyOutput
}

type ConsumersIamPolicyMap added in v6.19.0

type ConsumersIamPolicyMap map[string]ConsumersIamPolicyInput

func (ConsumersIamPolicyMap) ElementType added in v6.19.0

func (ConsumersIamPolicyMap) ElementType() reflect.Type

func (ConsumersIamPolicyMap) ToConsumersIamPolicyMapOutput added in v6.19.0

func (i ConsumersIamPolicyMap) ToConsumersIamPolicyMapOutput() ConsumersIamPolicyMapOutput

func (ConsumersIamPolicyMap) ToConsumersIamPolicyMapOutputWithContext added in v6.19.0

func (i ConsumersIamPolicyMap) ToConsumersIamPolicyMapOutputWithContext(ctx context.Context) ConsumersIamPolicyMapOutput

func (ConsumersIamPolicyMap) ToOutput added in v6.65.1

type ConsumersIamPolicyMapInput added in v6.19.0

type ConsumersIamPolicyMapInput interface {
	pulumi.Input

	ToConsumersIamPolicyMapOutput() ConsumersIamPolicyMapOutput
	ToConsumersIamPolicyMapOutputWithContext(context.Context) ConsumersIamPolicyMapOutput
}

ConsumersIamPolicyMapInput is an input type that accepts ConsumersIamPolicyMap and ConsumersIamPolicyMapOutput values. You can construct a concrete instance of `ConsumersIamPolicyMapInput` via:

ConsumersIamPolicyMap{ "key": ConsumersIamPolicyArgs{...} }

type ConsumersIamPolicyMapOutput added in v6.19.0

type ConsumersIamPolicyMapOutput struct{ *pulumi.OutputState }

func (ConsumersIamPolicyMapOutput) ElementType added in v6.19.0

func (ConsumersIamPolicyMapOutput) MapIndex added in v6.19.0

func (ConsumersIamPolicyMapOutput) ToConsumersIamPolicyMapOutput added in v6.19.0

func (o ConsumersIamPolicyMapOutput) ToConsumersIamPolicyMapOutput() ConsumersIamPolicyMapOutput

func (ConsumersIamPolicyMapOutput) ToConsumersIamPolicyMapOutputWithContext added in v6.19.0

func (o ConsumersIamPolicyMapOutput) ToConsumersIamPolicyMapOutputWithContext(ctx context.Context) ConsumersIamPolicyMapOutput

func (ConsumersIamPolicyMapOutput) ToOutput added in v6.65.1

type ConsumersIamPolicyOutput added in v6.19.0

type ConsumersIamPolicyOutput struct{ *pulumi.OutputState }

func (ConsumersIamPolicyOutput) ConsumerProject added in v6.23.0

func (o ConsumersIamPolicyOutput) ConsumerProject() pulumi.StringOutput

func (ConsumersIamPolicyOutput) ElementType added in v6.19.0

func (ConsumersIamPolicyOutput) ElementType() reflect.Type

func (ConsumersIamPolicyOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (ConsumersIamPolicyOutput) PolicyData added in v6.23.0

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

func (ConsumersIamPolicyOutput) ServiceName added in v6.23.0

func (ConsumersIamPolicyOutput) ToConsumersIamPolicyOutput added in v6.19.0

func (o ConsumersIamPolicyOutput) ToConsumersIamPolicyOutput() ConsumersIamPolicyOutput

func (ConsumersIamPolicyOutput) ToConsumersIamPolicyOutputWithContext added in v6.19.0

func (o ConsumersIamPolicyOutput) ToConsumersIamPolicyOutputWithContext(ctx context.Context) ConsumersIamPolicyOutput

func (ConsumersIamPolicyOutput) ToOutput added in v6.65.1

type ConsumersIamPolicyState added in v6.19.0

type ConsumersIamPolicyState struct {
	ConsumerProject pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  pulumi.StringPtrInput
	ServiceName pulumi.StringPtrInput
}

func (ConsumersIamPolicyState) ElementType added in v6.19.0

func (ConsumersIamPolicyState) ElementType() reflect.Type

type GetServiceConsumersIamPolicyArgs added in v6.59.0

type GetServiceConsumersIamPolicyArgs struct {
	ConsumerProject string `pulumi:"consumerProject"`
	ServiceName     string `pulumi:"serviceName"`
}

A collection of arguments for invoking getServiceConsumersIamPolicy.

type GetServiceConsumersIamPolicyOutputArgs added in v6.59.0

type GetServiceConsumersIamPolicyOutputArgs struct {
	ConsumerProject pulumi.StringInput `pulumi:"consumerProject"`
	ServiceName     pulumi.StringInput `pulumi:"serviceName"`
}

A collection of arguments for invoking getServiceConsumersIamPolicy.

func (GetServiceConsumersIamPolicyOutputArgs) ElementType added in v6.59.0

type GetServiceConsumersIamPolicyResult added in v6.59.0

type GetServiceConsumersIamPolicyResult struct {
	ConsumerProject string `pulumi:"consumerProject"`
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Required only by `endpoints.ConsumersIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  string `pulumi:"policyData"`
	ServiceName string `pulumi:"serviceName"`
}

A collection of values returned by getServiceConsumersIamPolicy.

func GetServiceConsumersIamPolicy added in v6.59.0

func GetServiceConsumersIamPolicy(ctx *pulumi.Context, args *GetServiceConsumersIamPolicyArgs, opts ...pulumi.InvokeOption) (*GetServiceConsumersIamPolicyResult, error)

Retrieves the current IAM policy data for serviceconsumers

type GetServiceConsumersIamPolicyResultOutput added in v6.59.0

type GetServiceConsumersIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getServiceConsumersIamPolicy.

func (GetServiceConsumersIamPolicyResultOutput) ConsumerProject added in v6.59.0

func (GetServiceConsumersIamPolicyResultOutput) ElementType added in v6.59.0

func (GetServiceConsumersIamPolicyResultOutput) Etag added in v6.59.0

(Computed) The etag of the IAM policy.

func (GetServiceConsumersIamPolicyResultOutput) Id added in v6.59.0

The provider-assigned unique ID for this managed resource.

func (GetServiceConsumersIamPolicyResultOutput) PolicyData added in v6.59.0

(Required only by `endpoints.ConsumersIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (GetServiceConsumersIamPolicyResultOutput) ServiceName added in v6.59.0

func (GetServiceConsumersIamPolicyResultOutput) ToGetServiceConsumersIamPolicyResultOutput added in v6.59.0

func (o GetServiceConsumersIamPolicyResultOutput) ToGetServiceConsumersIamPolicyResultOutput() GetServiceConsumersIamPolicyResultOutput

func (GetServiceConsumersIamPolicyResultOutput) ToGetServiceConsumersIamPolicyResultOutputWithContext added in v6.59.0

func (o GetServiceConsumersIamPolicyResultOutput) ToGetServiceConsumersIamPolicyResultOutputWithContext(ctx context.Context) GetServiceConsumersIamPolicyResultOutput

func (GetServiceConsumersIamPolicyResultOutput) ToOutput added in v6.65.1

type LookupServiceIamPolicyArgs added in v6.59.0

type LookupServiceIamPolicyArgs struct {
	ServiceName string `pulumi:"serviceName"`
}

A collection of arguments for invoking getServiceIamPolicy.

type LookupServiceIamPolicyOutputArgs added in v6.59.0

type LookupServiceIamPolicyOutputArgs struct {
	ServiceName pulumi.StringInput `pulumi:"serviceName"`
}

A collection of arguments for invoking getServiceIamPolicy.

func (LookupServiceIamPolicyOutputArgs) ElementType added in v6.59.0

type LookupServiceIamPolicyResult added in v6.59.0

type LookupServiceIamPolicyResult struct {
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Required only by `endpoints.ServiceIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  string `pulumi:"policyData"`
	ServiceName string `pulumi:"serviceName"`
}

A collection of values returned by getServiceIamPolicy.

func LookupServiceIamPolicy added in v6.59.0

func LookupServiceIamPolicy(ctx *pulumi.Context, args *LookupServiceIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupServiceIamPolicyResult, error)

Retrieves the current IAM policy data for service

## example

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := endpoints.LookupServiceIamPolicy(ctx, &endpoints.LookupServiceIamPolicyArgs{
			ServiceName: google_endpoints_service.Endpoints_service.Service_name,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupServiceIamPolicyResultOutput added in v6.59.0

type LookupServiceIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getServiceIamPolicy.

func LookupServiceIamPolicyOutput added in v6.59.0

func (LookupServiceIamPolicyResultOutput) ElementType added in v6.59.0

func (LookupServiceIamPolicyResultOutput) Etag added in v6.59.0

(Computed) The etag of the IAM policy.

func (LookupServiceIamPolicyResultOutput) Id added in v6.59.0

The provider-assigned unique ID for this managed resource.

func (LookupServiceIamPolicyResultOutput) PolicyData added in v6.59.0

(Required only by `endpoints.ServiceIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupServiceIamPolicyResultOutput) ServiceName added in v6.59.0

func (LookupServiceIamPolicyResultOutput) ToLookupServiceIamPolicyResultOutput added in v6.59.0

func (o LookupServiceIamPolicyResultOutput) ToLookupServiceIamPolicyResultOutput() LookupServiceIamPolicyResultOutput

func (LookupServiceIamPolicyResultOutput) ToLookupServiceIamPolicyResultOutputWithContext added in v6.59.0

func (o LookupServiceIamPolicyResultOutput) ToLookupServiceIamPolicyResultOutputWithContext(ctx context.Context) LookupServiceIamPolicyResultOutput

func (LookupServiceIamPolicyResultOutput) ToOutput added in v6.65.1

type Service

type Service struct {
	pulumi.CustomResourceState

	// A list of API objects; structure is documented below.
	Apis ServiceApiArrayOutput `pulumi:"apis"`
	// The autogenerated ID for the configuration that is rolled out as part of the creation of this resource.  Must be provided to compute engine instances as a tag.
	ConfigId pulumi.StringOutput `pulumi:"configId"`
	// The address at which the service can be found - usually the same as the service name.
	DnsAddress pulumi.StringOutput `pulumi:"dnsAddress"`
	// A list of Endpoint objects; structure is documented below.
	Endpoints ServiceEndpointArrayOutput `pulumi:"endpoints"`
	// The full text of the Service Config YAML file (Example located [here](https://github.com/GoogleCloudPlatform/python-docs-samples/blob/main/endpoints/bookstore-grpc/api_config.yaml)).
	// If provided, must also provide `protocOutputBase64`.  `openApi` config must *not* be provided.
	GrpcConfig pulumi.StringPtrOutput `pulumi:"grpcConfig"`
	// The full text of the OpenAPI YAML configuration as described [here](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/2.0.md).
	// Either this, or *both* of `grpcConfig` and `protocOutputBase64` must be specified.
	OpenapiConfig pulumi.StringPtrOutput `pulumi:"openapiConfig"`
	// The project ID that the service belongs to.  If not provided, provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The full contents of the Service Descriptor File generated by protoc.  This should be a compiled .pb file, base64-encoded.
	ProtocOutputBase64 pulumi.StringPtrOutput `pulumi:"protocOutputBase64"`
	// The name of the service.  Usually of the form `$apiname.endpoints.$projectid.cloud.goog`.
	//
	// ***
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

This resource creates and rolls out a Cloud Endpoints service using OpenAPI or gRPC. View the relevant docs for [OpenAPI](https://cloud.google.com/endpoints/docs/openapi/) and [gRPC](https://cloud.google.com/endpoints/docs/grpc/).

## Example Usage

```go package main

import (

"encoding/base64"
"os"

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

)

func filebase64OrPanic(path string) pulumi.StringPtrInput {
	if fileData, err := os.ReadFile(path); err == nil {
		return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))
	} else {
		panic(err.Error())
	}
}

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := os.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := endpoints.NewService(ctx, "openapiService", &endpoints.ServiceArgs{
			ServiceName:   pulumi.String("api-name.endpoints.project-id.cloud.goog"),
			Project:       pulumi.String("project-id"),
			OpenapiConfig: readFileOrPanic("openapi_spec.yml"),
		})
		if err != nil {
			return err
		}
		_, err = endpoints.NewService(ctx, "grpcService", &endpoints.ServiceArgs{
			ServiceName:        pulumi.String("api-name.endpoints.project-id.cloud.goog"),
			Project:            pulumi.String("project-id"),
			GrpcConfig:         readFileOrPanic("service_spec.yml"),
			ProtocOutputBase64: filebase64OrPanic("compiled_descriptor_file.pb"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

The example in `examples/endpoints_on_compute_engine` shows the API from the quickstart running on a Compute Engine VM and reachable through Cloud Endpoints, which may also be useful.

## Import

This resource does not support import.

func GetService

func GetService(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServiceState, opts ...pulumi.ResourceOption) (*Service, error)

GetService gets an existing Service 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 NewService

func NewService(ctx *pulumi.Context,
	name string, args *ServiceArgs, opts ...pulumi.ResourceOption) (*Service, error)

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

func (*Service) ElementType

func (*Service) ElementType() reflect.Type

func (*Service) ToOutput added in v6.65.1

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

func (*Service) ToServiceOutput

func (i *Service) ToServiceOutput() ServiceOutput

func (*Service) ToServiceOutputWithContext

func (i *Service) ToServiceOutputWithContext(ctx context.Context) ServiceOutput

type ServiceApi

type ServiceApi struct {
	// A list of Method objects; structure is documented below.
	Methods []ServiceApiMethod `pulumi:"methods"`
	// The simple name of the endpoint as described in the config.
	Name *string `pulumi:"name"`
	// `SYNTAX_PROTO2` or `SYNTAX_PROTO3`.
	Syntax *string `pulumi:"syntax"`
	// A version string for this api. If specified, will have the form major-version.minor-version, e.g. `1.10`.
	Version *string `pulumi:"version"`
}

type ServiceApiArgs

type ServiceApiArgs struct {
	// A list of Method objects; structure is documented below.
	Methods ServiceApiMethodArrayInput `pulumi:"methods"`
	// The simple name of the endpoint as described in the config.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// `SYNTAX_PROTO2` or `SYNTAX_PROTO3`.
	Syntax pulumi.StringPtrInput `pulumi:"syntax"`
	// A version string for this api. If specified, will have the form major-version.minor-version, e.g. `1.10`.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (ServiceApiArgs) ElementType

func (ServiceApiArgs) ElementType() reflect.Type

func (ServiceApiArgs) ToOutput added in v6.65.1

func (ServiceApiArgs) ToServiceApiOutput

func (i ServiceApiArgs) ToServiceApiOutput() ServiceApiOutput

func (ServiceApiArgs) ToServiceApiOutputWithContext

func (i ServiceApiArgs) ToServiceApiOutputWithContext(ctx context.Context) ServiceApiOutput

type ServiceApiArray

type ServiceApiArray []ServiceApiInput

func (ServiceApiArray) ElementType

func (ServiceApiArray) ElementType() reflect.Type

func (ServiceApiArray) ToOutput added in v6.65.1

func (ServiceApiArray) ToServiceApiArrayOutput

func (i ServiceApiArray) ToServiceApiArrayOutput() ServiceApiArrayOutput

func (ServiceApiArray) ToServiceApiArrayOutputWithContext

func (i ServiceApiArray) ToServiceApiArrayOutputWithContext(ctx context.Context) ServiceApiArrayOutput

type ServiceApiArrayInput

type ServiceApiArrayInput interface {
	pulumi.Input

	ToServiceApiArrayOutput() ServiceApiArrayOutput
	ToServiceApiArrayOutputWithContext(context.Context) ServiceApiArrayOutput
}

ServiceApiArrayInput is an input type that accepts ServiceApiArray and ServiceApiArrayOutput values. You can construct a concrete instance of `ServiceApiArrayInput` via:

ServiceApiArray{ ServiceApiArgs{...} }

type ServiceApiArrayOutput

type ServiceApiArrayOutput struct{ *pulumi.OutputState }

func (ServiceApiArrayOutput) ElementType

func (ServiceApiArrayOutput) ElementType() reflect.Type

func (ServiceApiArrayOutput) Index

func (ServiceApiArrayOutput) ToOutput added in v6.65.1

func (ServiceApiArrayOutput) ToServiceApiArrayOutput

func (o ServiceApiArrayOutput) ToServiceApiArrayOutput() ServiceApiArrayOutput

func (ServiceApiArrayOutput) ToServiceApiArrayOutputWithContext

func (o ServiceApiArrayOutput) ToServiceApiArrayOutputWithContext(ctx context.Context) ServiceApiArrayOutput

type ServiceApiInput

type ServiceApiInput interface {
	pulumi.Input

	ToServiceApiOutput() ServiceApiOutput
	ToServiceApiOutputWithContext(context.Context) ServiceApiOutput
}

ServiceApiInput is an input type that accepts ServiceApiArgs and ServiceApiOutput values. You can construct a concrete instance of `ServiceApiInput` via:

ServiceApiArgs{...}

type ServiceApiMethod

type ServiceApiMethod struct {
	// The simple name of the endpoint as described in the config.
	Name *string `pulumi:"name"`
	// The type URL for the request to this API.
	RequestType *string `pulumi:"requestType"`
	// The type URL for the response from this API.
	ResponseType *string `pulumi:"responseType"`
	// `SYNTAX_PROTO2` or `SYNTAX_PROTO3`.
	Syntax *string `pulumi:"syntax"`
}

type ServiceApiMethodArgs

type ServiceApiMethodArgs struct {
	// The simple name of the endpoint as described in the config.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The type URL for the request to this API.
	RequestType pulumi.StringPtrInput `pulumi:"requestType"`
	// The type URL for the response from this API.
	ResponseType pulumi.StringPtrInput `pulumi:"responseType"`
	// `SYNTAX_PROTO2` or `SYNTAX_PROTO3`.
	Syntax pulumi.StringPtrInput `pulumi:"syntax"`
}

func (ServiceApiMethodArgs) ElementType

func (ServiceApiMethodArgs) ElementType() reflect.Type

func (ServiceApiMethodArgs) ToOutput added in v6.65.1

func (ServiceApiMethodArgs) ToServiceApiMethodOutput

func (i ServiceApiMethodArgs) ToServiceApiMethodOutput() ServiceApiMethodOutput

func (ServiceApiMethodArgs) ToServiceApiMethodOutputWithContext

func (i ServiceApiMethodArgs) ToServiceApiMethodOutputWithContext(ctx context.Context) ServiceApiMethodOutput

type ServiceApiMethodArray

type ServiceApiMethodArray []ServiceApiMethodInput

func (ServiceApiMethodArray) ElementType

func (ServiceApiMethodArray) ElementType() reflect.Type

func (ServiceApiMethodArray) ToOutput added in v6.65.1

func (ServiceApiMethodArray) ToServiceApiMethodArrayOutput

func (i ServiceApiMethodArray) ToServiceApiMethodArrayOutput() ServiceApiMethodArrayOutput

func (ServiceApiMethodArray) ToServiceApiMethodArrayOutputWithContext

func (i ServiceApiMethodArray) ToServiceApiMethodArrayOutputWithContext(ctx context.Context) ServiceApiMethodArrayOutput

type ServiceApiMethodArrayInput

type ServiceApiMethodArrayInput interface {
	pulumi.Input

	ToServiceApiMethodArrayOutput() ServiceApiMethodArrayOutput
	ToServiceApiMethodArrayOutputWithContext(context.Context) ServiceApiMethodArrayOutput
}

ServiceApiMethodArrayInput is an input type that accepts ServiceApiMethodArray and ServiceApiMethodArrayOutput values. You can construct a concrete instance of `ServiceApiMethodArrayInput` via:

ServiceApiMethodArray{ ServiceApiMethodArgs{...} }

type ServiceApiMethodArrayOutput

type ServiceApiMethodArrayOutput struct{ *pulumi.OutputState }

func (ServiceApiMethodArrayOutput) ElementType

func (ServiceApiMethodArrayOutput) Index

func (ServiceApiMethodArrayOutput) ToOutput added in v6.65.1

func (ServiceApiMethodArrayOutput) ToServiceApiMethodArrayOutput

func (o ServiceApiMethodArrayOutput) ToServiceApiMethodArrayOutput() ServiceApiMethodArrayOutput

func (ServiceApiMethodArrayOutput) ToServiceApiMethodArrayOutputWithContext

func (o ServiceApiMethodArrayOutput) ToServiceApiMethodArrayOutputWithContext(ctx context.Context) ServiceApiMethodArrayOutput

type ServiceApiMethodInput

type ServiceApiMethodInput interface {
	pulumi.Input

	ToServiceApiMethodOutput() ServiceApiMethodOutput
	ToServiceApiMethodOutputWithContext(context.Context) ServiceApiMethodOutput
}

ServiceApiMethodInput is an input type that accepts ServiceApiMethodArgs and ServiceApiMethodOutput values. You can construct a concrete instance of `ServiceApiMethodInput` via:

ServiceApiMethodArgs{...}

type ServiceApiMethodOutput

type ServiceApiMethodOutput struct{ *pulumi.OutputState }

func (ServiceApiMethodOutput) ElementType

func (ServiceApiMethodOutput) ElementType() reflect.Type

func (ServiceApiMethodOutput) Name

The simple name of the endpoint as described in the config.

func (ServiceApiMethodOutput) RequestType

The type URL for the request to this API.

func (ServiceApiMethodOutput) ResponseType

The type URL for the response from this API.

func (ServiceApiMethodOutput) Syntax

`SYNTAX_PROTO2` or `SYNTAX_PROTO3`.

func (ServiceApiMethodOutput) ToOutput added in v6.65.1

func (ServiceApiMethodOutput) ToServiceApiMethodOutput

func (o ServiceApiMethodOutput) ToServiceApiMethodOutput() ServiceApiMethodOutput

func (ServiceApiMethodOutput) ToServiceApiMethodOutputWithContext

func (o ServiceApiMethodOutput) ToServiceApiMethodOutputWithContext(ctx context.Context) ServiceApiMethodOutput

type ServiceApiOutput

type ServiceApiOutput struct{ *pulumi.OutputState }

func (ServiceApiOutput) ElementType

func (ServiceApiOutput) ElementType() reflect.Type

func (ServiceApiOutput) Methods

A list of Method objects; structure is documented below.

func (ServiceApiOutput) Name

The simple name of the endpoint as described in the config.

func (ServiceApiOutput) Syntax

`SYNTAX_PROTO2` or `SYNTAX_PROTO3`.

func (ServiceApiOutput) ToOutput added in v6.65.1

func (ServiceApiOutput) ToServiceApiOutput

func (o ServiceApiOutput) ToServiceApiOutput() ServiceApiOutput

func (ServiceApiOutput) ToServiceApiOutputWithContext

func (o ServiceApiOutput) ToServiceApiOutputWithContext(ctx context.Context) ServiceApiOutput

func (ServiceApiOutput) Version

A version string for this api. If specified, will have the form major-version.minor-version, e.g. `1.10`.

type ServiceArgs

type ServiceArgs struct {
	// The full text of the Service Config YAML file (Example located [here](https://github.com/GoogleCloudPlatform/python-docs-samples/blob/main/endpoints/bookstore-grpc/api_config.yaml)).
	// If provided, must also provide `protocOutputBase64`.  `openApi` config must *not* be provided.
	GrpcConfig pulumi.StringPtrInput
	// The full text of the OpenAPI YAML configuration as described [here](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/2.0.md).
	// Either this, or *both* of `grpcConfig` and `protocOutputBase64` must be specified.
	OpenapiConfig pulumi.StringPtrInput
	// The project ID that the service belongs to.  If not provided, provider project is used.
	Project pulumi.StringPtrInput
	// The full contents of the Service Descriptor File generated by protoc.  This should be a compiled .pb file, base64-encoded.
	ProtocOutputBase64 pulumi.StringPtrInput
	// The name of the service.  Usually of the form `$apiname.endpoints.$projectid.cloud.goog`.
	//
	// ***
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a Service resource.

func (ServiceArgs) ElementType

func (ServiceArgs) ElementType() reflect.Type

type ServiceArray

type ServiceArray []ServiceInput

func (ServiceArray) ElementType

func (ServiceArray) ElementType() reflect.Type

func (ServiceArray) ToOutput added in v6.65.1

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

func (ServiceArray) ToServiceArrayOutput

func (i ServiceArray) ToServiceArrayOutput() ServiceArrayOutput

func (ServiceArray) ToServiceArrayOutputWithContext

func (i ServiceArray) ToServiceArrayOutputWithContext(ctx context.Context) ServiceArrayOutput

type ServiceArrayInput

type ServiceArrayInput interface {
	pulumi.Input

	ToServiceArrayOutput() ServiceArrayOutput
	ToServiceArrayOutputWithContext(context.Context) ServiceArrayOutput
}

ServiceArrayInput is an input type that accepts ServiceArray and ServiceArrayOutput values. You can construct a concrete instance of `ServiceArrayInput` via:

ServiceArray{ ServiceArgs{...} }

type ServiceArrayOutput

type ServiceArrayOutput struct{ *pulumi.OutputState }

func (ServiceArrayOutput) ElementType

func (ServiceArrayOutput) ElementType() reflect.Type

func (ServiceArrayOutput) Index

func (ServiceArrayOutput) ToOutput added in v6.65.1

func (ServiceArrayOutput) ToServiceArrayOutput

func (o ServiceArrayOutput) ToServiceArrayOutput() ServiceArrayOutput

func (ServiceArrayOutput) ToServiceArrayOutputWithContext

func (o ServiceArrayOutput) ToServiceArrayOutputWithContext(ctx context.Context) ServiceArrayOutput

type ServiceEndpoint

type ServiceEndpoint struct {
	// The FQDN of the endpoint as described in the config.
	Address *string `pulumi:"address"`
	// The simple name of the endpoint as described in the config.
	Name *string `pulumi:"name"`
}

type ServiceEndpointArgs

type ServiceEndpointArgs struct {
	// The FQDN of the endpoint as described in the config.
	Address pulumi.StringPtrInput `pulumi:"address"`
	// The simple name of the endpoint as described in the config.
	Name pulumi.StringPtrInput `pulumi:"name"`
}

func (ServiceEndpointArgs) ElementType

func (ServiceEndpointArgs) ElementType() reflect.Type

func (ServiceEndpointArgs) ToOutput added in v6.65.1

func (ServiceEndpointArgs) ToServiceEndpointOutput

func (i ServiceEndpointArgs) ToServiceEndpointOutput() ServiceEndpointOutput

func (ServiceEndpointArgs) ToServiceEndpointOutputWithContext

func (i ServiceEndpointArgs) ToServiceEndpointOutputWithContext(ctx context.Context) ServiceEndpointOutput

type ServiceEndpointArray

type ServiceEndpointArray []ServiceEndpointInput

func (ServiceEndpointArray) ElementType

func (ServiceEndpointArray) ElementType() reflect.Type

func (ServiceEndpointArray) ToOutput added in v6.65.1

func (ServiceEndpointArray) ToServiceEndpointArrayOutput

func (i ServiceEndpointArray) ToServiceEndpointArrayOutput() ServiceEndpointArrayOutput

func (ServiceEndpointArray) ToServiceEndpointArrayOutputWithContext

func (i ServiceEndpointArray) ToServiceEndpointArrayOutputWithContext(ctx context.Context) ServiceEndpointArrayOutput

type ServiceEndpointArrayInput

type ServiceEndpointArrayInput interface {
	pulumi.Input

	ToServiceEndpointArrayOutput() ServiceEndpointArrayOutput
	ToServiceEndpointArrayOutputWithContext(context.Context) ServiceEndpointArrayOutput
}

ServiceEndpointArrayInput is an input type that accepts ServiceEndpointArray and ServiceEndpointArrayOutput values. You can construct a concrete instance of `ServiceEndpointArrayInput` via:

ServiceEndpointArray{ ServiceEndpointArgs{...} }

type ServiceEndpointArrayOutput

type ServiceEndpointArrayOutput struct{ *pulumi.OutputState }

func (ServiceEndpointArrayOutput) ElementType

func (ServiceEndpointArrayOutput) ElementType() reflect.Type

func (ServiceEndpointArrayOutput) Index

func (ServiceEndpointArrayOutput) ToOutput added in v6.65.1

func (ServiceEndpointArrayOutput) ToServiceEndpointArrayOutput

func (o ServiceEndpointArrayOutput) ToServiceEndpointArrayOutput() ServiceEndpointArrayOutput

func (ServiceEndpointArrayOutput) ToServiceEndpointArrayOutputWithContext

func (o ServiceEndpointArrayOutput) ToServiceEndpointArrayOutputWithContext(ctx context.Context) ServiceEndpointArrayOutput

type ServiceEndpointInput

type ServiceEndpointInput interface {
	pulumi.Input

	ToServiceEndpointOutput() ServiceEndpointOutput
	ToServiceEndpointOutputWithContext(context.Context) ServiceEndpointOutput
}

ServiceEndpointInput is an input type that accepts ServiceEndpointArgs and ServiceEndpointOutput values. You can construct a concrete instance of `ServiceEndpointInput` via:

ServiceEndpointArgs{...}

type ServiceEndpointOutput

type ServiceEndpointOutput struct{ *pulumi.OutputState }

func (ServiceEndpointOutput) Address

The FQDN of the endpoint as described in the config.

func (ServiceEndpointOutput) ElementType

func (ServiceEndpointOutput) ElementType() reflect.Type

func (ServiceEndpointOutput) Name

The simple name of the endpoint as described in the config.

func (ServiceEndpointOutput) ToOutput added in v6.65.1

func (ServiceEndpointOutput) ToServiceEndpointOutput

func (o ServiceEndpointOutput) ToServiceEndpointOutput() ServiceEndpointOutput

func (ServiceEndpointOutput) ToServiceEndpointOutputWithContext

func (o ServiceEndpointOutput) ToServiceEndpointOutputWithContext(ctx context.Context) ServiceEndpointOutput

type ServiceIamBinding

type ServiceIamBinding struct {
	pulumi.CustomResourceState

	Condition ServiceIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The role that should be applied. Only one
	// `endpoints.ServiceIamBinding` 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"`
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

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

* `endpoints.ServiceIamPolicy`: Authoritative. Sets the IAM policy for the service and replaces any existing policy already attached. * `endpoints.ServiceIamBinding`: 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 service are preserved. * `endpoints.ServiceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the service are preserved.

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

* `endpoints.ServiceIamPolicy`: Retrieves the IAM policy for the service

> **Note:** `endpoints.ServiceIamPolicy` **cannot** be used in conjunction with `endpoints.ServiceIamBinding` and `endpoints.ServiceIamMember` or they will fight over what your policy should be.

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

## google\_endpoints\_service\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/endpoints"
"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 = endpoints.NewServiceIamPolicy(ctx, "policy", &endpoints.ServiceIamPolicyArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_endpoints\_service\_iam\_binding

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := endpoints.NewServiceIamBinding(ctx, "binding", &endpoints.ServiceIamBindingArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_endpoints\_service\_iam\_member

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := endpoints.NewServiceIamMember(ctx, "member", &endpoints.ServiceIamMemberArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* services/{{service_name}} * {{service_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Endpoints service 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:endpoints/serviceIamBinding:ServiceIamBinding editor "services/{{service_name}} 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:endpoints/serviceIamBinding:ServiceIamBinding editor "services/{{service_name}} roles/viewer"

```

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

```sh

$ pulumi import gcp:endpoints/serviceIamBinding:ServiceIamBinding editor services/{{service_name}}

```

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

func GetServiceIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServiceIamBindingState, opts ...pulumi.ResourceOption) (*ServiceIamBinding, error)

GetServiceIamBinding gets an existing ServiceIamBinding 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 NewServiceIamBinding

func NewServiceIamBinding(ctx *pulumi.Context,
	name string, args *ServiceIamBindingArgs, opts ...pulumi.ResourceOption) (*ServiceIamBinding, error)

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

func (*ServiceIamBinding) ElementType

func (*ServiceIamBinding) ElementType() reflect.Type

func (*ServiceIamBinding) ToOutput added in v6.65.1

func (*ServiceIamBinding) ToServiceIamBindingOutput

func (i *ServiceIamBinding) ToServiceIamBindingOutput() ServiceIamBindingOutput

func (*ServiceIamBinding) ToServiceIamBindingOutputWithContext

func (i *ServiceIamBinding) ToServiceIamBindingOutputWithContext(ctx context.Context) ServiceIamBindingOutput

type ServiceIamBindingArgs

type ServiceIamBindingArgs struct {
	Condition ServiceIamBindingConditionPtrInput
	Members   pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `endpoints.ServiceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role        pulumi.StringInput
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a ServiceIamBinding resource.

func (ServiceIamBindingArgs) ElementType

func (ServiceIamBindingArgs) ElementType() reflect.Type

type ServiceIamBindingArray

type ServiceIamBindingArray []ServiceIamBindingInput

func (ServiceIamBindingArray) ElementType

func (ServiceIamBindingArray) ElementType() reflect.Type

func (ServiceIamBindingArray) ToOutput added in v6.65.1

func (ServiceIamBindingArray) ToServiceIamBindingArrayOutput

func (i ServiceIamBindingArray) ToServiceIamBindingArrayOutput() ServiceIamBindingArrayOutput

func (ServiceIamBindingArray) ToServiceIamBindingArrayOutputWithContext

func (i ServiceIamBindingArray) ToServiceIamBindingArrayOutputWithContext(ctx context.Context) ServiceIamBindingArrayOutput

type ServiceIamBindingArrayInput

type ServiceIamBindingArrayInput interface {
	pulumi.Input

	ToServiceIamBindingArrayOutput() ServiceIamBindingArrayOutput
	ToServiceIamBindingArrayOutputWithContext(context.Context) ServiceIamBindingArrayOutput
}

ServiceIamBindingArrayInput is an input type that accepts ServiceIamBindingArray and ServiceIamBindingArrayOutput values. You can construct a concrete instance of `ServiceIamBindingArrayInput` via:

ServiceIamBindingArray{ ServiceIamBindingArgs{...} }

type ServiceIamBindingArrayOutput

type ServiceIamBindingArrayOutput struct{ *pulumi.OutputState }

func (ServiceIamBindingArrayOutput) ElementType

func (ServiceIamBindingArrayOutput) Index

func (ServiceIamBindingArrayOutput) ToOutput added in v6.65.1

func (ServiceIamBindingArrayOutput) ToServiceIamBindingArrayOutput

func (o ServiceIamBindingArrayOutput) ToServiceIamBindingArrayOutput() ServiceIamBindingArrayOutput

func (ServiceIamBindingArrayOutput) ToServiceIamBindingArrayOutputWithContext

func (o ServiceIamBindingArrayOutput) ToServiceIamBindingArrayOutputWithContext(ctx context.Context) ServiceIamBindingArrayOutput

type ServiceIamBindingCondition

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

type ServiceIamBindingConditionArgs

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

func (ServiceIamBindingConditionArgs) ElementType

func (ServiceIamBindingConditionArgs) ToOutput added in v6.65.1

func (ServiceIamBindingConditionArgs) ToServiceIamBindingConditionOutput

func (i ServiceIamBindingConditionArgs) ToServiceIamBindingConditionOutput() ServiceIamBindingConditionOutput

func (ServiceIamBindingConditionArgs) ToServiceIamBindingConditionOutputWithContext

func (i ServiceIamBindingConditionArgs) ToServiceIamBindingConditionOutputWithContext(ctx context.Context) ServiceIamBindingConditionOutput

func (ServiceIamBindingConditionArgs) ToServiceIamBindingConditionPtrOutput

func (i ServiceIamBindingConditionArgs) ToServiceIamBindingConditionPtrOutput() ServiceIamBindingConditionPtrOutput

func (ServiceIamBindingConditionArgs) ToServiceIamBindingConditionPtrOutputWithContext

func (i ServiceIamBindingConditionArgs) ToServiceIamBindingConditionPtrOutputWithContext(ctx context.Context) ServiceIamBindingConditionPtrOutput

type ServiceIamBindingConditionInput

type ServiceIamBindingConditionInput interface {
	pulumi.Input

	ToServiceIamBindingConditionOutput() ServiceIamBindingConditionOutput
	ToServiceIamBindingConditionOutputWithContext(context.Context) ServiceIamBindingConditionOutput
}

ServiceIamBindingConditionInput is an input type that accepts ServiceIamBindingConditionArgs and ServiceIamBindingConditionOutput values. You can construct a concrete instance of `ServiceIamBindingConditionInput` via:

ServiceIamBindingConditionArgs{...}

type ServiceIamBindingConditionOutput

type ServiceIamBindingConditionOutput struct{ *pulumi.OutputState }

func (ServiceIamBindingConditionOutput) Description

func (ServiceIamBindingConditionOutput) ElementType

func (ServiceIamBindingConditionOutput) Expression

func (ServiceIamBindingConditionOutput) Title

func (ServiceIamBindingConditionOutput) ToOutput added in v6.65.1

func (ServiceIamBindingConditionOutput) ToServiceIamBindingConditionOutput

func (o ServiceIamBindingConditionOutput) ToServiceIamBindingConditionOutput() ServiceIamBindingConditionOutput

func (ServiceIamBindingConditionOutput) ToServiceIamBindingConditionOutputWithContext

func (o ServiceIamBindingConditionOutput) ToServiceIamBindingConditionOutputWithContext(ctx context.Context) ServiceIamBindingConditionOutput

func (ServiceIamBindingConditionOutput) ToServiceIamBindingConditionPtrOutput

func (o ServiceIamBindingConditionOutput) ToServiceIamBindingConditionPtrOutput() ServiceIamBindingConditionPtrOutput

func (ServiceIamBindingConditionOutput) ToServiceIamBindingConditionPtrOutputWithContext

func (o ServiceIamBindingConditionOutput) ToServiceIamBindingConditionPtrOutputWithContext(ctx context.Context) ServiceIamBindingConditionPtrOutput

type ServiceIamBindingConditionPtrInput

type ServiceIamBindingConditionPtrInput interface {
	pulumi.Input

	ToServiceIamBindingConditionPtrOutput() ServiceIamBindingConditionPtrOutput
	ToServiceIamBindingConditionPtrOutputWithContext(context.Context) ServiceIamBindingConditionPtrOutput
}

ServiceIamBindingConditionPtrInput is an input type that accepts ServiceIamBindingConditionArgs, ServiceIamBindingConditionPtr and ServiceIamBindingConditionPtrOutput values. You can construct a concrete instance of `ServiceIamBindingConditionPtrInput` via:

        ServiceIamBindingConditionArgs{...}

or:

        nil

type ServiceIamBindingConditionPtrOutput

type ServiceIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (ServiceIamBindingConditionPtrOutput) Description

func (ServiceIamBindingConditionPtrOutput) Elem

func (ServiceIamBindingConditionPtrOutput) ElementType

func (ServiceIamBindingConditionPtrOutput) Expression

func (ServiceIamBindingConditionPtrOutput) Title

func (ServiceIamBindingConditionPtrOutput) ToOutput added in v6.65.1

func (ServiceIamBindingConditionPtrOutput) ToServiceIamBindingConditionPtrOutput

func (o ServiceIamBindingConditionPtrOutput) ToServiceIamBindingConditionPtrOutput() ServiceIamBindingConditionPtrOutput

func (ServiceIamBindingConditionPtrOutput) ToServiceIamBindingConditionPtrOutputWithContext

func (o ServiceIamBindingConditionPtrOutput) ToServiceIamBindingConditionPtrOutputWithContext(ctx context.Context) ServiceIamBindingConditionPtrOutput

type ServiceIamBindingInput

type ServiceIamBindingInput interface {
	pulumi.Input

	ToServiceIamBindingOutput() ServiceIamBindingOutput
	ToServiceIamBindingOutputWithContext(ctx context.Context) ServiceIamBindingOutput
}

type ServiceIamBindingMap

type ServiceIamBindingMap map[string]ServiceIamBindingInput

func (ServiceIamBindingMap) ElementType

func (ServiceIamBindingMap) ElementType() reflect.Type

func (ServiceIamBindingMap) ToOutput added in v6.65.1

func (ServiceIamBindingMap) ToServiceIamBindingMapOutput

func (i ServiceIamBindingMap) ToServiceIamBindingMapOutput() ServiceIamBindingMapOutput

func (ServiceIamBindingMap) ToServiceIamBindingMapOutputWithContext

func (i ServiceIamBindingMap) ToServiceIamBindingMapOutputWithContext(ctx context.Context) ServiceIamBindingMapOutput

type ServiceIamBindingMapInput

type ServiceIamBindingMapInput interface {
	pulumi.Input

	ToServiceIamBindingMapOutput() ServiceIamBindingMapOutput
	ToServiceIamBindingMapOutputWithContext(context.Context) ServiceIamBindingMapOutput
}

ServiceIamBindingMapInput is an input type that accepts ServiceIamBindingMap and ServiceIamBindingMapOutput values. You can construct a concrete instance of `ServiceIamBindingMapInput` via:

ServiceIamBindingMap{ "key": ServiceIamBindingArgs{...} }

type ServiceIamBindingMapOutput

type ServiceIamBindingMapOutput struct{ *pulumi.OutputState }

func (ServiceIamBindingMapOutput) ElementType

func (ServiceIamBindingMapOutput) ElementType() reflect.Type

func (ServiceIamBindingMapOutput) MapIndex

func (ServiceIamBindingMapOutput) ToOutput added in v6.65.1

func (ServiceIamBindingMapOutput) ToServiceIamBindingMapOutput

func (o ServiceIamBindingMapOutput) ToServiceIamBindingMapOutput() ServiceIamBindingMapOutput

func (ServiceIamBindingMapOutput) ToServiceIamBindingMapOutputWithContext

func (o ServiceIamBindingMapOutput) ToServiceIamBindingMapOutputWithContext(ctx context.Context) ServiceIamBindingMapOutput

type ServiceIamBindingOutput

type ServiceIamBindingOutput struct{ *pulumi.OutputState }

func (ServiceIamBindingOutput) Condition added in v6.23.0

func (ServiceIamBindingOutput) ElementType

func (ServiceIamBindingOutput) ElementType() reflect.Type

func (ServiceIamBindingOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (ServiceIamBindingOutput) Members added in v6.23.0

func (ServiceIamBindingOutput) Role added in v6.23.0

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

func (ServiceIamBindingOutput) ServiceName added in v6.23.0

func (ServiceIamBindingOutput) ToOutput added in v6.65.1

func (ServiceIamBindingOutput) ToServiceIamBindingOutput

func (o ServiceIamBindingOutput) ToServiceIamBindingOutput() ServiceIamBindingOutput

func (ServiceIamBindingOutput) ToServiceIamBindingOutputWithContext

func (o ServiceIamBindingOutput) ToServiceIamBindingOutputWithContext(ctx context.Context) ServiceIamBindingOutput

type ServiceIamBindingState

type ServiceIamBindingState struct {
	Condition ServiceIamBindingConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringPtrInput
	Members pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `endpoints.ServiceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role        pulumi.StringPtrInput
	ServiceName pulumi.StringPtrInput
}

func (ServiceIamBindingState) ElementType

func (ServiceIamBindingState) ElementType() reflect.Type

type ServiceIamMember

type ServiceIamMember struct {
	pulumi.CustomResourceState

	Condition ServiceIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	Member pulumi.StringOutput `pulumi:"member"`
	// The role that should be applied. Only one
	// `endpoints.ServiceIamBinding` 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"`
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

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

* `endpoints.ServiceIamPolicy`: Authoritative. Sets the IAM policy for the service and replaces any existing policy already attached. * `endpoints.ServiceIamBinding`: 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 service are preserved. * `endpoints.ServiceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the service are preserved.

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

* `endpoints.ServiceIamPolicy`: Retrieves the IAM policy for the service

> **Note:** `endpoints.ServiceIamPolicy` **cannot** be used in conjunction with `endpoints.ServiceIamBinding` and `endpoints.ServiceIamMember` or they will fight over what your policy should be.

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

## google\_endpoints\_service\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/endpoints"
"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 = endpoints.NewServiceIamPolicy(ctx, "policy", &endpoints.ServiceIamPolicyArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_endpoints\_service\_iam\_binding

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := endpoints.NewServiceIamBinding(ctx, "binding", &endpoints.ServiceIamBindingArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_endpoints\_service\_iam\_member

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := endpoints.NewServiceIamMember(ctx, "member", &endpoints.ServiceIamMemberArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* services/{{service_name}} * {{service_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Endpoints service 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:endpoints/serviceIamMember:ServiceIamMember editor "services/{{service_name}} 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:endpoints/serviceIamMember:ServiceIamMember editor "services/{{service_name}} roles/viewer"

```

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

```sh

$ pulumi import gcp:endpoints/serviceIamMember:ServiceIamMember editor services/{{service_name}}

```

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

func GetServiceIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServiceIamMemberState, opts ...pulumi.ResourceOption) (*ServiceIamMember, error)

GetServiceIamMember gets an existing ServiceIamMember 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 NewServiceIamMember

func NewServiceIamMember(ctx *pulumi.Context,
	name string, args *ServiceIamMemberArgs, opts ...pulumi.ResourceOption) (*ServiceIamMember, error)

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

func (*ServiceIamMember) ElementType

func (*ServiceIamMember) ElementType() reflect.Type

func (*ServiceIamMember) ToOutput added in v6.65.1

func (*ServiceIamMember) ToServiceIamMemberOutput

func (i *ServiceIamMember) ToServiceIamMemberOutput() ServiceIamMemberOutput

func (*ServiceIamMember) ToServiceIamMemberOutputWithContext

func (i *ServiceIamMember) ToServiceIamMemberOutputWithContext(ctx context.Context) ServiceIamMemberOutput

type ServiceIamMemberArgs

type ServiceIamMemberArgs struct {
	Condition ServiceIamMemberConditionPtrInput
	Member    pulumi.StringInput
	// The role that should be applied. Only one
	// `endpoints.ServiceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role        pulumi.StringInput
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a ServiceIamMember resource.

func (ServiceIamMemberArgs) ElementType

func (ServiceIamMemberArgs) ElementType() reflect.Type

type ServiceIamMemberArray

type ServiceIamMemberArray []ServiceIamMemberInput

func (ServiceIamMemberArray) ElementType

func (ServiceIamMemberArray) ElementType() reflect.Type

func (ServiceIamMemberArray) ToOutput added in v6.65.1

func (ServiceIamMemberArray) ToServiceIamMemberArrayOutput

func (i ServiceIamMemberArray) ToServiceIamMemberArrayOutput() ServiceIamMemberArrayOutput

func (ServiceIamMemberArray) ToServiceIamMemberArrayOutputWithContext

func (i ServiceIamMemberArray) ToServiceIamMemberArrayOutputWithContext(ctx context.Context) ServiceIamMemberArrayOutput

type ServiceIamMemberArrayInput

type ServiceIamMemberArrayInput interface {
	pulumi.Input

	ToServiceIamMemberArrayOutput() ServiceIamMemberArrayOutput
	ToServiceIamMemberArrayOutputWithContext(context.Context) ServiceIamMemberArrayOutput
}

ServiceIamMemberArrayInput is an input type that accepts ServiceIamMemberArray and ServiceIamMemberArrayOutput values. You can construct a concrete instance of `ServiceIamMemberArrayInput` via:

ServiceIamMemberArray{ ServiceIamMemberArgs{...} }

type ServiceIamMemberArrayOutput

type ServiceIamMemberArrayOutput struct{ *pulumi.OutputState }

func (ServiceIamMemberArrayOutput) ElementType

func (ServiceIamMemberArrayOutput) Index

func (ServiceIamMemberArrayOutput) ToOutput added in v6.65.1

func (ServiceIamMemberArrayOutput) ToServiceIamMemberArrayOutput

func (o ServiceIamMemberArrayOutput) ToServiceIamMemberArrayOutput() ServiceIamMemberArrayOutput

func (ServiceIamMemberArrayOutput) ToServiceIamMemberArrayOutputWithContext

func (o ServiceIamMemberArrayOutput) ToServiceIamMemberArrayOutputWithContext(ctx context.Context) ServiceIamMemberArrayOutput

type ServiceIamMemberCondition

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

type ServiceIamMemberConditionArgs

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

func (ServiceIamMemberConditionArgs) ElementType

func (ServiceIamMemberConditionArgs) ToOutput added in v6.65.1

func (ServiceIamMemberConditionArgs) ToServiceIamMemberConditionOutput

func (i ServiceIamMemberConditionArgs) ToServiceIamMemberConditionOutput() ServiceIamMemberConditionOutput

func (ServiceIamMemberConditionArgs) ToServiceIamMemberConditionOutputWithContext

func (i ServiceIamMemberConditionArgs) ToServiceIamMemberConditionOutputWithContext(ctx context.Context) ServiceIamMemberConditionOutput

func (ServiceIamMemberConditionArgs) ToServiceIamMemberConditionPtrOutput

func (i ServiceIamMemberConditionArgs) ToServiceIamMemberConditionPtrOutput() ServiceIamMemberConditionPtrOutput

func (ServiceIamMemberConditionArgs) ToServiceIamMemberConditionPtrOutputWithContext

func (i ServiceIamMemberConditionArgs) ToServiceIamMemberConditionPtrOutputWithContext(ctx context.Context) ServiceIamMemberConditionPtrOutput

type ServiceIamMemberConditionInput

type ServiceIamMemberConditionInput interface {
	pulumi.Input

	ToServiceIamMemberConditionOutput() ServiceIamMemberConditionOutput
	ToServiceIamMemberConditionOutputWithContext(context.Context) ServiceIamMemberConditionOutput
}

ServiceIamMemberConditionInput is an input type that accepts ServiceIamMemberConditionArgs and ServiceIamMemberConditionOutput values. You can construct a concrete instance of `ServiceIamMemberConditionInput` via:

ServiceIamMemberConditionArgs{...}

type ServiceIamMemberConditionOutput

type ServiceIamMemberConditionOutput struct{ *pulumi.OutputState }

func (ServiceIamMemberConditionOutput) Description

func (ServiceIamMemberConditionOutput) ElementType

func (ServiceIamMemberConditionOutput) Expression

func (ServiceIamMemberConditionOutput) Title

func (ServiceIamMemberConditionOutput) ToOutput added in v6.65.1

func (ServiceIamMemberConditionOutput) ToServiceIamMemberConditionOutput

func (o ServiceIamMemberConditionOutput) ToServiceIamMemberConditionOutput() ServiceIamMemberConditionOutput

func (ServiceIamMemberConditionOutput) ToServiceIamMemberConditionOutputWithContext

func (o ServiceIamMemberConditionOutput) ToServiceIamMemberConditionOutputWithContext(ctx context.Context) ServiceIamMemberConditionOutput

func (ServiceIamMemberConditionOutput) ToServiceIamMemberConditionPtrOutput

func (o ServiceIamMemberConditionOutput) ToServiceIamMemberConditionPtrOutput() ServiceIamMemberConditionPtrOutput

func (ServiceIamMemberConditionOutput) ToServiceIamMemberConditionPtrOutputWithContext

func (o ServiceIamMemberConditionOutput) ToServiceIamMemberConditionPtrOutputWithContext(ctx context.Context) ServiceIamMemberConditionPtrOutput

type ServiceIamMemberConditionPtrInput

type ServiceIamMemberConditionPtrInput interface {
	pulumi.Input

	ToServiceIamMemberConditionPtrOutput() ServiceIamMemberConditionPtrOutput
	ToServiceIamMemberConditionPtrOutputWithContext(context.Context) ServiceIamMemberConditionPtrOutput
}

ServiceIamMemberConditionPtrInput is an input type that accepts ServiceIamMemberConditionArgs, ServiceIamMemberConditionPtr and ServiceIamMemberConditionPtrOutput values. You can construct a concrete instance of `ServiceIamMemberConditionPtrInput` via:

        ServiceIamMemberConditionArgs{...}

or:

        nil

type ServiceIamMemberConditionPtrOutput

type ServiceIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (ServiceIamMemberConditionPtrOutput) Description

func (ServiceIamMemberConditionPtrOutput) Elem

func (ServiceIamMemberConditionPtrOutput) ElementType

func (ServiceIamMemberConditionPtrOutput) Expression

func (ServiceIamMemberConditionPtrOutput) Title

func (ServiceIamMemberConditionPtrOutput) ToOutput added in v6.65.1

func (ServiceIamMemberConditionPtrOutput) ToServiceIamMemberConditionPtrOutput

func (o ServiceIamMemberConditionPtrOutput) ToServiceIamMemberConditionPtrOutput() ServiceIamMemberConditionPtrOutput

func (ServiceIamMemberConditionPtrOutput) ToServiceIamMemberConditionPtrOutputWithContext

func (o ServiceIamMemberConditionPtrOutput) ToServiceIamMemberConditionPtrOutputWithContext(ctx context.Context) ServiceIamMemberConditionPtrOutput

type ServiceIamMemberInput

type ServiceIamMemberInput interface {
	pulumi.Input

	ToServiceIamMemberOutput() ServiceIamMemberOutput
	ToServiceIamMemberOutputWithContext(ctx context.Context) ServiceIamMemberOutput
}

type ServiceIamMemberMap

type ServiceIamMemberMap map[string]ServiceIamMemberInput

func (ServiceIamMemberMap) ElementType

func (ServiceIamMemberMap) ElementType() reflect.Type

func (ServiceIamMemberMap) ToOutput added in v6.65.1

func (ServiceIamMemberMap) ToServiceIamMemberMapOutput

func (i ServiceIamMemberMap) ToServiceIamMemberMapOutput() ServiceIamMemberMapOutput

func (ServiceIamMemberMap) ToServiceIamMemberMapOutputWithContext

func (i ServiceIamMemberMap) ToServiceIamMemberMapOutputWithContext(ctx context.Context) ServiceIamMemberMapOutput

type ServiceIamMemberMapInput

type ServiceIamMemberMapInput interface {
	pulumi.Input

	ToServiceIamMemberMapOutput() ServiceIamMemberMapOutput
	ToServiceIamMemberMapOutputWithContext(context.Context) ServiceIamMemberMapOutput
}

ServiceIamMemberMapInput is an input type that accepts ServiceIamMemberMap and ServiceIamMemberMapOutput values. You can construct a concrete instance of `ServiceIamMemberMapInput` via:

ServiceIamMemberMap{ "key": ServiceIamMemberArgs{...} }

type ServiceIamMemberMapOutput

type ServiceIamMemberMapOutput struct{ *pulumi.OutputState }

func (ServiceIamMemberMapOutput) ElementType

func (ServiceIamMemberMapOutput) ElementType() reflect.Type

func (ServiceIamMemberMapOutput) MapIndex

func (ServiceIamMemberMapOutput) ToOutput added in v6.65.1

func (ServiceIamMemberMapOutput) ToServiceIamMemberMapOutput

func (o ServiceIamMemberMapOutput) ToServiceIamMemberMapOutput() ServiceIamMemberMapOutput

func (ServiceIamMemberMapOutput) ToServiceIamMemberMapOutputWithContext

func (o ServiceIamMemberMapOutput) ToServiceIamMemberMapOutputWithContext(ctx context.Context) ServiceIamMemberMapOutput

type ServiceIamMemberOutput

type ServiceIamMemberOutput struct{ *pulumi.OutputState }

func (ServiceIamMemberOutput) Condition added in v6.23.0

func (ServiceIamMemberOutput) ElementType

func (ServiceIamMemberOutput) ElementType() reflect.Type

func (ServiceIamMemberOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (ServiceIamMemberOutput) Member added in v6.23.0

func (ServiceIamMemberOutput) Role added in v6.23.0

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

func (ServiceIamMemberOutput) ServiceName added in v6.23.0

func (o ServiceIamMemberOutput) ServiceName() pulumi.StringOutput

func (ServiceIamMemberOutput) ToOutput added in v6.65.1

func (ServiceIamMemberOutput) ToServiceIamMemberOutput

func (o ServiceIamMemberOutput) ToServiceIamMemberOutput() ServiceIamMemberOutput

func (ServiceIamMemberOutput) ToServiceIamMemberOutputWithContext

func (o ServiceIamMemberOutput) ToServiceIamMemberOutputWithContext(ctx context.Context) ServiceIamMemberOutput

type ServiceIamMemberState

type ServiceIamMemberState struct {
	Condition ServiceIamMemberConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringPtrInput
	Member pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `endpoints.ServiceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role        pulumi.StringPtrInput
	ServiceName pulumi.StringPtrInput
}

func (ServiceIamMemberState) ElementType

func (ServiceIamMemberState) ElementType() reflect.Type

type ServiceIamPolicy

type ServiceIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  pulumi.StringOutput `pulumi:"policyData"`
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

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

* `endpoints.ServiceIamPolicy`: Authoritative. Sets the IAM policy for the service and replaces any existing policy already attached. * `endpoints.ServiceIamBinding`: 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 service are preserved. * `endpoints.ServiceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the service are preserved.

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

* `endpoints.ServiceIamPolicy`: Retrieves the IAM policy for the service

> **Note:** `endpoints.ServiceIamPolicy` **cannot** be used in conjunction with `endpoints.ServiceIamBinding` and `endpoints.ServiceIamMember` or they will fight over what your policy should be.

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

## google\_endpoints\_service\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/endpoints"
"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 = endpoints.NewServiceIamPolicy(ctx, "policy", &endpoints.ServiceIamPolicyArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_endpoints\_service\_iam\_binding

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := endpoints.NewServiceIamBinding(ctx, "binding", &endpoints.ServiceIamBindingArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_endpoints\_service\_iam\_member

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := endpoints.NewServiceIamMember(ctx, "member", &endpoints.ServiceIamMemberArgs{
			ServiceName: pulumi.Any(google_endpoints_service.Endpoints_service.Service_name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* services/{{service_name}} * {{service_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Endpoints service 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:endpoints/serviceIamPolicy:ServiceIamPolicy editor "services/{{service_name}} 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:endpoints/serviceIamPolicy:ServiceIamPolicy editor "services/{{service_name}} roles/viewer"

```

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

```sh

$ pulumi import gcp:endpoints/serviceIamPolicy:ServiceIamPolicy editor services/{{service_name}}

```

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

func GetServiceIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServiceIamPolicyState, opts ...pulumi.ResourceOption) (*ServiceIamPolicy, error)

GetServiceIamPolicy gets an existing ServiceIamPolicy 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 NewServiceIamPolicy

func NewServiceIamPolicy(ctx *pulumi.Context,
	name string, args *ServiceIamPolicyArgs, opts ...pulumi.ResourceOption) (*ServiceIamPolicy, error)

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

func (*ServiceIamPolicy) ElementType

func (*ServiceIamPolicy) ElementType() reflect.Type

func (*ServiceIamPolicy) ToOutput added in v6.65.1

func (*ServiceIamPolicy) ToServiceIamPolicyOutput

func (i *ServiceIamPolicy) ToServiceIamPolicyOutput() ServiceIamPolicyOutput

func (*ServiceIamPolicy) ToServiceIamPolicyOutputWithContext

func (i *ServiceIamPolicy) ToServiceIamPolicyOutputWithContext(ctx context.Context) ServiceIamPolicyOutput

type ServiceIamPolicyArgs

type ServiceIamPolicyArgs struct {
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  pulumi.StringInput
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a ServiceIamPolicy resource.

func (ServiceIamPolicyArgs) ElementType

func (ServiceIamPolicyArgs) ElementType() reflect.Type

type ServiceIamPolicyArray

type ServiceIamPolicyArray []ServiceIamPolicyInput

func (ServiceIamPolicyArray) ElementType

func (ServiceIamPolicyArray) ElementType() reflect.Type

func (ServiceIamPolicyArray) ToOutput added in v6.65.1

func (ServiceIamPolicyArray) ToServiceIamPolicyArrayOutput

func (i ServiceIamPolicyArray) ToServiceIamPolicyArrayOutput() ServiceIamPolicyArrayOutput

func (ServiceIamPolicyArray) ToServiceIamPolicyArrayOutputWithContext

func (i ServiceIamPolicyArray) ToServiceIamPolicyArrayOutputWithContext(ctx context.Context) ServiceIamPolicyArrayOutput

type ServiceIamPolicyArrayInput

type ServiceIamPolicyArrayInput interface {
	pulumi.Input

	ToServiceIamPolicyArrayOutput() ServiceIamPolicyArrayOutput
	ToServiceIamPolicyArrayOutputWithContext(context.Context) ServiceIamPolicyArrayOutput
}

ServiceIamPolicyArrayInput is an input type that accepts ServiceIamPolicyArray and ServiceIamPolicyArrayOutput values. You can construct a concrete instance of `ServiceIamPolicyArrayInput` via:

ServiceIamPolicyArray{ ServiceIamPolicyArgs{...} }

type ServiceIamPolicyArrayOutput

type ServiceIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (ServiceIamPolicyArrayOutput) ElementType

func (ServiceIamPolicyArrayOutput) Index

func (ServiceIamPolicyArrayOutput) ToOutput added in v6.65.1

func (ServiceIamPolicyArrayOutput) ToServiceIamPolicyArrayOutput

func (o ServiceIamPolicyArrayOutput) ToServiceIamPolicyArrayOutput() ServiceIamPolicyArrayOutput

func (ServiceIamPolicyArrayOutput) ToServiceIamPolicyArrayOutputWithContext

func (o ServiceIamPolicyArrayOutput) ToServiceIamPolicyArrayOutputWithContext(ctx context.Context) ServiceIamPolicyArrayOutput

type ServiceIamPolicyInput

type ServiceIamPolicyInput interface {
	pulumi.Input

	ToServiceIamPolicyOutput() ServiceIamPolicyOutput
	ToServiceIamPolicyOutputWithContext(ctx context.Context) ServiceIamPolicyOutput
}

type ServiceIamPolicyMap

type ServiceIamPolicyMap map[string]ServiceIamPolicyInput

func (ServiceIamPolicyMap) ElementType

func (ServiceIamPolicyMap) ElementType() reflect.Type

func (ServiceIamPolicyMap) ToOutput added in v6.65.1

func (ServiceIamPolicyMap) ToServiceIamPolicyMapOutput

func (i ServiceIamPolicyMap) ToServiceIamPolicyMapOutput() ServiceIamPolicyMapOutput

func (ServiceIamPolicyMap) ToServiceIamPolicyMapOutputWithContext

func (i ServiceIamPolicyMap) ToServiceIamPolicyMapOutputWithContext(ctx context.Context) ServiceIamPolicyMapOutput

type ServiceIamPolicyMapInput

type ServiceIamPolicyMapInput interface {
	pulumi.Input

	ToServiceIamPolicyMapOutput() ServiceIamPolicyMapOutput
	ToServiceIamPolicyMapOutputWithContext(context.Context) ServiceIamPolicyMapOutput
}

ServiceIamPolicyMapInput is an input type that accepts ServiceIamPolicyMap and ServiceIamPolicyMapOutput values. You can construct a concrete instance of `ServiceIamPolicyMapInput` via:

ServiceIamPolicyMap{ "key": ServiceIamPolicyArgs{...} }

type ServiceIamPolicyMapOutput

type ServiceIamPolicyMapOutput struct{ *pulumi.OutputState }

func (ServiceIamPolicyMapOutput) ElementType

func (ServiceIamPolicyMapOutput) ElementType() reflect.Type

func (ServiceIamPolicyMapOutput) MapIndex

func (ServiceIamPolicyMapOutput) ToOutput added in v6.65.1

func (ServiceIamPolicyMapOutput) ToServiceIamPolicyMapOutput

func (o ServiceIamPolicyMapOutput) ToServiceIamPolicyMapOutput() ServiceIamPolicyMapOutput

func (ServiceIamPolicyMapOutput) ToServiceIamPolicyMapOutputWithContext

func (o ServiceIamPolicyMapOutput) ToServiceIamPolicyMapOutputWithContext(ctx context.Context) ServiceIamPolicyMapOutput

type ServiceIamPolicyOutput

type ServiceIamPolicyOutput struct{ *pulumi.OutputState }

func (ServiceIamPolicyOutput) ElementType

func (ServiceIamPolicyOutput) ElementType() reflect.Type

func (ServiceIamPolicyOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (ServiceIamPolicyOutput) PolicyData added in v6.23.0

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

func (ServiceIamPolicyOutput) ServiceName added in v6.23.0

func (o ServiceIamPolicyOutput) ServiceName() pulumi.StringOutput

func (ServiceIamPolicyOutput) ToOutput added in v6.65.1

func (ServiceIamPolicyOutput) ToServiceIamPolicyOutput

func (o ServiceIamPolicyOutput) ToServiceIamPolicyOutput() ServiceIamPolicyOutput

func (ServiceIamPolicyOutput) ToServiceIamPolicyOutputWithContext

func (o ServiceIamPolicyOutput) ToServiceIamPolicyOutputWithContext(ctx context.Context) ServiceIamPolicyOutput

type ServiceIamPolicyState

type ServiceIamPolicyState struct {
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  pulumi.StringPtrInput
	ServiceName pulumi.StringPtrInput
}

func (ServiceIamPolicyState) ElementType

func (ServiceIamPolicyState) ElementType() reflect.Type

type ServiceInput

type ServiceInput interface {
	pulumi.Input

	ToServiceOutput() ServiceOutput
	ToServiceOutputWithContext(ctx context.Context) ServiceOutput
}

type ServiceMap

type ServiceMap map[string]ServiceInput

func (ServiceMap) ElementType

func (ServiceMap) ElementType() reflect.Type

func (ServiceMap) ToOutput added in v6.65.1

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

func (ServiceMap) ToServiceMapOutput

func (i ServiceMap) ToServiceMapOutput() ServiceMapOutput

func (ServiceMap) ToServiceMapOutputWithContext

func (i ServiceMap) ToServiceMapOutputWithContext(ctx context.Context) ServiceMapOutput

type ServiceMapInput

type ServiceMapInput interface {
	pulumi.Input

	ToServiceMapOutput() ServiceMapOutput
	ToServiceMapOutputWithContext(context.Context) ServiceMapOutput
}

ServiceMapInput is an input type that accepts ServiceMap and ServiceMapOutput values. You can construct a concrete instance of `ServiceMapInput` via:

ServiceMap{ "key": ServiceArgs{...} }

type ServiceMapOutput

type ServiceMapOutput struct{ *pulumi.OutputState }

func (ServiceMapOutput) ElementType

func (ServiceMapOutput) ElementType() reflect.Type

func (ServiceMapOutput) MapIndex

func (ServiceMapOutput) ToOutput added in v6.65.1

func (ServiceMapOutput) ToServiceMapOutput

func (o ServiceMapOutput) ToServiceMapOutput() ServiceMapOutput

func (ServiceMapOutput) ToServiceMapOutputWithContext

func (o ServiceMapOutput) ToServiceMapOutputWithContext(ctx context.Context) ServiceMapOutput

type ServiceOutput

type ServiceOutput struct{ *pulumi.OutputState }

func (ServiceOutput) Apis added in v6.23.0

A list of API objects; structure is documented below.

func (ServiceOutput) ConfigId added in v6.23.0

func (o ServiceOutput) ConfigId() pulumi.StringOutput

The autogenerated ID for the configuration that is rolled out as part of the creation of this resource. Must be provided to compute engine instances as a tag.

func (ServiceOutput) DnsAddress added in v6.23.0

func (o ServiceOutput) DnsAddress() pulumi.StringOutput

The address at which the service can be found - usually the same as the service name.

func (ServiceOutput) ElementType

func (ServiceOutput) ElementType() reflect.Type

func (ServiceOutput) Endpoints added in v6.23.0

A list of Endpoint objects; structure is documented below.

func (ServiceOutput) GrpcConfig added in v6.23.0

func (o ServiceOutput) GrpcConfig() pulumi.StringPtrOutput

The full text of the Service Config YAML file (Example located [here](https://github.com/GoogleCloudPlatform/python-docs-samples/blob/main/endpoints/bookstore-grpc/api_config.yaml)). If provided, must also provide `protocOutputBase64`. `openApi` config must *not* be provided.

func (ServiceOutput) OpenapiConfig added in v6.23.0

func (o ServiceOutput) OpenapiConfig() pulumi.StringPtrOutput

The full text of the OpenAPI YAML configuration as described [here](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/2.0.md). Either this, or *both* of `grpcConfig` and `protocOutputBase64` must be specified.

func (ServiceOutput) Project added in v6.23.0

func (o ServiceOutput) Project() pulumi.StringOutput

The project ID that the service belongs to. If not provided, provider project is used.

func (ServiceOutput) ProtocOutputBase64 added in v6.23.0

func (o ServiceOutput) ProtocOutputBase64() pulumi.StringPtrOutput

The full contents of the Service Descriptor File generated by protoc. This should be a compiled .pb file, base64-encoded.

func (ServiceOutput) ServiceName added in v6.23.0

func (o ServiceOutput) ServiceName() pulumi.StringOutput

The name of the service. Usually of the form `$apiname.endpoints.$projectid.cloud.goog`.

***

func (ServiceOutput) ToOutput added in v6.65.1

func (o ServiceOutput) ToOutput(ctx context.Context) pulumix.Output[*Service]

func (ServiceOutput) ToServiceOutput

func (o ServiceOutput) ToServiceOutput() ServiceOutput

func (ServiceOutput) ToServiceOutputWithContext

func (o ServiceOutput) ToServiceOutputWithContext(ctx context.Context) ServiceOutput

type ServiceState

type ServiceState struct {
	// A list of API objects; structure is documented below.
	Apis ServiceApiArrayInput
	// The autogenerated ID for the configuration that is rolled out as part of the creation of this resource.  Must be provided to compute engine instances as a tag.
	ConfigId pulumi.StringPtrInput
	// The address at which the service can be found - usually the same as the service name.
	DnsAddress pulumi.StringPtrInput
	// A list of Endpoint objects; structure is documented below.
	Endpoints ServiceEndpointArrayInput
	// The full text of the Service Config YAML file (Example located [here](https://github.com/GoogleCloudPlatform/python-docs-samples/blob/main/endpoints/bookstore-grpc/api_config.yaml)).
	// If provided, must also provide `protocOutputBase64`.  `openApi` config must *not* be provided.
	GrpcConfig pulumi.StringPtrInput
	// The full text of the OpenAPI YAML configuration as described [here](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/2.0.md).
	// Either this, or *both* of `grpcConfig` and `protocOutputBase64` must be specified.
	OpenapiConfig pulumi.StringPtrInput
	// The project ID that the service belongs to.  If not provided, provider project is used.
	Project pulumi.StringPtrInput
	// The full contents of the Service Descriptor File generated by protoc.  This should be a compiled .pb file, base64-encoded.
	ProtocOutputBase64 pulumi.StringPtrInput
	// The name of the service.  Usually of the form `$apiname.endpoints.$projectid.cloud.goog`.
	//
	// ***
	ServiceName pulumi.StringPtrInput
}

func (ServiceState) ElementType

func (ServiceState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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