Documentation ¶
Index ¶
- type Database
- func (*Database) ElementType() reflect.Type
- func (i *Database) ToDatabaseOutput() DatabaseOutput
- func (i *Database) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput
- func (i *Database) ToDatabasePtrOutput() DatabasePtrOutput
- func (i *Database) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
- type DatabaseArgs
- type DatabaseArray
- type DatabaseArrayInput
- type DatabaseArrayOutput
- type DatabaseIAMBinding
- func (*DatabaseIAMBinding) ElementType() reflect.Type
- func (i *DatabaseIAMBinding) ToDatabaseIAMBindingOutput() DatabaseIAMBindingOutput
- func (i *DatabaseIAMBinding) ToDatabaseIAMBindingOutputWithContext(ctx context.Context) DatabaseIAMBindingOutput
- func (i *DatabaseIAMBinding) ToDatabaseIAMBindingPtrOutput() DatabaseIAMBindingPtrOutput
- func (i *DatabaseIAMBinding) ToDatabaseIAMBindingPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingPtrOutput
- type DatabaseIAMBindingArgs
- type DatabaseIAMBindingArray
- type DatabaseIAMBindingArrayInput
- type DatabaseIAMBindingArrayOutput
- func (DatabaseIAMBindingArrayOutput) ElementType() reflect.Type
- func (o DatabaseIAMBindingArrayOutput) Index(i pulumi.IntInput) DatabaseIAMBindingOutput
- func (o DatabaseIAMBindingArrayOutput) ToDatabaseIAMBindingArrayOutput() DatabaseIAMBindingArrayOutput
- func (o DatabaseIAMBindingArrayOutput) ToDatabaseIAMBindingArrayOutputWithContext(ctx context.Context) DatabaseIAMBindingArrayOutput
- type DatabaseIAMBindingCondition
- type DatabaseIAMBindingConditionArgs
- func (DatabaseIAMBindingConditionArgs) ElementType() reflect.Type
- func (i DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionOutput() DatabaseIAMBindingConditionOutput
- func (i DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionOutput
- func (i DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionPtrOutput() DatabaseIAMBindingConditionPtrOutput
- func (i DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionPtrOutput
- type DatabaseIAMBindingConditionInput
- type DatabaseIAMBindingConditionOutput
- func (o DatabaseIAMBindingConditionOutput) Description() pulumi.StringPtrOutput
- func (DatabaseIAMBindingConditionOutput) ElementType() reflect.Type
- func (o DatabaseIAMBindingConditionOutput) Expression() pulumi.StringOutput
- func (o DatabaseIAMBindingConditionOutput) Title() pulumi.StringOutput
- func (o DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionOutput() DatabaseIAMBindingConditionOutput
- func (o DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionOutput
- func (o DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionPtrOutput() DatabaseIAMBindingConditionPtrOutput
- func (o DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionPtrOutput
- type DatabaseIAMBindingConditionPtrInput
- type DatabaseIAMBindingConditionPtrOutput
- func (o DatabaseIAMBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o DatabaseIAMBindingConditionPtrOutput) Elem() DatabaseIAMBindingConditionOutput
- func (DatabaseIAMBindingConditionPtrOutput) ElementType() reflect.Type
- func (o DatabaseIAMBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o DatabaseIAMBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o DatabaseIAMBindingConditionPtrOutput) ToDatabaseIAMBindingConditionPtrOutput() DatabaseIAMBindingConditionPtrOutput
- func (o DatabaseIAMBindingConditionPtrOutput) ToDatabaseIAMBindingConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionPtrOutput
- type DatabaseIAMBindingInput
- type DatabaseIAMBindingMap
- type DatabaseIAMBindingMapInput
- type DatabaseIAMBindingMapOutput
- func (DatabaseIAMBindingMapOutput) ElementType() reflect.Type
- func (o DatabaseIAMBindingMapOutput) MapIndex(k pulumi.StringInput) DatabaseIAMBindingOutput
- func (o DatabaseIAMBindingMapOutput) ToDatabaseIAMBindingMapOutput() DatabaseIAMBindingMapOutput
- func (o DatabaseIAMBindingMapOutput) ToDatabaseIAMBindingMapOutputWithContext(ctx context.Context) DatabaseIAMBindingMapOutput
- type DatabaseIAMBindingOutput
- func (DatabaseIAMBindingOutput) ElementType() reflect.Type
- func (o DatabaseIAMBindingOutput) ToDatabaseIAMBindingOutput() DatabaseIAMBindingOutput
- func (o DatabaseIAMBindingOutput) ToDatabaseIAMBindingOutputWithContext(ctx context.Context) DatabaseIAMBindingOutput
- func (o DatabaseIAMBindingOutput) ToDatabaseIAMBindingPtrOutput() DatabaseIAMBindingPtrOutput
- func (o DatabaseIAMBindingOutput) ToDatabaseIAMBindingPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingPtrOutput
- type DatabaseIAMBindingPtrInput
- type DatabaseIAMBindingPtrOutput
- type DatabaseIAMBindingState
- type DatabaseIAMMember
- func (*DatabaseIAMMember) ElementType() reflect.Type
- func (i *DatabaseIAMMember) ToDatabaseIAMMemberOutput() DatabaseIAMMemberOutput
- func (i *DatabaseIAMMember) ToDatabaseIAMMemberOutputWithContext(ctx context.Context) DatabaseIAMMemberOutput
- func (i *DatabaseIAMMember) ToDatabaseIAMMemberPtrOutput() DatabaseIAMMemberPtrOutput
- func (i *DatabaseIAMMember) ToDatabaseIAMMemberPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberPtrOutput
- type DatabaseIAMMemberArgs
- type DatabaseIAMMemberArray
- type DatabaseIAMMemberArrayInput
- type DatabaseIAMMemberArrayOutput
- func (DatabaseIAMMemberArrayOutput) ElementType() reflect.Type
- func (o DatabaseIAMMemberArrayOutput) Index(i pulumi.IntInput) DatabaseIAMMemberOutput
- func (o DatabaseIAMMemberArrayOutput) ToDatabaseIAMMemberArrayOutput() DatabaseIAMMemberArrayOutput
- func (o DatabaseIAMMemberArrayOutput) ToDatabaseIAMMemberArrayOutputWithContext(ctx context.Context) DatabaseIAMMemberArrayOutput
- type DatabaseIAMMemberCondition
- type DatabaseIAMMemberConditionArgs
- func (DatabaseIAMMemberConditionArgs) ElementType() reflect.Type
- func (i DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionOutput() DatabaseIAMMemberConditionOutput
- func (i DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionOutput
- func (i DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionPtrOutput() DatabaseIAMMemberConditionPtrOutput
- func (i DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionPtrOutput
- type DatabaseIAMMemberConditionInput
- type DatabaseIAMMemberConditionOutput
- func (o DatabaseIAMMemberConditionOutput) Description() pulumi.StringPtrOutput
- func (DatabaseIAMMemberConditionOutput) ElementType() reflect.Type
- func (o DatabaseIAMMemberConditionOutput) Expression() pulumi.StringOutput
- func (o DatabaseIAMMemberConditionOutput) Title() pulumi.StringOutput
- func (o DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionOutput() DatabaseIAMMemberConditionOutput
- func (o DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionOutput
- func (o DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionPtrOutput() DatabaseIAMMemberConditionPtrOutput
- func (o DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionPtrOutput
- type DatabaseIAMMemberConditionPtrInput
- type DatabaseIAMMemberConditionPtrOutput
- func (o DatabaseIAMMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o DatabaseIAMMemberConditionPtrOutput) Elem() DatabaseIAMMemberConditionOutput
- func (DatabaseIAMMemberConditionPtrOutput) ElementType() reflect.Type
- func (o DatabaseIAMMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o DatabaseIAMMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o DatabaseIAMMemberConditionPtrOutput) ToDatabaseIAMMemberConditionPtrOutput() DatabaseIAMMemberConditionPtrOutput
- func (o DatabaseIAMMemberConditionPtrOutput) ToDatabaseIAMMemberConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionPtrOutput
- type DatabaseIAMMemberInput
- type DatabaseIAMMemberMap
- type DatabaseIAMMemberMapInput
- type DatabaseIAMMemberMapOutput
- func (DatabaseIAMMemberMapOutput) ElementType() reflect.Type
- func (o DatabaseIAMMemberMapOutput) MapIndex(k pulumi.StringInput) DatabaseIAMMemberOutput
- func (o DatabaseIAMMemberMapOutput) ToDatabaseIAMMemberMapOutput() DatabaseIAMMemberMapOutput
- func (o DatabaseIAMMemberMapOutput) ToDatabaseIAMMemberMapOutputWithContext(ctx context.Context) DatabaseIAMMemberMapOutput
- type DatabaseIAMMemberOutput
- func (DatabaseIAMMemberOutput) ElementType() reflect.Type
- func (o DatabaseIAMMemberOutput) ToDatabaseIAMMemberOutput() DatabaseIAMMemberOutput
- func (o DatabaseIAMMemberOutput) ToDatabaseIAMMemberOutputWithContext(ctx context.Context) DatabaseIAMMemberOutput
- func (o DatabaseIAMMemberOutput) ToDatabaseIAMMemberPtrOutput() DatabaseIAMMemberPtrOutput
- func (o DatabaseIAMMemberOutput) ToDatabaseIAMMemberPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberPtrOutput
- type DatabaseIAMMemberPtrInput
- type DatabaseIAMMemberPtrOutput
- type DatabaseIAMMemberState
- type DatabaseIAMPolicy
- func (*DatabaseIAMPolicy) ElementType() reflect.Type
- func (i *DatabaseIAMPolicy) ToDatabaseIAMPolicyOutput() DatabaseIAMPolicyOutput
- func (i *DatabaseIAMPolicy) ToDatabaseIAMPolicyOutputWithContext(ctx context.Context) DatabaseIAMPolicyOutput
- func (i *DatabaseIAMPolicy) ToDatabaseIAMPolicyPtrOutput() DatabaseIAMPolicyPtrOutput
- func (i *DatabaseIAMPolicy) ToDatabaseIAMPolicyPtrOutputWithContext(ctx context.Context) DatabaseIAMPolicyPtrOutput
- type DatabaseIAMPolicyArgs
- type DatabaseIAMPolicyArray
- type DatabaseIAMPolicyArrayInput
- type DatabaseIAMPolicyArrayOutput
- func (DatabaseIAMPolicyArrayOutput) ElementType() reflect.Type
- func (o DatabaseIAMPolicyArrayOutput) Index(i pulumi.IntInput) DatabaseIAMPolicyOutput
- func (o DatabaseIAMPolicyArrayOutput) ToDatabaseIAMPolicyArrayOutput() DatabaseIAMPolicyArrayOutput
- func (o DatabaseIAMPolicyArrayOutput) ToDatabaseIAMPolicyArrayOutputWithContext(ctx context.Context) DatabaseIAMPolicyArrayOutput
- type DatabaseIAMPolicyInput
- type DatabaseIAMPolicyMap
- type DatabaseIAMPolicyMapInput
- type DatabaseIAMPolicyMapOutput
- func (DatabaseIAMPolicyMapOutput) ElementType() reflect.Type
- func (o DatabaseIAMPolicyMapOutput) MapIndex(k pulumi.StringInput) DatabaseIAMPolicyOutput
- func (o DatabaseIAMPolicyMapOutput) ToDatabaseIAMPolicyMapOutput() DatabaseIAMPolicyMapOutput
- func (o DatabaseIAMPolicyMapOutput) ToDatabaseIAMPolicyMapOutputWithContext(ctx context.Context) DatabaseIAMPolicyMapOutput
- type DatabaseIAMPolicyOutput
- func (DatabaseIAMPolicyOutput) ElementType() reflect.Type
- func (o DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyOutput() DatabaseIAMPolicyOutput
- func (o DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyOutputWithContext(ctx context.Context) DatabaseIAMPolicyOutput
- func (o DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyPtrOutput() DatabaseIAMPolicyPtrOutput
- func (o DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyPtrOutputWithContext(ctx context.Context) DatabaseIAMPolicyPtrOutput
- type DatabaseIAMPolicyPtrInput
- type DatabaseIAMPolicyPtrOutput
- type DatabaseIAMPolicyState
- type DatabaseInput
- type DatabaseMap
- type DatabaseMapInput
- type DatabaseMapOutput
- type DatabaseOutput
- func (DatabaseOutput) ElementType() reflect.Type
- func (o DatabaseOutput) ToDatabaseOutput() DatabaseOutput
- func (o DatabaseOutput) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput
- func (o DatabaseOutput) ToDatabasePtrOutput() DatabasePtrOutput
- func (o DatabaseOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
- type DatabasePtrInput
- type DatabasePtrOutput
- type DatabaseState
- type Instance
- func (*Instance) ElementType() reflect.Type
- func (i *Instance) ToInstanceOutput() InstanceOutput
- func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
- func (i *Instance) ToInstancePtrOutput() InstancePtrOutput
- func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
- type InstanceArgs
- type InstanceArray
- type InstanceArrayInput
- type InstanceArrayOutput
- type InstanceIAMBinding
- func (*InstanceIAMBinding) ElementType() reflect.Type
- func (i *InstanceIAMBinding) ToInstanceIAMBindingOutput() InstanceIAMBindingOutput
- func (i *InstanceIAMBinding) ToInstanceIAMBindingOutputWithContext(ctx context.Context) InstanceIAMBindingOutput
- func (i *InstanceIAMBinding) ToInstanceIAMBindingPtrOutput() InstanceIAMBindingPtrOutput
- func (i *InstanceIAMBinding) ToInstanceIAMBindingPtrOutputWithContext(ctx context.Context) InstanceIAMBindingPtrOutput
- type InstanceIAMBindingArgs
- type InstanceIAMBindingArray
- type InstanceIAMBindingArrayInput
- type InstanceIAMBindingArrayOutput
- func (InstanceIAMBindingArrayOutput) ElementType() reflect.Type
- func (o InstanceIAMBindingArrayOutput) Index(i pulumi.IntInput) InstanceIAMBindingOutput
- func (o InstanceIAMBindingArrayOutput) ToInstanceIAMBindingArrayOutput() InstanceIAMBindingArrayOutput
- func (o InstanceIAMBindingArrayOutput) ToInstanceIAMBindingArrayOutputWithContext(ctx context.Context) InstanceIAMBindingArrayOutput
- type InstanceIAMBindingCondition
- type InstanceIAMBindingConditionArgs
- func (InstanceIAMBindingConditionArgs) ElementType() reflect.Type
- func (i InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionOutput() InstanceIAMBindingConditionOutput
- func (i InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionOutputWithContext(ctx context.Context) InstanceIAMBindingConditionOutput
- func (i InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionPtrOutput() InstanceIAMBindingConditionPtrOutput
- func (i InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIAMBindingConditionPtrOutput
- type InstanceIAMBindingConditionInput
- type InstanceIAMBindingConditionOutput
- func (o InstanceIAMBindingConditionOutput) Description() pulumi.StringPtrOutput
- func (InstanceIAMBindingConditionOutput) ElementType() reflect.Type
- func (o InstanceIAMBindingConditionOutput) Expression() pulumi.StringOutput
- func (o InstanceIAMBindingConditionOutput) Title() pulumi.StringOutput
- func (o InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionOutput() InstanceIAMBindingConditionOutput
- func (o InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionOutputWithContext(ctx context.Context) InstanceIAMBindingConditionOutput
- func (o InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionPtrOutput() InstanceIAMBindingConditionPtrOutput
- func (o InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIAMBindingConditionPtrOutput
- type InstanceIAMBindingConditionPtrInput
- type InstanceIAMBindingConditionPtrOutput
- func (o InstanceIAMBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o InstanceIAMBindingConditionPtrOutput) Elem() InstanceIAMBindingConditionOutput
- func (InstanceIAMBindingConditionPtrOutput) ElementType() reflect.Type
- func (o InstanceIAMBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o InstanceIAMBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o InstanceIAMBindingConditionPtrOutput) ToInstanceIAMBindingConditionPtrOutput() InstanceIAMBindingConditionPtrOutput
- func (o InstanceIAMBindingConditionPtrOutput) ToInstanceIAMBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIAMBindingConditionPtrOutput
- type InstanceIAMBindingInput
- type InstanceIAMBindingMap
- type InstanceIAMBindingMapInput
- type InstanceIAMBindingMapOutput
- func (InstanceIAMBindingMapOutput) ElementType() reflect.Type
- func (o InstanceIAMBindingMapOutput) MapIndex(k pulumi.StringInput) InstanceIAMBindingOutput
- func (o InstanceIAMBindingMapOutput) ToInstanceIAMBindingMapOutput() InstanceIAMBindingMapOutput
- func (o InstanceIAMBindingMapOutput) ToInstanceIAMBindingMapOutputWithContext(ctx context.Context) InstanceIAMBindingMapOutput
- type InstanceIAMBindingOutput
- func (InstanceIAMBindingOutput) ElementType() reflect.Type
- func (o InstanceIAMBindingOutput) ToInstanceIAMBindingOutput() InstanceIAMBindingOutput
- func (o InstanceIAMBindingOutput) ToInstanceIAMBindingOutputWithContext(ctx context.Context) InstanceIAMBindingOutput
- func (o InstanceIAMBindingOutput) ToInstanceIAMBindingPtrOutput() InstanceIAMBindingPtrOutput
- func (o InstanceIAMBindingOutput) ToInstanceIAMBindingPtrOutputWithContext(ctx context.Context) InstanceIAMBindingPtrOutput
- type InstanceIAMBindingPtrInput
- type InstanceIAMBindingPtrOutput
- type InstanceIAMBindingState
- type InstanceIAMMember
- func (*InstanceIAMMember) ElementType() reflect.Type
- func (i *InstanceIAMMember) ToInstanceIAMMemberOutput() InstanceIAMMemberOutput
- func (i *InstanceIAMMember) ToInstanceIAMMemberOutputWithContext(ctx context.Context) InstanceIAMMemberOutput
- func (i *InstanceIAMMember) ToInstanceIAMMemberPtrOutput() InstanceIAMMemberPtrOutput
- func (i *InstanceIAMMember) ToInstanceIAMMemberPtrOutputWithContext(ctx context.Context) InstanceIAMMemberPtrOutput
- type InstanceIAMMemberArgs
- type InstanceIAMMemberArray
- type InstanceIAMMemberArrayInput
- type InstanceIAMMemberArrayOutput
- func (InstanceIAMMemberArrayOutput) ElementType() reflect.Type
- func (o InstanceIAMMemberArrayOutput) Index(i pulumi.IntInput) InstanceIAMMemberOutput
- func (o InstanceIAMMemberArrayOutput) ToInstanceIAMMemberArrayOutput() InstanceIAMMemberArrayOutput
- func (o InstanceIAMMemberArrayOutput) ToInstanceIAMMemberArrayOutputWithContext(ctx context.Context) InstanceIAMMemberArrayOutput
- type InstanceIAMMemberCondition
- type InstanceIAMMemberConditionArgs
- func (InstanceIAMMemberConditionArgs) ElementType() reflect.Type
- func (i InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionOutput() InstanceIAMMemberConditionOutput
- func (i InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionOutputWithContext(ctx context.Context) InstanceIAMMemberConditionOutput
- func (i InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionPtrOutput() InstanceIAMMemberConditionPtrOutput
- func (i InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIAMMemberConditionPtrOutput
- type InstanceIAMMemberConditionInput
- type InstanceIAMMemberConditionOutput
- func (o InstanceIAMMemberConditionOutput) Description() pulumi.StringPtrOutput
- func (InstanceIAMMemberConditionOutput) ElementType() reflect.Type
- func (o InstanceIAMMemberConditionOutput) Expression() pulumi.StringOutput
- func (o InstanceIAMMemberConditionOutput) Title() pulumi.StringOutput
- func (o InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionOutput() InstanceIAMMemberConditionOutput
- func (o InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionOutputWithContext(ctx context.Context) InstanceIAMMemberConditionOutput
- func (o InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionPtrOutput() InstanceIAMMemberConditionPtrOutput
- func (o InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIAMMemberConditionPtrOutput
- type InstanceIAMMemberConditionPtrInput
- type InstanceIAMMemberConditionPtrOutput
- func (o InstanceIAMMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o InstanceIAMMemberConditionPtrOutput) Elem() InstanceIAMMemberConditionOutput
- func (InstanceIAMMemberConditionPtrOutput) ElementType() reflect.Type
- func (o InstanceIAMMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o InstanceIAMMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o InstanceIAMMemberConditionPtrOutput) ToInstanceIAMMemberConditionPtrOutput() InstanceIAMMemberConditionPtrOutput
- func (o InstanceIAMMemberConditionPtrOutput) ToInstanceIAMMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIAMMemberConditionPtrOutput
- type InstanceIAMMemberInput
- type InstanceIAMMemberMap
- type InstanceIAMMemberMapInput
- type InstanceIAMMemberMapOutput
- func (InstanceIAMMemberMapOutput) ElementType() reflect.Type
- func (o InstanceIAMMemberMapOutput) MapIndex(k pulumi.StringInput) InstanceIAMMemberOutput
- func (o InstanceIAMMemberMapOutput) ToInstanceIAMMemberMapOutput() InstanceIAMMemberMapOutput
- func (o InstanceIAMMemberMapOutput) ToInstanceIAMMemberMapOutputWithContext(ctx context.Context) InstanceIAMMemberMapOutput
- type InstanceIAMMemberOutput
- func (InstanceIAMMemberOutput) ElementType() reflect.Type
- func (o InstanceIAMMemberOutput) ToInstanceIAMMemberOutput() InstanceIAMMemberOutput
- func (o InstanceIAMMemberOutput) ToInstanceIAMMemberOutputWithContext(ctx context.Context) InstanceIAMMemberOutput
- func (o InstanceIAMMemberOutput) ToInstanceIAMMemberPtrOutput() InstanceIAMMemberPtrOutput
- func (o InstanceIAMMemberOutput) ToInstanceIAMMemberPtrOutputWithContext(ctx context.Context) InstanceIAMMemberPtrOutput
- type InstanceIAMMemberPtrInput
- type InstanceIAMMemberPtrOutput
- type InstanceIAMMemberState
- type InstanceIAMPolicy
- func (*InstanceIAMPolicy) ElementType() reflect.Type
- func (i *InstanceIAMPolicy) ToInstanceIAMPolicyOutput() InstanceIAMPolicyOutput
- func (i *InstanceIAMPolicy) ToInstanceIAMPolicyOutputWithContext(ctx context.Context) InstanceIAMPolicyOutput
- func (i *InstanceIAMPolicy) ToInstanceIAMPolicyPtrOutput() InstanceIAMPolicyPtrOutput
- func (i *InstanceIAMPolicy) ToInstanceIAMPolicyPtrOutputWithContext(ctx context.Context) InstanceIAMPolicyPtrOutput
- type InstanceIAMPolicyArgs
- type InstanceIAMPolicyArray
- type InstanceIAMPolicyArrayInput
- type InstanceIAMPolicyArrayOutput
- func (InstanceIAMPolicyArrayOutput) ElementType() reflect.Type
- func (o InstanceIAMPolicyArrayOutput) Index(i pulumi.IntInput) InstanceIAMPolicyOutput
- func (o InstanceIAMPolicyArrayOutput) ToInstanceIAMPolicyArrayOutput() InstanceIAMPolicyArrayOutput
- func (o InstanceIAMPolicyArrayOutput) ToInstanceIAMPolicyArrayOutputWithContext(ctx context.Context) InstanceIAMPolicyArrayOutput
- type InstanceIAMPolicyInput
- type InstanceIAMPolicyMap
- type InstanceIAMPolicyMapInput
- type InstanceIAMPolicyMapOutput
- func (InstanceIAMPolicyMapOutput) ElementType() reflect.Type
- func (o InstanceIAMPolicyMapOutput) MapIndex(k pulumi.StringInput) InstanceIAMPolicyOutput
- func (o InstanceIAMPolicyMapOutput) ToInstanceIAMPolicyMapOutput() InstanceIAMPolicyMapOutput
- func (o InstanceIAMPolicyMapOutput) ToInstanceIAMPolicyMapOutputWithContext(ctx context.Context) InstanceIAMPolicyMapOutput
- type InstanceIAMPolicyOutput
- func (InstanceIAMPolicyOutput) ElementType() reflect.Type
- func (o InstanceIAMPolicyOutput) ToInstanceIAMPolicyOutput() InstanceIAMPolicyOutput
- func (o InstanceIAMPolicyOutput) ToInstanceIAMPolicyOutputWithContext(ctx context.Context) InstanceIAMPolicyOutput
- func (o InstanceIAMPolicyOutput) ToInstanceIAMPolicyPtrOutput() InstanceIAMPolicyPtrOutput
- func (o InstanceIAMPolicyOutput) ToInstanceIAMPolicyPtrOutputWithContext(ctx context.Context) InstanceIAMPolicyPtrOutput
- type InstanceIAMPolicyPtrInput
- type InstanceIAMPolicyPtrOutput
- type InstanceIAMPolicyState
- type InstanceInput
- type InstanceMap
- type InstanceMapInput
- type InstanceMapOutput
- type InstanceOutput
- func (InstanceOutput) ElementType() reflect.Type
- func (o InstanceOutput) ToInstanceOutput() InstanceOutput
- func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
- func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput
- func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
- type InstancePtrInput
- type InstancePtrOutput
- type InstanceState
- type LookupInstanceArgs
- type LookupInstanceResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Database ¶
type Database struct { pulumi.CustomResourceState // An optional list of DDL statements to run inside the newly created // database. Statements can create tables, indexes, etc. These statements // execute atomically with the creation of the database: if there is an // error in any statement, the database is not created. Ddls pulumi.StringArrayOutput `pulumi:"ddls"` // Whether or not to allow the provider to destroy the instance. Unless this field is set to false // in state, a `destroy` or `update` that would delete the instance will fail. DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"` // The instance to create the database on. Instance pulumi.StringOutput `pulumi:"instance"` // A unique identifier for the database, which cannot be changed after // the instance is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9]. Name pulumi.StringOutput `pulumi:"name"` // The ID of the project in which the resource belongs. // If it is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // An explanation of the status of the database. State pulumi.StringOutput `pulumi:"state"` }
A Cloud Spanner Database which is hosted on a Spanner instance.
To get more information about Database, see:
* [API documentation](https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances.databases) * How-to Guides
- [Official Documentation](https://cloud.google.com/spanner/)
> **Warning:** It is strongly recommended to set `lifecycle { preventDestroy = true }` on databases in order to prevent accidental data loss.
## Example Usage ### Spanner Database Basic
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { main, err := spanner.NewInstance(ctx, "main", &spanner.InstanceArgs{ Config: pulumi.String("regional-europe-west1"), DisplayName: pulumi.String("main-instance"), }) if err != nil { return err } _, err = spanner.NewDatabase(ctx, "database", &spanner.DatabaseArgs{ Instance: main.Name, Ddls: pulumi.StringArray{ pulumi.String("CREATE TABLE t1 (t1 INT64 NOT NULL,) PRIMARY KEY(t1)"), pulumi.String("CREATE TABLE t2 (t2 INT64 NOT NULL,) PRIMARY KEY(t2)"), }, DeletionProtection: pulumi.Bool(false), }) if err != nil { return err } return nil }) }
```
## Import
Database can be imported using any of these accepted formats ¶
```sh
$ pulumi import gcp:spanner/database:Database default projects/{{project}}/instances/{{instance}}/databases/{{name}}
```
```sh
$ pulumi import gcp:spanner/database:Database default instances/{{instance}}/databases/{{name}}
```
```sh
$ pulumi import gcp:spanner/database:Database default {{project}}/{{instance}}/{{name}}
```
```sh
$ pulumi import gcp:spanner/database:Database default {{instance}}/{{name}}
```
func GetDatabase ¶
func GetDatabase(ctx *pulumi.Context, name string, id pulumi.IDInput, state *DatabaseState, opts ...pulumi.ResourceOption) (*Database, error)
GetDatabase gets an existing Database 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 NewDatabase ¶
func NewDatabase(ctx *pulumi.Context, name string, args *DatabaseArgs, opts ...pulumi.ResourceOption) (*Database, error)
NewDatabase registers a new resource with the given unique name, arguments, and options.
func (*Database) ElementType ¶
func (*Database) ToDatabaseOutput ¶
func (i *Database) ToDatabaseOutput() DatabaseOutput
func (*Database) ToDatabaseOutputWithContext ¶
func (i *Database) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput
func (*Database) ToDatabasePtrOutput ¶
func (i *Database) ToDatabasePtrOutput() DatabasePtrOutput
func (*Database) ToDatabasePtrOutputWithContext ¶
func (i *Database) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
type DatabaseArgs ¶
type DatabaseArgs struct { // An optional list of DDL statements to run inside the newly created // database. Statements can create tables, indexes, etc. These statements // execute atomically with the creation of the database: if there is an // error in any statement, the database is not created. Ddls pulumi.StringArrayInput // Whether or not to allow the provider to destroy the instance. Unless this field is set to false // in state, a `destroy` or `update` that would delete the instance will fail. DeletionProtection pulumi.BoolPtrInput // The instance to create the database on. Instance pulumi.StringInput // A unique identifier for the database, which cannot be changed after // the instance is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9]. Name pulumi.StringPtrInput // The ID of the project in which the resource belongs. // If it is not provided, the provider project is used. Project pulumi.StringPtrInput }
The set of arguments for constructing a Database resource.
func (DatabaseArgs) ElementType ¶
func (DatabaseArgs) ElementType() reflect.Type
type DatabaseArray ¶
type DatabaseArray []DatabaseInput
func (DatabaseArray) ElementType ¶
func (DatabaseArray) ElementType() reflect.Type
func (DatabaseArray) ToDatabaseArrayOutput ¶
func (i DatabaseArray) ToDatabaseArrayOutput() DatabaseArrayOutput
func (DatabaseArray) ToDatabaseArrayOutputWithContext ¶
func (i DatabaseArray) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput
type DatabaseArrayInput ¶
type DatabaseArrayInput interface { pulumi.Input ToDatabaseArrayOutput() DatabaseArrayOutput ToDatabaseArrayOutputWithContext(context.Context) DatabaseArrayOutput }
DatabaseArrayInput is an input type that accepts DatabaseArray and DatabaseArrayOutput values. You can construct a concrete instance of `DatabaseArrayInput` via:
DatabaseArray{ DatabaseArgs{...} }
type DatabaseArrayOutput ¶
type DatabaseArrayOutput struct{ *pulumi.OutputState }
func (DatabaseArrayOutput) ElementType ¶
func (DatabaseArrayOutput) ElementType() reflect.Type
func (DatabaseArrayOutput) Index ¶
func (o DatabaseArrayOutput) Index(i pulumi.IntInput) DatabaseOutput
func (DatabaseArrayOutput) ToDatabaseArrayOutput ¶
func (o DatabaseArrayOutput) ToDatabaseArrayOutput() DatabaseArrayOutput
func (DatabaseArrayOutput) ToDatabaseArrayOutputWithContext ¶
func (o DatabaseArrayOutput) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput
type DatabaseIAMBinding ¶
type DatabaseIAMBinding struct { pulumi.CustomResourceState Condition DatabaseIAMBindingConditionPtrOutput `pulumi:"condition"` // The name of the Spanner database. Database pulumi.StringOutput `pulumi:"database"` // (Computed) The etag of the database's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name of the Spanner instance the database belongs to. Instance pulumi.StringOutput `pulumi:"instance"` Members pulumi.StringArrayOutput `pulumi:"members"` // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `spanner.DatabaseIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringOutput `pulumi:"role"` }
Three different resources help you manage your IAM policy for a Spanner database. Each of these resources serves a different use case:
* `spanner.DatabaseIAMPolicy`: Authoritative. Sets the IAM policy for the database and replaces any existing policy already attached.
> **Warning:** It's entirely possibly to lock yourself out of your database using `spanner.DatabaseIAMPolicy`. Any permissions granted by default will be removed unless you include them in your config.
* `spanner.DatabaseIAMBinding`: 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 database are preserved. * `spanner.DatabaseIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the database are preserved.
> **Note:** `spanner.DatabaseIAMPolicy` **cannot** be used in conjunction with `spanner.DatabaseIAMBinding` and `spanner.DatabaseIAMMember` or they will fight over what your policy should be.
> **Note:** `spanner.DatabaseIAMBinding` resources **can be** used in conjunction with `spanner.DatabaseIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_spanner\_database\_iam\_policy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "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{ organizations.GetIAMPolicyBinding{ Role: "roles/editor", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = spanner.NewDatabaseIAMPolicy(ctx, "database", &spanner.DatabaseIAMPolicyArgs{ Instance: pulumi.String("your-instance-name"), Database: pulumi.String("your-database-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_database\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewDatabaseIAMBinding(ctx, "database", &spanner.DatabaseIAMBindingArgs{ Database: pulumi.String("your-database-name"), Instance: pulumi.String("your-instance-name"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_database\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewDatabaseIAMMember(ctx, "database", &spanner.DatabaseIAMMemberArgs{ Database: pulumi.String("your-database-name"), Instance: pulumi.String("your-instance-name"), Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* {{project}}/{{instance}}/{{database}} * {{instance}}/{{database}} (project is taken from provider project) IAM member imports use space-delimited identifiers; the resource in question, the role, and the member identity, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMBinding:DatabaseIAMBinding database "project-name/instance-name/database-name roles/viewer user:foo@example.com"
```
IAM binding imports use space-delimited identifiers; the resource in question and the role, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMBinding:DatabaseIAMBinding database "project-name/instance-name/database-name roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMBinding:DatabaseIAMBinding database project-name/instance-name/database-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 GetDatabaseIAMBinding ¶
func GetDatabaseIAMBinding(ctx *pulumi.Context, name string, id pulumi.IDInput, state *DatabaseIAMBindingState, opts ...pulumi.ResourceOption) (*DatabaseIAMBinding, error)
GetDatabaseIAMBinding gets an existing DatabaseIAMBinding 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 NewDatabaseIAMBinding ¶
func NewDatabaseIAMBinding(ctx *pulumi.Context, name string, args *DatabaseIAMBindingArgs, opts ...pulumi.ResourceOption) (*DatabaseIAMBinding, error)
NewDatabaseIAMBinding registers a new resource with the given unique name, arguments, and options.
func (*DatabaseIAMBinding) ElementType ¶
func (*DatabaseIAMBinding) ElementType() reflect.Type
func (*DatabaseIAMBinding) ToDatabaseIAMBindingOutput ¶
func (i *DatabaseIAMBinding) ToDatabaseIAMBindingOutput() DatabaseIAMBindingOutput
func (*DatabaseIAMBinding) ToDatabaseIAMBindingOutputWithContext ¶
func (i *DatabaseIAMBinding) ToDatabaseIAMBindingOutputWithContext(ctx context.Context) DatabaseIAMBindingOutput
func (*DatabaseIAMBinding) ToDatabaseIAMBindingPtrOutput ¶
func (i *DatabaseIAMBinding) ToDatabaseIAMBindingPtrOutput() DatabaseIAMBindingPtrOutput
func (*DatabaseIAMBinding) ToDatabaseIAMBindingPtrOutputWithContext ¶
func (i *DatabaseIAMBinding) ToDatabaseIAMBindingPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingPtrOutput
type DatabaseIAMBindingArgs ¶
type DatabaseIAMBindingArgs struct { Condition DatabaseIAMBindingConditionPtrInput // The name of the Spanner database. Database pulumi.StringInput // The name of the Spanner instance the database belongs to. Instance pulumi.StringInput Members pulumi.StringArrayInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `spanner.DatabaseIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringInput }
The set of arguments for constructing a DatabaseIAMBinding resource.
func (DatabaseIAMBindingArgs) ElementType ¶
func (DatabaseIAMBindingArgs) ElementType() reflect.Type
type DatabaseIAMBindingArray ¶
type DatabaseIAMBindingArray []DatabaseIAMBindingInput
func (DatabaseIAMBindingArray) ElementType ¶
func (DatabaseIAMBindingArray) ElementType() reflect.Type
func (DatabaseIAMBindingArray) ToDatabaseIAMBindingArrayOutput ¶
func (i DatabaseIAMBindingArray) ToDatabaseIAMBindingArrayOutput() DatabaseIAMBindingArrayOutput
func (DatabaseIAMBindingArray) ToDatabaseIAMBindingArrayOutputWithContext ¶
func (i DatabaseIAMBindingArray) ToDatabaseIAMBindingArrayOutputWithContext(ctx context.Context) DatabaseIAMBindingArrayOutput
type DatabaseIAMBindingArrayInput ¶
type DatabaseIAMBindingArrayInput interface { pulumi.Input ToDatabaseIAMBindingArrayOutput() DatabaseIAMBindingArrayOutput ToDatabaseIAMBindingArrayOutputWithContext(context.Context) DatabaseIAMBindingArrayOutput }
DatabaseIAMBindingArrayInput is an input type that accepts DatabaseIAMBindingArray and DatabaseIAMBindingArrayOutput values. You can construct a concrete instance of `DatabaseIAMBindingArrayInput` via:
DatabaseIAMBindingArray{ DatabaseIAMBindingArgs{...} }
type DatabaseIAMBindingArrayOutput ¶
type DatabaseIAMBindingArrayOutput struct{ *pulumi.OutputState }
func (DatabaseIAMBindingArrayOutput) ElementType ¶
func (DatabaseIAMBindingArrayOutput) ElementType() reflect.Type
func (DatabaseIAMBindingArrayOutput) Index ¶
func (o DatabaseIAMBindingArrayOutput) Index(i pulumi.IntInput) DatabaseIAMBindingOutput
func (DatabaseIAMBindingArrayOutput) ToDatabaseIAMBindingArrayOutput ¶
func (o DatabaseIAMBindingArrayOutput) ToDatabaseIAMBindingArrayOutput() DatabaseIAMBindingArrayOutput
func (DatabaseIAMBindingArrayOutput) ToDatabaseIAMBindingArrayOutputWithContext ¶
func (o DatabaseIAMBindingArrayOutput) ToDatabaseIAMBindingArrayOutputWithContext(ctx context.Context) DatabaseIAMBindingArrayOutput
type DatabaseIAMBindingConditionArgs ¶
type DatabaseIAMBindingConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (DatabaseIAMBindingConditionArgs) ElementType ¶
func (DatabaseIAMBindingConditionArgs) ElementType() reflect.Type
func (DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionOutput ¶
func (i DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionOutput() DatabaseIAMBindingConditionOutput
func (DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionOutputWithContext ¶
func (i DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionOutput
func (DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionPtrOutput ¶
func (i DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionPtrOutput() DatabaseIAMBindingConditionPtrOutput
func (DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionPtrOutputWithContext ¶
func (i DatabaseIAMBindingConditionArgs) ToDatabaseIAMBindingConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionPtrOutput
type DatabaseIAMBindingConditionInput ¶
type DatabaseIAMBindingConditionInput interface { pulumi.Input ToDatabaseIAMBindingConditionOutput() DatabaseIAMBindingConditionOutput ToDatabaseIAMBindingConditionOutputWithContext(context.Context) DatabaseIAMBindingConditionOutput }
DatabaseIAMBindingConditionInput is an input type that accepts DatabaseIAMBindingConditionArgs and DatabaseIAMBindingConditionOutput values. You can construct a concrete instance of `DatabaseIAMBindingConditionInput` via:
DatabaseIAMBindingConditionArgs{...}
type DatabaseIAMBindingConditionOutput ¶
type DatabaseIAMBindingConditionOutput struct{ *pulumi.OutputState }
func (DatabaseIAMBindingConditionOutput) Description ¶
func (o DatabaseIAMBindingConditionOutput) Description() pulumi.StringPtrOutput
func (DatabaseIAMBindingConditionOutput) ElementType ¶
func (DatabaseIAMBindingConditionOutput) ElementType() reflect.Type
func (DatabaseIAMBindingConditionOutput) Expression ¶
func (o DatabaseIAMBindingConditionOutput) Expression() pulumi.StringOutput
func (DatabaseIAMBindingConditionOutput) Title ¶
func (o DatabaseIAMBindingConditionOutput) Title() pulumi.StringOutput
func (DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionOutput ¶
func (o DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionOutput() DatabaseIAMBindingConditionOutput
func (DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionOutputWithContext ¶
func (o DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionOutput
func (DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionPtrOutput ¶
func (o DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionPtrOutput() DatabaseIAMBindingConditionPtrOutput
func (DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionPtrOutputWithContext ¶
func (o DatabaseIAMBindingConditionOutput) ToDatabaseIAMBindingConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionPtrOutput
type DatabaseIAMBindingConditionPtrInput ¶
type DatabaseIAMBindingConditionPtrInput interface { pulumi.Input ToDatabaseIAMBindingConditionPtrOutput() DatabaseIAMBindingConditionPtrOutput ToDatabaseIAMBindingConditionPtrOutputWithContext(context.Context) DatabaseIAMBindingConditionPtrOutput }
DatabaseIAMBindingConditionPtrInput is an input type that accepts DatabaseIAMBindingConditionArgs, DatabaseIAMBindingConditionPtr and DatabaseIAMBindingConditionPtrOutput values. You can construct a concrete instance of `DatabaseIAMBindingConditionPtrInput` via:
DatabaseIAMBindingConditionArgs{...} or: nil
func DatabaseIAMBindingConditionPtr ¶
func DatabaseIAMBindingConditionPtr(v *DatabaseIAMBindingConditionArgs) DatabaseIAMBindingConditionPtrInput
type DatabaseIAMBindingConditionPtrOutput ¶
type DatabaseIAMBindingConditionPtrOutput struct{ *pulumi.OutputState }
func (DatabaseIAMBindingConditionPtrOutput) Description ¶
func (o DatabaseIAMBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
func (DatabaseIAMBindingConditionPtrOutput) ElementType ¶
func (DatabaseIAMBindingConditionPtrOutput) ElementType() reflect.Type
func (DatabaseIAMBindingConditionPtrOutput) Expression ¶
func (o DatabaseIAMBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (DatabaseIAMBindingConditionPtrOutput) Title ¶
func (o DatabaseIAMBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
func (DatabaseIAMBindingConditionPtrOutput) ToDatabaseIAMBindingConditionPtrOutput ¶
func (o DatabaseIAMBindingConditionPtrOutput) ToDatabaseIAMBindingConditionPtrOutput() DatabaseIAMBindingConditionPtrOutput
func (DatabaseIAMBindingConditionPtrOutput) ToDatabaseIAMBindingConditionPtrOutputWithContext ¶
func (o DatabaseIAMBindingConditionPtrOutput) ToDatabaseIAMBindingConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingConditionPtrOutput
type DatabaseIAMBindingInput ¶
type DatabaseIAMBindingInput interface { pulumi.Input ToDatabaseIAMBindingOutput() DatabaseIAMBindingOutput ToDatabaseIAMBindingOutputWithContext(ctx context.Context) DatabaseIAMBindingOutput }
type DatabaseIAMBindingMap ¶
type DatabaseIAMBindingMap map[string]DatabaseIAMBindingInput
func (DatabaseIAMBindingMap) ElementType ¶
func (DatabaseIAMBindingMap) ElementType() reflect.Type
func (DatabaseIAMBindingMap) ToDatabaseIAMBindingMapOutput ¶
func (i DatabaseIAMBindingMap) ToDatabaseIAMBindingMapOutput() DatabaseIAMBindingMapOutput
func (DatabaseIAMBindingMap) ToDatabaseIAMBindingMapOutputWithContext ¶
func (i DatabaseIAMBindingMap) ToDatabaseIAMBindingMapOutputWithContext(ctx context.Context) DatabaseIAMBindingMapOutput
type DatabaseIAMBindingMapInput ¶
type DatabaseIAMBindingMapInput interface { pulumi.Input ToDatabaseIAMBindingMapOutput() DatabaseIAMBindingMapOutput ToDatabaseIAMBindingMapOutputWithContext(context.Context) DatabaseIAMBindingMapOutput }
DatabaseIAMBindingMapInput is an input type that accepts DatabaseIAMBindingMap and DatabaseIAMBindingMapOutput values. You can construct a concrete instance of `DatabaseIAMBindingMapInput` via:
DatabaseIAMBindingMap{ "key": DatabaseIAMBindingArgs{...} }
type DatabaseIAMBindingMapOutput ¶
type DatabaseIAMBindingMapOutput struct{ *pulumi.OutputState }
func (DatabaseIAMBindingMapOutput) ElementType ¶
func (DatabaseIAMBindingMapOutput) ElementType() reflect.Type
func (DatabaseIAMBindingMapOutput) MapIndex ¶
func (o DatabaseIAMBindingMapOutput) MapIndex(k pulumi.StringInput) DatabaseIAMBindingOutput
func (DatabaseIAMBindingMapOutput) ToDatabaseIAMBindingMapOutput ¶
func (o DatabaseIAMBindingMapOutput) ToDatabaseIAMBindingMapOutput() DatabaseIAMBindingMapOutput
func (DatabaseIAMBindingMapOutput) ToDatabaseIAMBindingMapOutputWithContext ¶
func (o DatabaseIAMBindingMapOutput) ToDatabaseIAMBindingMapOutputWithContext(ctx context.Context) DatabaseIAMBindingMapOutput
type DatabaseIAMBindingOutput ¶
type DatabaseIAMBindingOutput struct {
*pulumi.OutputState
}
func (DatabaseIAMBindingOutput) ElementType ¶
func (DatabaseIAMBindingOutput) ElementType() reflect.Type
func (DatabaseIAMBindingOutput) ToDatabaseIAMBindingOutput ¶
func (o DatabaseIAMBindingOutput) ToDatabaseIAMBindingOutput() DatabaseIAMBindingOutput
func (DatabaseIAMBindingOutput) ToDatabaseIAMBindingOutputWithContext ¶
func (o DatabaseIAMBindingOutput) ToDatabaseIAMBindingOutputWithContext(ctx context.Context) DatabaseIAMBindingOutput
func (DatabaseIAMBindingOutput) ToDatabaseIAMBindingPtrOutput ¶
func (o DatabaseIAMBindingOutput) ToDatabaseIAMBindingPtrOutput() DatabaseIAMBindingPtrOutput
func (DatabaseIAMBindingOutput) ToDatabaseIAMBindingPtrOutputWithContext ¶
func (o DatabaseIAMBindingOutput) ToDatabaseIAMBindingPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingPtrOutput
type DatabaseIAMBindingPtrInput ¶
type DatabaseIAMBindingPtrInput interface { pulumi.Input ToDatabaseIAMBindingPtrOutput() DatabaseIAMBindingPtrOutput ToDatabaseIAMBindingPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingPtrOutput }
type DatabaseIAMBindingPtrOutput ¶
type DatabaseIAMBindingPtrOutput struct {
*pulumi.OutputState
}
func (DatabaseIAMBindingPtrOutput) ElementType ¶
func (DatabaseIAMBindingPtrOutput) ElementType() reflect.Type
func (DatabaseIAMBindingPtrOutput) ToDatabaseIAMBindingPtrOutput ¶
func (o DatabaseIAMBindingPtrOutput) ToDatabaseIAMBindingPtrOutput() DatabaseIAMBindingPtrOutput
func (DatabaseIAMBindingPtrOutput) ToDatabaseIAMBindingPtrOutputWithContext ¶
func (o DatabaseIAMBindingPtrOutput) ToDatabaseIAMBindingPtrOutputWithContext(ctx context.Context) DatabaseIAMBindingPtrOutput
type DatabaseIAMBindingState ¶
type DatabaseIAMBindingState struct { Condition DatabaseIAMBindingConditionPtrInput // The name of the Spanner database. Database pulumi.StringPtrInput // (Computed) The etag of the database's IAM policy. Etag pulumi.StringPtrInput // The name of the Spanner instance the database belongs to. Instance pulumi.StringPtrInput Members pulumi.StringArrayInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `spanner.DatabaseIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringPtrInput }
func (DatabaseIAMBindingState) ElementType ¶
func (DatabaseIAMBindingState) ElementType() reflect.Type
type DatabaseIAMMember ¶
type DatabaseIAMMember struct { pulumi.CustomResourceState Condition DatabaseIAMMemberConditionPtrOutput `pulumi:"condition"` // The name of the Spanner database. Database pulumi.StringOutput `pulumi:"database"` // (Computed) The etag of the database's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name of the Spanner instance the database belongs to. Instance pulumi.StringOutput `pulumi:"instance"` Member pulumi.StringOutput `pulumi:"member"` // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `spanner.DatabaseIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringOutput `pulumi:"role"` }
Three different resources help you manage your IAM policy for a Spanner database. Each of these resources serves a different use case:
* `spanner.DatabaseIAMPolicy`: Authoritative. Sets the IAM policy for the database and replaces any existing policy already attached.
> **Warning:** It's entirely possibly to lock yourself out of your database using `spanner.DatabaseIAMPolicy`. Any permissions granted by default will be removed unless you include them in your config.
* `spanner.DatabaseIAMBinding`: 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 database are preserved. * `spanner.DatabaseIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the database are preserved.
> **Note:** `spanner.DatabaseIAMPolicy` **cannot** be used in conjunction with `spanner.DatabaseIAMBinding` and `spanner.DatabaseIAMMember` or they will fight over what your policy should be.
> **Note:** `spanner.DatabaseIAMBinding` resources **can be** used in conjunction with `spanner.DatabaseIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_spanner\_database\_iam\_policy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "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{ organizations.GetIAMPolicyBinding{ Role: "roles/editor", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = spanner.NewDatabaseIAMPolicy(ctx, "database", &spanner.DatabaseIAMPolicyArgs{ Instance: pulumi.String("your-instance-name"), Database: pulumi.String("your-database-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_database\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewDatabaseIAMBinding(ctx, "database", &spanner.DatabaseIAMBindingArgs{ Database: pulumi.String("your-database-name"), Instance: pulumi.String("your-instance-name"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_database\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewDatabaseIAMMember(ctx, "database", &spanner.DatabaseIAMMemberArgs{ Database: pulumi.String("your-database-name"), Instance: pulumi.String("your-instance-name"), Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* {{project}}/{{instance}}/{{database}} * {{instance}}/{{database}} (project is taken from provider project) IAM member imports use space-delimited identifiers; the resource in question, the role, and the member identity, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMMember:DatabaseIAMMember database "project-name/instance-name/database-name roles/viewer user:foo@example.com"
```
IAM binding imports use space-delimited identifiers; the resource in question and the role, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMMember:DatabaseIAMMember database "project-name/instance-name/database-name roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMMember:DatabaseIAMMember database project-name/instance-name/database-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 GetDatabaseIAMMember ¶
func GetDatabaseIAMMember(ctx *pulumi.Context, name string, id pulumi.IDInput, state *DatabaseIAMMemberState, opts ...pulumi.ResourceOption) (*DatabaseIAMMember, error)
GetDatabaseIAMMember gets an existing DatabaseIAMMember 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 NewDatabaseIAMMember ¶
func NewDatabaseIAMMember(ctx *pulumi.Context, name string, args *DatabaseIAMMemberArgs, opts ...pulumi.ResourceOption) (*DatabaseIAMMember, error)
NewDatabaseIAMMember registers a new resource with the given unique name, arguments, and options.
func (*DatabaseIAMMember) ElementType ¶
func (*DatabaseIAMMember) ElementType() reflect.Type
func (*DatabaseIAMMember) ToDatabaseIAMMemberOutput ¶
func (i *DatabaseIAMMember) ToDatabaseIAMMemberOutput() DatabaseIAMMemberOutput
func (*DatabaseIAMMember) ToDatabaseIAMMemberOutputWithContext ¶
func (i *DatabaseIAMMember) ToDatabaseIAMMemberOutputWithContext(ctx context.Context) DatabaseIAMMemberOutput
func (*DatabaseIAMMember) ToDatabaseIAMMemberPtrOutput ¶
func (i *DatabaseIAMMember) ToDatabaseIAMMemberPtrOutput() DatabaseIAMMemberPtrOutput
func (*DatabaseIAMMember) ToDatabaseIAMMemberPtrOutputWithContext ¶
func (i *DatabaseIAMMember) ToDatabaseIAMMemberPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberPtrOutput
type DatabaseIAMMemberArgs ¶
type DatabaseIAMMemberArgs struct { Condition DatabaseIAMMemberConditionPtrInput // The name of the Spanner database. Database pulumi.StringInput // The name of the Spanner instance the database belongs to. Instance pulumi.StringInput Member pulumi.StringInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `spanner.DatabaseIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringInput }
The set of arguments for constructing a DatabaseIAMMember resource.
func (DatabaseIAMMemberArgs) ElementType ¶
func (DatabaseIAMMemberArgs) ElementType() reflect.Type
type DatabaseIAMMemberArray ¶
type DatabaseIAMMemberArray []DatabaseIAMMemberInput
func (DatabaseIAMMemberArray) ElementType ¶
func (DatabaseIAMMemberArray) ElementType() reflect.Type
func (DatabaseIAMMemberArray) ToDatabaseIAMMemberArrayOutput ¶
func (i DatabaseIAMMemberArray) ToDatabaseIAMMemberArrayOutput() DatabaseIAMMemberArrayOutput
func (DatabaseIAMMemberArray) ToDatabaseIAMMemberArrayOutputWithContext ¶
func (i DatabaseIAMMemberArray) ToDatabaseIAMMemberArrayOutputWithContext(ctx context.Context) DatabaseIAMMemberArrayOutput
type DatabaseIAMMemberArrayInput ¶
type DatabaseIAMMemberArrayInput interface { pulumi.Input ToDatabaseIAMMemberArrayOutput() DatabaseIAMMemberArrayOutput ToDatabaseIAMMemberArrayOutputWithContext(context.Context) DatabaseIAMMemberArrayOutput }
DatabaseIAMMemberArrayInput is an input type that accepts DatabaseIAMMemberArray and DatabaseIAMMemberArrayOutput values. You can construct a concrete instance of `DatabaseIAMMemberArrayInput` via:
DatabaseIAMMemberArray{ DatabaseIAMMemberArgs{...} }
type DatabaseIAMMemberArrayOutput ¶
type DatabaseIAMMemberArrayOutput struct{ *pulumi.OutputState }
func (DatabaseIAMMemberArrayOutput) ElementType ¶
func (DatabaseIAMMemberArrayOutput) ElementType() reflect.Type
func (DatabaseIAMMemberArrayOutput) Index ¶
func (o DatabaseIAMMemberArrayOutput) Index(i pulumi.IntInput) DatabaseIAMMemberOutput
func (DatabaseIAMMemberArrayOutput) ToDatabaseIAMMemberArrayOutput ¶
func (o DatabaseIAMMemberArrayOutput) ToDatabaseIAMMemberArrayOutput() DatabaseIAMMemberArrayOutput
func (DatabaseIAMMemberArrayOutput) ToDatabaseIAMMemberArrayOutputWithContext ¶
func (o DatabaseIAMMemberArrayOutput) ToDatabaseIAMMemberArrayOutputWithContext(ctx context.Context) DatabaseIAMMemberArrayOutput
type DatabaseIAMMemberConditionArgs ¶
type DatabaseIAMMemberConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (DatabaseIAMMemberConditionArgs) ElementType ¶
func (DatabaseIAMMemberConditionArgs) ElementType() reflect.Type
func (DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionOutput ¶
func (i DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionOutput() DatabaseIAMMemberConditionOutput
func (DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionOutputWithContext ¶
func (i DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionOutput
func (DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionPtrOutput ¶
func (i DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionPtrOutput() DatabaseIAMMemberConditionPtrOutput
func (DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionPtrOutputWithContext ¶
func (i DatabaseIAMMemberConditionArgs) ToDatabaseIAMMemberConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionPtrOutput
type DatabaseIAMMemberConditionInput ¶
type DatabaseIAMMemberConditionInput interface { pulumi.Input ToDatabaseIAMMemberConditionOutput() DatabaseIAMMemberConditionOutput ToDatabaseIAMMemberConditionOutputWithContext(context.Context) DatabaseIAMMemberConditionOutput }
DatabaseIAMMemberConditionInput is an input type that accepts DatabaseIAMMemberConditionArgs and DatabaseIAMMemberConditionOutput values. You can construct a concrete instance of `DatabaseIAMMemberConditionInput` via:
DatabaseIAMMemberConditionArgs{...}
type DatabaseIAMMemberConditionOutput ¶
type DatabaseIAMMemberConditionOutput struct{ *pulumi.OutputState }
func (DatabaseIAMMemberConditionOutput) Description ¶
func (o DatabaseIAMMemberConditionOutput) Description() pulumi.StringPtrOutput
func (DatabaseIAMMemberConditionOutput) ElementType ¶
func (DatabaseIAMMemberConditionOutput) ElementType() reflect.Type
func (DatabaseIAMMemberConditionOutput) Expression ¶
func (o DatabaseIAMMemberConditionOutput) Expression() pulumi.StringOutput
func (DatabaseIAMMemberConditionOutput) Title ¶
func (o DatabaseIAMMemberConditionOutput) Title() pulumi.StringOutput
func (DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionOutput ¶
func (o DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionOutput() DatabaseIAMMemberConditionOutput
func (DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionOutputWithContext ¶
func (o DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionOutput
func (DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionPtrOutput ¶
func (o DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionPtrOutput() DatabaseIAMMemberConditionPtrOutput
func (DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionPtrOutputWithContext ¶
func (o DatabaseIAMMemberConditionOutput) ToDatabaseIAMMemberConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionPtrOutput
type DatabaseIAMMemberConditionPtrInput ¶
type DatabaseIAMMemberConditionPtrInput interface { pulumi.Input ToDatabaseIAMMemberConditionPtrOutput() DatabaseIAMMemberConditionPtrOutput ToDatabaseIAMMemberConditionPtrOutputWithContext(context.Context) DatabaseIAMMemberConditionPtrOutput }
DatabaseIAMMemberConditionPtrInput is an input type that accepts DatabaseIAMMemberConditionArgs, DatabaseIAMMemberConditionPtr and DatabaseIAMMemberConditionPtrOutput values. You can construct a concrete instance of `DatabaseIAMMemberConditionPtrInput` via:
DatabaseIAMMemberConditionArgs{...} or: nil
func DatabaseIAMMemberConditionPtr ¶
func DatabaseIAMMemberConditionPtr(v *DatabaseIAMMemberConditionArgs) DatabaseIAMMemberConditionPtrInput
type DatabaseIAMMemberConditionPtrOutput ¶
type DatabaseIAMMemberConditionPtrOutput struct{ *pulumi.OutputState }
func (DatabaseIAMMemberConditionPtrOutput) Description ¶
func (o DatabaseIAMMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
func (DatabaseIAMMemberConditionPtrOutput) Elem ¶
func (o DatabaseIAMMemberConditionPtrOutput) Elem() DatabaseIAMMemberConditionOutput
func (DatabaseIAMMemberConditionPtrOutput) ElementType ¶
func (DatabaseIAMMemberConditionPtrOutput) ElementType() reflect.Type
func (DatabaseIAMMemberConditionPtrOutput) Expression ¶
func (o DatabaseIAMMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (DatabaseIAMMemberConditionPtrOutput) Title ¶
func (o DatabaseIAMMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
func (DatabaseIAMMemberConditionPtrOutput) ToDatabaseIAMMemberConditionPtrOutput ¶
func (o DatabaseIAMMemberConditionPtrOutput) ToDatabaseIAMMemberConditionPtrOutput() DatabaseIAMMemberConditionPtrOutput
func (DatabaseIAMMemberConditionPtrOutput) ToDatabaseIAMMemberConditionPtrOutputWithContext ¶
func (o DatabaseIAMMemberConditionPtrOutput) ToDatabaseIAMMemberConditionPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberConditionPtrOutput
type DatabaseIAMMemberInput ¶
type DatabaseIAMMemberInput interface { pulumi.Input ToDatabaseIAMMemberOutput() DatabaseIAMMemberOutput ToDatabaseIAMMemberOutputWithContext(ctx context.Context) DatabaseIAMMemberOutput }
type DatabaseIAMMemberMap ¶
type DatabaseIAMMemberMap map[string]DatabaseIAMMemberInput
func (DatabaseIAMMemberMap) ElementType ¶
func (DatabaseIAMMemberMap) ElementType() reflect.Type
func (DatabaseIAMMemberMap) ToDatabaseIAMMemberMapOutput ¶
func (i DatabaseIAMMemberMap) ToDatabaseIAMMemberMapOutput() DatabaseIAMMemberMapOutput
func (DatabaseIAMMemberMap) ToDatabaseIAMMemberMapOutputWithContext ¶
func (i DatabaseIAMMemberMap) ToDatabaseIAMMemberMapOutputWithContext(ctx context.Context) DatabaseIAMMemberMapOutput
type DatabaseIAMMemberMapInput ¶
type DatabaseIAMMemberMapInput interface { pulumi.Input ToDatabaseIAMMemberMapOutput() DatabaseIAMMemberMapOutput ToDatabaseIAMMemberMapOutputWithContext(context.Context) DatabaseIAMMemberMapOutput }
DatabaseIAMMemberMapInput is an input type that accepts DatabaseIAMMemberMap and DatabaseIAMMemberMapOutput values. You can construct a concrete instance of `DatabaseIAMMemberMapInput` via:
DatabaseIAMMemberMap{ "key": DatabaseIAMMemberArgs{...} }
type DatabaseIAMMemberMapOutput ¶
type DatabaseIAMMemberMapOutput struct{ *pulumi.OutputState }
func (DatabaseIAMMemberMapOutput) ElementType ¶
func (DatabaseIAMMemberMapOutput) ElementType() reflect.Type
func (DatabaseIAMMemberMapOutput) MapIndex ¶
func (o DatabaseIAMMemberMapOutput) MapIndex(k pulumi.StringInput) DatabaseIAMMemberOutput
func (DatabaseIAMMemberMapOutput) ToDatabaseIAMMemberMapOutput ¶
func (o DatabaseIAMMemberMapOutput) ToDatabaseIAMMemberMapOutput() DatabaseIAMMemberMapOutput
func (DatabaseIAMMemberMapOutput) ToDatabaseIAMMemberMapOutputWithContext ¶
func (o DatabaseIAMMemberMapOutput) ToDatabaseIAMMemberMapOutputWithContext(ctx context.Context) DatabaseIAMMemberMapOutput
type DatabaseIAMMemberOutput ¶
type DatabaseIAMMemberOutput struct {
*pulumi.OutputState
}
func (DatabaseIAMMemberOutput) ElementType ¶
func (DatabaseIAMMemberOutput) ElementType() reflect.Type
func (DatabaseIAMMemberOutput) ToDatabaseIAMMemberOutput ¶
func (o DatabaseIAMMemberOutput) ToDatabaseIAMMemberOutput() DatabaseIAMMemberOutput
func (DatabaseIAMMemberOutput) ToDatabaseIAMMemberOutputWithContext ¶
func (o DatabaseIAMMemberOutput) ToDatabaseIAMMemberOutputWithContext(ctx context.Context) DatabaseIAMMemberOutput
func (DatabaseIAMMemberOutput) ToDatabaseIAMMemberPtrOutput ¶
func (o DatabaseIAMMemberOutput) ToDatabaseIAMMemberPtrOutput() DatabaseIAMMemberPtrOutput
func (DatabaseIAMMemberOutput) ToDatabaseIAMMemberPtrOutputWithContext ¶
func (o DatabaseIAMMemberOutput) ToDatabaseIAMMemberPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberPtrOutput
type DatabaseIAMMemberPtrInput ¶
type DatabaseIAMMemberPtrInput interface { pulumi.Input ToDatabaseIAMMemberPtrOutput() DatabaseIAMMemberPtrOutput ToDatabaseIAMMemberPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberPtrOutput }
type DatabaseIAMMemberPtrOutput ¶
type DatabaseIAMMemberPtrOutput struct {
*pulumi.OutputState
}
func (DatabaseIAMMemberPtrOutput) ElementType ¶
func (DatabaseIAMMemberPtrOutput) ElementType() reflect.Type
func (DatabaseIAMMemberPtrOutput) ToDatabaseIAMMemberPtrOutput ¶
func (o DatabaseIAMMemberPtrOutput) ToDatabaseIAMMemberPtrOutput() DatabaseIAMMemberPtrOutput
func (DatabaseIAMMemberPtrOutput) ToDatabaseIAMMemberPtrOutputWithContext ¶
func (o DatabaseIAMMemberPtrOutput) ToDatabaseIAMMemberPtrOutputWithContext(ctx context.Context) DatabaseIAMMemberPtrOutput
type DatabaseIAMMemberState ¶
type DatabaseIAMMemberState struct { Condition DatabaseIAMMemberConditionPtrInput // The name of the Spanner database. Database pulumi.StringPtrInput // (Computed) The etag of the database's IAM policy. Etag pulumi.StringPtrInput // The name of the Spanner instance the database belongs to. Instance pulumi.StringPtrInput Member pulumi.StringPtrInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `spanner.DatabaseIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringPtrInput }
func (DatabaseIAMMemberState) ElementType ¶
func (DatabaseIAMMemberState) ElementType() reflect.Type
type DatabaseIAMPolicy ¶
type DatabaseIAMPolicy struct { pulumi.CustomResourceState // The name of the Spanner database. Database pulumi.StringOutput `pulumi:"database"` // (Computed) The etag of the database's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name of the Spanner instance the database belongs to. Instance pulumi.StringOutput `pulumi:"instance"` // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringOutput `pulumi:"policyData"` // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` }
Three different resources help you manage your IAM policy for a Spanner database. Each of these resources serves a different use case:
* `spanner.DatabaseIAMPolicy`: Authoritative. Sets the IAM policy for the database and replaces any existing policy already attached.
> **Warning:** It's entirely possibly to lock yourself out of your database using `spanner.DatabaseIAMPolicy`. Any permissions granted by default will be removed unless you include them in your config.
* `spanner.DatabaseIAMBinding`: 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 database are preserved. * `spanner.DatabaseIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the database are preserved.
> **Note:** `spanner.DatabaseIAMPolicy` **cannot** be used in conjunction with `spanner.DatabaseIAMBinding` and `spanner.DatabaseIAMMember` or they will fight over what your policy should be.
> **Note:** `spanner.DatabaseIAMBinding` resources **can be** used in conjunction with `spanner.DatabaseIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_spanner\_database\_iam\_policy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "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{ organizations.GetIAMPolicyBinding{ Role: "roles/editor", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = spanner.NewDatabaseIAMPolicy(ctx, "database", &spanner.DatabaseIAMPolicyArgs{ Instance: pulumi.String("your-instance-name"), Database: pulumi.String("your-database-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_database\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewDatabaseIAMBinding(ctx, "database", &spanner.DatabaseIAMBindingArgs{ Database: pulumi.String("your-database-name"), Instance: pulumi.String("your-instance-name"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_database\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewDatabaseIAMMember(ctx, "database", &spanner.DatabaseIAMMemberArgs{ Database: pulumi.String("your-database-name"), Instance: pulumi.String("your-instance-name"), Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* {{project}}/{{instance}}/{{database}} * {{instance}}/{{database}} (project is taken from provider project) IAM member imports use space-delimited identifiers; the resource in question, the role, and the member identity, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMPolicy:DatabaseIAMPolicy database "project-name/instance-name/database-name roles/viewer user:foo@example.com"
```
IAM binding imports use space-delimited identifiers; the resource in question and the role, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMPolicy:DatabaseIAMPolicy database "project-name/instance-name/database-name roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:spanner/databaseIAMPolicy:DatabaseIAMPolicy database project-name/instance-name/database-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 GetDatabaseIAMPolicy ¶
func GetDatabaseIAMPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *DatabaseIAMPolicyState, opts ...pulumi.ResourceOption) (*DatabaseIAMPolicy, error)
GetDatabaseIAMPolicy gets an existing DatabaseIAMPolicy 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 NewDatabaseIAMPolicy ¶
func NewDatabaseIAMPolicy(ctx *pulumi.Context, name string, args *DatabaseIAMPolicyArgs, opts ...pulumi.ResourceOption) (*DatabaseIAMPolicy, error)
NewDatabaseIAMPolicy registers a new resource with the given unique name, arguments, and options.
func (*DatabaseIAMPolicy) ElementType ¶
func (*DatabaseIAMPolicy) ElementType() reflect.Type
func (*DatabaseIAMPolicy) ToDatabaseIAMPolicyOutput ¶
func (i *DatabaseIAMPolicy) ToDatabaseIAMPolicyOutput() DatabaseIAMPolicyOutput
func (*DatabaseIAMPolicy) ToDatabaseIAMPolicyOutputWithContext ¶
func (i *DatabaseIAMPolicy) ToDatabaseIAMPolicyOutputWithContext(ctx context.Context) DatabaseIAMPolicyOutput
func (*DatabaseIAMPolicy) ToDatabaseIAMPolicyPtrOutput ¶
func (i *DatabaseIAMPolicy) ToDatabaseIAMPolicyPtrOutput() DatabaseIAMPolicyPtrOutput
func (*DatabaseIAMPolicy) ToDatabaseIAMPolicyPtrOutputWithContext ¶
func (i *DatabaseIAMPolicy) ToDatabaseIAMPolicyPtrOutputWithContext(ctx context.Context) DatabaseIAMPolicyPtrOutput
type DatabaseIAMPolicyArgs ¶
type DatabaseIAMPolicyArgs struct { // The name of the Spanner database. Database pulumi.StringInput // The name of the Spanner instance the database belongs to. Instance pulumi.StringInput // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput }
The set of arguments for constructing a DatabaseIAMPolicy resource.
func (DatabaseIAMPolicyArgs) ElementType ¶
func (DatabaseIAMPolicyArgs) ElementType() reflect.Type
type DatabaseIAMPolicyArray ¶
type DatabaseIAMPolicyArray []DatabaseIAMPolicyInput
func (DatabaseIAMPolicyArray) ElementType ¶
func (DatabaseIAMPolicyArray) ElementType() reflect.Type
func (DatabaseIAMPolicyArray) ToDatabaseIAMPolicyArrayOutput ¶
func (i DatabaseIAMPolicyArray) ToDatabaseIAMPolicyArrayOutput() DatabaseIAMPolicyArrayOutput
func (DatabaseIAMPolicyArray) ToDatabaseIAMPolicyArrayOutputWithContext ¶
func (i DatabaseIAMPolicyArray) ToDatabaseIAMPolicyArrayOutputWithContext(ctx context.Context) DatabaseIAMPolicyArrayOutput
type DatabaseIAMPolicyArrayInput ¶
type DatabaseIAMPolicyArrayInput interface { pulumi.Input ToDatabaseIAMPolicyArrayOutput() DatabaseIAMPolicyArrayOutput ToDatabaseIAMPolicyArrayOutputWithContext(context.Context) DatabaseIAMPolicyArrayOutput }
DatabaseIAMPolicyArrayInput is an input type that accepts DatabaseIAMPolicyArray and DatabaseIAMPolicyArrayOutput values. You can construct a concrete instance of `DatabaseIAMPolicyArrayInput` via:
DatabaseIAMPolicyArray{ DatabaseIAMPolicyArgs{...} }
type DatabaseIAMPolicyArrayOutput ¶
type DatabaseIAMPolicyArrayOutput struct{ *pulumi.OutputState }
func (DatabaseIAMPolicyArrayOutput) ElementType ¶
func (DatabaseIAMPolicyArrayOutput) ElementType() reflect.Type
func (DatabaseIAMPolicyArrayOutput) Index ¶
func (o DatabaseIAMPolicyArrayOutput) Index(i pulumi.IntInput) DatabaseIAMPolicyOutput
func (DatabaseIAMPolicyArrayOutput) ToDatabaseIAMPolicyArrayOutput ¶
func (o DatabaseIAMPolicyArrayOutput) ToDatabaseIAMPolicyArrayOutput() DatabaseIAMPolicyArrayOutput
func (DatabaseIAMPolicyArrayOutput) ToDatabaseIAMPolicyArrayOutputWithContext ¶
func (o DatabaseIAMPolicyArrayOutput) ToDatabaseIAMPolicyArrayOutputWithContext(ctx context.Context) DatabaseIAMPolicyArrayOutput
type DatabaseIAMPolicyInput ¶
type DatabaseIAMPolicyInput interface { pulumi.Input ToDatabaseIAMPolicyOutput() DatabaseIAMPolicyOutput ToDatabaseIAMPolicyOutputWithContext(ctx context.Context) DatabaseIAMPolicyOutput }
type DatabaseIAMPolicyMap ¶
type DatabaseIAMPolicyMap map[string]DatabaseIAMPolicyInput
func (DatabaseIAMPolicyMap) ElementType ¶
func (DatabaseIAMPolicyMap) ElementType() reflect.Type
func (DatabaseIAMPolicyMap) ToDatabaseIAMPolicyMapOutput ¶
func (i DatabaseIAMPolicyMap) ToDatabaseIAMPolicyMapOutput() DatabaseIAMPolicyMapOutput
func (DatabaseIAMPolicyMap) ToDatabaseIAMPolicyMapOutputWithContext ¶
func (i DatabaseIAMPolicyMap) ToDatabaseIAMPolicyMapOutputWithContext(ctx context.Context) DatabaseIAMPolicyMapOutput
type DatabaseIAMPolicyMapInput ¶
type DatabaseIAMPolicyMapInput interface { pulumi.Input ToDatabaseIAMPolicyMapOutput() DatabaseIAMPolicyMapOutput ToDatabaseIAMPolicyMapOutputWithContext(context.Context) DatabaseIAMPolicyMapOutput }
DatabaseIAMPolicyMapInput is an input type that accepts DatabaseIAMPolicyMap and DatabaseIAMPolicyMapOutput values. You can construct a concrete instance of `DatabaseIAMPolicyMapInput` via:
DatabaseIAMPolicyMap{ "key": DatabaseIAMPolicyArgs{...} }
type DatabaseIAMPolicyMapOutput ¶
type DatabaseIAMPolicyMapOutput struct{ *pulumi.OutputState }
func (DatabaseIAMPolicyMapOutput) ElementType ¶
func (DatabaseIAMPolicyMapOutput) ElementType() reflect.Type
func (DatabaseIAMPolicyMapOutput) MapIndex ¶
func (o DatabaseIAMPolicyMapOutput) MapIndex(k pulumi.StringInput) DatabaseIAMPolicyOutput
func (DatabaseIAMPolicyMapOutput) ToDatabaseIAMPolicyMapOutput ¶
func (o DatabaseIAMPolicyMapOutput) ToDatabaseIAMPolicyMapOutput() DatabaseIAMPolicyMapOutput
func (DatabaseIAMPolicyMapOutput) ToDatabaseIAMPolicyMapOutputWithContext ¶
func (o DatabaseIAMPolicyMapOutput) ToDatabaseIAMPolicyMapOutputWithContext(ctx context.Context) DatabaseIAMPolicyMapOutput
type DatabaseIAMPolicyOutput ¶
type DatabaseIAMPolicyOutput struct {
*pulumi.OutputState
}
func (DatabaseIAMPolicyOutput) ElementType ¶
func (DatabaseIAMPolicyOutput) ElementType() reflect.Type
func (DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyOutput ¶
func (o DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyOutput() DatabaseIAMPolicyOutput
func (DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyOutputWithContext ¶
func (o DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyOutputWithContext(ctx context.Context) DatabaseIAMPolicyOutput
func (DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyPtrOutput ¶
func (o DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyPtrOutput() DatabaseIAMPolicyPtrOutput
func (DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyPtrOutputWithContext ¶
func (o DatabaseIAMPolicyOutput) ToDatabaseIAMPolicyPtrOutputWithContext(ctx context.Context) DatabaseIAMPolicyPtrOutput
type DatabaseIAMPolicyPtrInput ¶
type DatabaseIAMPolicyPtrInput interface { pulumi.Input ToDatabaseIAMPolicyPtrOutput() DatabaseIAMPolicyPtrOutput ToDatabaseIAMPolicyPtrOutputWithContext(ctx context.Context) DatabaseIAMPolicyPtrOutput }
type DatabaseIAMPolicyPtrOutput ¶
type DatabaseIAMPolicyPtrOutput struct {
*pulumi.OutputState
}
func (DatabaseIAMPolicyPtrOutput) ElementType ¶
func (DatabaseIAMPolicyPtrOutput) ElementType() reflect.Type
func (DatabaseIAMPolicyPtrOutput) ToDatabaseIAMPolicyPtrOutput ¶
func (o DatabaseIAMPolicyPtrOutput) ToDatabaseIAMPolicyPtrOutput() DatabaseIAMPolicyPtrOutput
func (DatabaseIAMPolicyPtrOutput) ToDatabaseIAMPolicyPtrOutputWithContext ¶
func (o DatabaseIAMPolicyPtrOutput) ToDatabaseIAMPolicyPtrOutputWithContext(ctx context.Context) DatabaseIAMPolicyPtrOutput
type DatabaseIAMPolicyState ¶
type DatabaseIAMPolicyState struct { // The name of the Spanner database. Database pulumi.StringPtrInput // (Computed) The etag of the database's IAM policy. Etag pulumi.StringPtrInput // The name of the Spanner instance the database belongs to. Instance pulumi.StringPtrInput // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringPtrInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput }
func (DatabaseIAMPolicyState) ElementType ¶
func (DatabaseIAMPolicyState) ElementType() reflect.Type
type DatabaseInput ¶
type DatabaseInput interface { pulumi.Input ToDatabaseOutput() DatabaseOutput ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput }
type DatabaseMap ¶
type DatabaseMap map[string]DatabaseInput
func (DatabaseMap) ElementType ¶
func (DatabaseMap) ElementType() reflect.Type
func (DatabaseMap) ToDatabaseMapOutput ¶
func (i DatabaseMap) ToDatabaseMapOutput() DatabaseMapOutput
func (DatabaseMap) ToDatabaseMapOutputWithContext ¶
func (i DatabaseMap) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput
type DatabaseMapInput ¶
type DatabaseMapInput interface { pulumi.Input ToDatabaseMapOutput() DatabaseMapOutput ToDatabaseMapOutputWithContext(context.Context) DatabaseMapOutput }
DatabaseMapInput is an input type that accepts DatabaseMap and DatabaseMapOutput values. You can construct a concrete instance of `DatabaseMapInput` via:
DatabaseMap{ "key": DatabaseArgs{...} }
type DatabaseMapOutput ¶
type DatabaseMapOutput struct{ *pulumi.OutputState }
func (DatabaseMapOutput) ElementType ¶
func (DatabaseMapOutput) ElementType() reflect.Type
func (DatabaseMapOutput) MapIndex ¶
func (o DatabaseMapOutput) MapIndex(k pulumi.StringInput) DatabaseOutput
func (DatabaseMapOutput) ToDatabaseMapOutput ¶
func (o DatabaseMapOutput) ToDatabaseMapOutput() DatabaseMapOutput
func (DatabaseMapOutput) ToDatabaseMapOutputWithContext ¶
func (o DatabaseMapOutput) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput
type DatabaseOutput ¶
type DatabaseOutput struct {
*pulumi.OutputState
}
func (DatabaseOutput) ElementType ¶
func (DatabaseOutput) ElementType() reflect.Type
func (DatabaseOutput) ToDatabaseOutput ¶
func (o DatabaseOutput) ToDatabaseOutput() DatabaseOutput
func (DatabaseOutput) ToDatabaseOutputWithContext ¶
func (o DatabaseOutput) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput
func (DatabaseOutput) ToDatabasePtrOutput ¶
func (o DatabaseOutput) ToDatabasePtrOutput() DatabasePtrOutput
func (DatabaseOutput) ToDatabasePtrOutputWithContext ¶
func (o DatabaseOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
type DatabasePtrInput ¶
type DatabasePtrInput interface { pulumi.Input ToDatabasePtrOutput() DatabasePtrOutput ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput }
type DatabasePtrOutput ¶
type DatabasePtrOutput struct {
*pulumi.OutputState
}
func (DatabasePtrOutput) ElementType ¶
func (DatabasePtrOutput) ElementType() reflect.Type
func (DatabasePtrOutput) ToDatabasePtrOutput ¶
func (o DatabasePtrOutput) ToDatabasePtrOutput() DatabasePtrOutput
func (DatabasePtrOutput) ToDatabasePtrOutputWithContext ¶
func (o DatabasePtrOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
type DatabaseState ¶
type DatabaseState struct { // An optional list of DDL statements to run inside the newly created // database. Statements can create tables, indexes, etc. These statements // execute atomically with the creation of the database: if there is an // error in any statement, the database is not created. Ddls pulumi.StringArrayInput // Whether or not to allow the provider to destroy the instance. Unless this field is set to false // in state, a `destroy` or `update` that would delete the instance will fail. DeletionProtection pulumi.BoolPtrInput // The instance to create the database on. Instance pulumi.StringPtrInput // A unique identifier for the database, which cannot be changed after // the instance is created. Values are of the form [a-z][-a-z0-9]*[a-z0-9]. Name pulumi.StringPtrInput // The ID of the project in which the resource belongs. // If it is not provided, the provider project is used. Project pulumi.StringPtrInput // An explanation of the status of the database. State pulumi.StringPtrInput }
func (DatabaseState) ElementType ¶
func (DatabaseState) ElementType() reflect.Type
type Instance ¶
type Instance struct { pulumi.CustomResourceState // The name of the instance's configuration (similar but not // quite the same as a region) which defines defines the geographic placement and // replication of your databases in this instance. It determines where your data // is stored. Values are typically of the form `regional-europe-west1` , `us-central` etc. // In order to obtain a valid list please consult the // [Configuration section of the docs](https://cloud.google.com/spanner/docs/instances). Config pulumi.StringOutput `pulumi:"config"` // The descriptive name for this instance as it appears in UIs. Must be // unique per project and between 4 and 30 characters in length. DisplayName pulumi.StringOutput `pulumi:"displayName"` // An object containing a list of "key": value pairs. // Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Labels pulumi.StringMapOutput `pulumi:"labels"` // A unique identifier for the instance, which cannot be changed after // the instance is created. The name must be between 6 and 30 characters // in length. Name pulumi.StringOutput `pulumi:"name"` // The number of nodes allocated to this instance. NumNodes pulumi.IntPtrOutput `pulumi:"numNodes"` // The ID of the project in which the resource belongs. // If it is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // Instance status: 'CREATING' or 'READY'. State pulumi.StringOutput `pulumi:"state"` }
An isolated set of Cloud Spanner resources on which databases can be hosted.
To get more information about Instance, see:
* [API documentation](https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances) * How-to Guides
- [Official Documentation](https://cloud.google.com/spanner/)
## Example Usage ### Spanner Instance Basic
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewInstance(ctx, "example", &spanner.InstanceArgs{ Config: pulumi.String("regional-us-central1"), DisplayName: pulumi.String("Test Spanner Instance"), Labels: pulumi.StringMap{ "foo": pulumi.String("bar"), }, NumNodes: pulumi.Int(2), }) if err != nil { return err } return nil }) }
``` ### Spanner Instance Multi Regional
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewInstance(ctx, "example", &spanner.InstanceArgs{ Config: pulumi.String("nam-eur-asia1"), DisplayName: pulumi.String("Multi Regional Instance"), Labels: pulumi.StringMap{ "foo": pulumi.String("bar"), }, NumNodes: pulumi.Int(2), }) if err != nil { return err } return nil }) }
```
## Import
Instance can be imported using any of these accepted formats ¶
```sh
$ pulumi import gcp:spanner/instance:Instance default projects/{{project}}/instances/{{name}}
```
```sh
$ pulumi import gcp:spanner/instance:Instance default {{project}}/{{name}}
```
```sh
$ pulumi import gcp:spanner/instance:Instance default {{name}}
```
func GetInstance ¶
func GetInstance(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)
GetInstance gets an existing Instance 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 NewInstance ¶
func NewInstance(ctx *pulumi.Context, name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)
NewInstance registers a new resource with the given unique name, arguments, and options.
func (*Instance) ElementType ¶
func (*Instance) ToInstanceOutput ¶
func (i *Instance) ToInstanceOutput() InstanceOutput
func (*Instance) ToInstanceOutputWithContext ¶
func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
func (*Instance) ToInstancePtrOutput ¶
func (i *Instance) ToInstancePtrOutput() InstancePtrOutput
func (*Instance) ToInstancePtrOutputWithContext ¶
func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
type InstanceArgs ¶
type InstanceArgs struct { // The name of the instance's configuration (similar but not // quite the same as a region) which defines defines the geographic placement and // replication of your databases in this instance. It determines where your data // is stored. Values are typically of the form `regional-europe-west1` , `us-central` etc. // In order to obtain a valid list please consult the // [Configuration section of the docs](https://cloud.google.com/spanner/docs/instances). Config pulumi.StringInput // The descriptive name for this instance as it appears in UIs. Must be // unique per project and between 4 and 30 characters in length. DisplayName pulumi.StringInput // An object containing a list of "key": value pairs. // Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Labels pulumi.StringMapInput // A unique identifier for the instance, which cannot be changed after // the instance is created. The name must be between 6 and 30 characters // in length. Name pulumi.StringPtrInput // The number of nodes allocated to this instance. NumNodes pulumi.IntPtrInput // The ID of the project in which the resource belongs. // If it is not provided, the provider project is used. Project pulumi.StringPtrInput }
The set of arguments for constructing a Instance resource.
func (InstanceArgs) ElementType ¶
func (InstanceArgs) ElementType() reflect.Type
type InstanceArray ¶
type InstanceArray []InstanceInput
func (InstanceArray) ElementType ¶
func (InstanceArray) ElementType() reflect.Type
func (InstanceArray) ToInstanceArrayOutput ¶
func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput
func (InstanceArray) ToInstanceArrayOutputWithContext ¶
func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput
type InstanceArrayInput ¶
type InstanceArrayInput interface { pulumi.Input ToInstanceArrayOutput() InstanceArrayOutput ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput }
InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:
InstanceArray{ InstanceArgs{...} }
type InstanceArrayOutput ¶
type InstanceArrayOutput struct{ *pulumi.OutputState }
func (InstanceArrayOutput) ElementType ¶
func (InstanceArrayOutput) ElementType() reflect.Type
func (InstanceArrayOutput) Index ¶
func (o InstanceArrayOutput) Index(i pulumi.IntInput) InstanceOutput
func (InstanceArrayOutput) ToInstanceArrayOutput ¶
func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput
func (InstanceArrayOutput) ToInstanceArrayOutputWithContext ¶
func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput
type InstanceIAMBinding ¶
type InstanceIAMBinding struct { pulumi.CustomResourceState Condition InstanceIAMBindingConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the instance's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name of the instance. Instance pulumi.StringOutput `pulumi:"instance"` Members pulumi.StringArrayOutput `pulumi:"members"` // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `spanner.InstanceIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringOutput `pulumi:"role"` }
Three different resources help you manage your IAM policy for a Spanner instance. Each of these resources serves a different use case:
* `spanner.InstanceIAMPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached.
> **Warning:** It's entirely possibly to lock yourself out of your instance using `spanner.InstanceIAMPolicy`. Any permissions granted by default will be removed unless you include them in your config.
* `spanner.InstanceIAMBinding`: 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 instance are preserved. * `spanner.InstanceIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.
> **Note:** `spanner.InstanceIAMPolicy` **cannot** be used in conjunction with `spanner.InstanceIAMBinding` and `spanner.InstanceIAMMember` or they will fight over what your policy should be.
> **Note:** `spanner.InstanceIAMBinding` resources **can be** used in conjunction with `spanner.InstanceIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_spanner\_instance\_iam\_policy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "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{ organizations.GetIAMPolicyBinding{ Role: "roles/editor", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = spanner.NewInstanceIAMPolicy(ctx, "instance", &spanner.InstanceIAMPolicyArgs{ Instance: pulumi.String("your-instance-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_instance\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewInstanceIAMBinding(ctx, "instance", &spanner.InstanceIAMBindingArgs{ Instance: pulumi.String("your-instance-name"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_instance\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewInstanceIAMMember(ctx, "instance", &spanner.InstanceIAMMemberArgs{ Instance: pulumi.String("your-instance-name"), Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* {{project}}/{{name}} * {{name}} (project is taken from provider project) IAM member imports use space-delimited identifiers; the resource in question, the role, and the account, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMBinding:InstanceIAMBinding instance "project-name/instance-name roles/viewer user:foo@example.com"
```
IAM binding imports use space-delimited identifiers; the resource in question and the role, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMBinding:InstanceIAMBinding instance "project-name/instance-name roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMBinding:InstanceIAMBinding instance project-name/instance-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 GetInstanceIAMBinding ¶
func GetInstanceIAMBinding(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceIAMBindingState, opts ...pulumi.ResourceOption) (*InstanceIAMBinding, error)
GetInstanceIAMBinding gets an existing InstanceIAMBinding 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 NewInstanceIAMBinding ¶
func NewInstanceIAMBinding(ctx *pulumi.Context, name string, args *InstanceIAMBindingArgs, opts ...pulumi.ResourceOption) (*InstanceIAMBinding, error)
NewInstanceIAMBinding registers a new resource with the given unique name, arguments, and options.
func (*InstanceIAMBinding) ElementType ¶
func (*InstanceIAMBinding) ElementType() reflect.Type
func (*InstanceIAMBinding) ToInstanceIAMBindingOutput ¶
func (i *InstanceIAMBinding) ToInstanceIAMBindingOutput() InstanceIAMBindingOutput
func (*InstanceIAMBinding) ToInstanceIAMBindingOutputWithContext ¶
func (i *InstanceIAMBinding) ToInstanceIAMBindingOutputWithContext(ctx context.Context) InstanceIAMBindingOutput
func (*InstanceIAMBinding) ToInstanceIAMBindingPtrOutput ¶
func (i *InstanceIAMBinding) ToInstanceIAMBindingPtrOutput() InstanceIAMBindingPtrOutput
func (*InstanceIAMBinding) ToInstanceIAMBindingPtrOutputWithContext ¶
func (i *InstanceIAMBinding) ToInstanceIAMBindingPtrOutputWithContext(ctx context.Context) InstanceIAMBindingPtrOutput
type InstanceIAMBindingArgs ¶
type InstanceIAMBindingArgs struct { Condition InstanceIAMBindingConditionPtrInput // The name of the instance. Instance pulumi.StringInput Members pulumi.StringArrayInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `spanner.InstanceIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringInput }
The set of arguments for constructing a InstanceIAMBinding resource.
func (InstanceIAMBindingArgs) ElementType ¶
func (InstanceIAMBindingArgs) ElementType() reflect.Type
type InstanceIAMBindingArray ¶
type InstanceIAMBindingArray []InstanceIAMBindingInput
func (InstanceIAMBindingArray) ElementType ¶
func (InstanceIAMBindingArray) ElementType() reflect.Type
func (InstanceIAMBindingArray) ToInstanceIAMBindingArrayOutput ¶
func (i InstanceIAMBindingArray) ToInstanceIAMBindingArrayOutput() InstanceIAMBindingArrayOutput
func (InstanceIAMBindingArray) ToInstanceIAMBindingArrayOutputWithContext ¶
func (i InstanceIAMBindingArray) ToInstanceIAMBindingArrayOutputWithContext(ctx context.Context) InstanceIAMBindingArrayOutput
type InstanceIAMBindingArrayInput ¶
type InstanceIAMBindingArrayInput interface { pulumi.Input ToInstanceIAMBindingArrayOutput() InstanceIAMBindingArrayOutput ToInstanceIAMBindingArrayOutputWithContext(context.Context) InstanceIAMBindingArrayOutput }
InstanceIAMBindingArrayInput is an input type that accepts InstanceIAMBindingArray and InstanceIAMBindingArrayOutput values. You can construct a concrete instance of `InstanceIAMBindingArrayInput` via:
InstanceIAMBindingArray{ InstanceIAMBindingArgs{...} }
type InstanceIAMBindingArrayOutput ¶
type InstanceIAMBindingArrayOutput struct{ *pulumi.OutputState }
func (InstanceIAMBindingArrayOutput) ElementType ¶
func (InstanceIAMBindingArrayOutput) ElementType() reflect.Type
func (InstanceIAMBindingArrayOutput) Index ¶
func (o InstanceIAMBindingArrayOutput) Index(i pulumi.IntInput) InstanceIAMBindingOutput
func (InstanceIAMBindingArrayOutput) ToInstanceIAMBindingArrayOutput ¶
func (o InstanceIAMBindingArrayOutput) ToInstanceIAMBindingArrayOutput() InstanceIAMBindingArrayOutput
func (InstanceIAMBindingArrayOutput) ToInstanceIAMBindingArrayOutputWithContext ¶
func (o InstanceIAMBindingArrayOutput) ToInstanceIAMBindingArrayOutputWithContext(ctx context.Context) InstanceIAMBindingArrayOutput
type InstanceIAMBindingConditionArgs ¶
type InstanceIAMBindingConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (InstanceIAMBindingConditionArgs) ElementType ¶
func (InstanceIAMBindingConditionArgs) ElementType() reflect.Type
func (InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionOutput ¶
func (i InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionOutput() InstanceIAMBindingConditionOutput
func (InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionOutputWithContext ¶
func (i InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionOutputWithContext(ctx context.Context) InstanceIAMBindingConditionOutput
func (InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionPtrOutput ¶
func (i InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionPtrOutput() InstanceIAMBindingConditionPtrOutput
func (InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionPtrOutputWithContext ¶
func (i InstanceIAMBindingConditionArgs) ToInstanceIAMBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIAMBindingConditionPtrOutput
type InstanceIAMBindingConditionInput ¶
type InstanceIAMBindingConditionInput interface { pulumi.Input ToInstanceIAMBindingConditionOutput() InstanceIAMBindingConditionOutput ToInstanceIAMBindingConditionOutputWithContext(context.Context) InstanceIAMBindingConditionOutput }
InstanceIAMBindingConditionInput is an input type that accepts InstanceIAMBindingConditionArgs and InstanceIAMBindingConditionOutput values. You can construct a concrete instance of `InstanceIAMBindingConditionInput` via:
InstanceIAMBindingConditionArgs{...}
type InstanceIAMBindingConditionOutput ¶
type InstanceIAMBindingConditionOutput struct{ *pulumi.OutputState }
func (InstanceIAMBindingConditionOutput) Description ¶
func (o InstanceIAMBindingConditionOutput) Description() pulumi.StringPtrOutput
func (InstanceIAMBindingConditionOutput) ElementType ¶
func (InstanceIAMBindingConditionOutput) ElementType() reflect.Type
func (InstanceIAMBindingConditionOutput) Expression ¶
func (o InstanceIAMBindingConditionOutput) Expression() pulumi.StringOutput
func (InstanceIAMBindingConditionOutput) Title ¶
func (o InstanceIAMBindingConditionOutput) Title() pulumi.StringOutput
func (InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionOutput ¶
func (o InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionOutput() InstanceIAMBindingConditionOutput
func (InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionOutputWithContext ¶
func (o InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionOutputWithContext(ctx context.Context) InstanceIAMBindingConditionOutput
func (InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionPtrOutput ¶
func (o InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionPtrOutput() InstanceIAMBindingConditionPtrOutput
func (InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionPtrOutputWithContext ¶
func (o InstanceIAMBindingConditionOutput) ToInstanceIAMBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIAMBindingConditionPtrOutput
type InstanceIAMBindingConditionPtrInput ¶
type InstanceIAMBindingConditionPtrInput interface { pulumi.Input ToInstanceIAMBindingConditionPtrOutput() InstanceIAMBindingConditionPtrOutput ToInstanceIAMBindingConditionPtrOutputWithContext(context.Context) InstanceIAMBindingConditionPtrOutput }
InstanceIAMBindingConditionPtrInput is an input type that accepts InstanceIAMBindingConditionArgs, InstanceIAMBindingConditionPtr and InstanceIAMBindingConditionPtrOutput values. You can construct a concrete instance of `InstanceIAMBindingConditionPtrInput` via:
InstanceIAMBindingConditionArgs{...} or: nil
func InstanceIAMBindingConditionPtr ¶
func InstanceIAMBindingConditionPtr(v *InstanceIAMBindingConditionArgs) InstanceIAMBindingConditionPtrInput
type InstanceIAMBindingConditionPtrOutput ¶
type InstanceIAMBindingConditionPtrOutput struct{ *pulumi.OutputState }
func (InstanceIAMBindingConditionPtrOutput) Description ¶
func (o InstanceIAMBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
func (InstanceIAMBindingConditionPtrOutput) ElementType ¶
func (InstanceIAMBindingConditionPtrOutput) ElementType() reflect.Type
func (InstanceIAMBindingConditionPtrOutput) Expression ¶
func (o InstanceIAMBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (InstanceIAMBindingConditionPtrOutput) Title ¶
func (o InstanceIAMBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
func (InstanceIAMBindingConditionPtrOutput) ToInstanceIAMBindingConditionPtrOutput ¶
func (o InstanceIAMBindingConditionPtrOutput) ToInstanceIAMBindingConditionPtrOutput() InstanceIAMBindingConditionPtrOutput
func (InstanceIAMBindingConditionPtrOutput) ToInstanceIAMBindingConditionPtrOutputWithContext ¶
func (o InstanceIAMBindingConditionPtrOutput) ToInstanceIAMBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIAMBindingConditionPtrOutput
type InstanceIAMBindingInput ¶
type InstanceIAMBindingInput interface { pulumi.Input ToInstanceIAMBindingOutput() InstanceIAMBindingOutput ToInstanceIAMBindingOutputWithContext(ctx context.Context) InstanceIAMBindingOutput }
type InstanceIAMBindingMap ¶
type InstanceIAMBindingMap map[string]InstanceIAMBindingInput
func (InstanceIAMBindingMap) ElementType ¶
func (InstanceIAMBindingMap) ElementType() reflect.Type
func (InstanceIAMBindingMap) ToInstanceIAMBindingMapOutput ¶
func (i InstanceIAMBindingMap) ToInstanceIAMBindingMapOutput() InstanceIAMBindingMapOutput
func (InstanceIAMBindingMap) ToInstanceIAMBindingMapOutputWithContext ¶
func (i InstanceIAMBindingMap) ToInstanceIAMBindingMapOutputWithContext(ctx context.Context) InstanceIAMBindingMapOutput
type InstanceIAMBindingMapInput ¶
type InstanceIAMBindingMapInput interface { pulumi.Input ToInstanceIAMBindingMapOutput() InstanceIAMBindingMapOutput ToInstanceIAMBindingMapOutputWithContext(context.Context) InstanceIAMBindingMapOutput }
InstanceIAMBindingMapInput is an input type that accepts InstanceIAMBindingMap and InstanceIAMBindingMapOutput values. You can construct a concrete instance of `InstanceIAMBindingMapInput` via:
InstanceIAMBindingMap{ "key": InstanceIAMBindingArgs{...} }
type InstanceIAMBindingMapOutput ¶
type InstanceIAMBindingMapOutput struct{ *pulumi.OutputState }
func (InstanceIAMBindingMapOutput) ElementType ¶
func (InstanceIAMBindingMapOutput) ElementType() reflect.Type
func (InstanceIAMBindingMapOutput) MapIndex ¶
func (o InstanceIAMBindingMapOutput) MapIndex(k pulumi.StringInput) InstanceIAMBindingOutput
func (InstanceIAMBindingMapOutput) ToInstanceIAMBindingMapOutput ¶
func (o InstanceIAMBindingMapOutput) ToInstanceIAMBindingMapOutput() InstanceIAMBindingMapOutput
func (InstanceIAMBindingMapOutput) ToInstanceIAMBindingMapOutputWithContext ¶
func (o InstanceIAMBindingMapOutput) ToInstanceIAMBindingMapOutputWithContext(ctx context.Context) InstanceIAMBindingMapOutput
type InstanceIAMBindingOutput ¶
type InstanceIAMBindingOutput struct {
*pulumi.OutputState
}
func (InstanceIAMBindingOutput) ElementType ¶
func (InstanceIAMBindingOutput) ElementType() reflect.Type
func (InstanceIAMBindingOutput) ToInstanceIAMBindingOutput ¶
func (o InstanceIAMBindingOutput) ToInstanceIAMBindingOutput() InstanceIAMBindingOutput
func (InstanceIAMBindingOutput) ToInstanceIAMBindingOutputWithContext ¶
func (o InstanceIAMBindingOutput) ToInstanceIAMBindingOutputWithContext(ctx context.Context) InstanceIAMBindingOutput
func (InstanceIAMBindingOutput) ToInstanceIAMBindingPtrOutput ¶
func (o InstanceIAMBindingOutput) ToInstanceIAMBindingPtrOutput() InstanceIAMBindingPtrOutput
func (InstanceIAMBindingOutput) ToInstanceIAMBindingPtrOutputWithContext ¶
func (o InstanceIAMBindingOutput) ToInstanceIAMBindingPtrOutputWithContext(ctx context.Context) InstanceIAMBindingPtrOutput
type InstanceIAMBindingPtrInput ¶
type InstanceIAMBindingPtrInput interface { pulumi.Input ToInstanceIAMBindingPtrOutput() InstanceIAMBindingPtrOutput ToInstanceIAMBindingPtrOutputWithContext(ctx context.Context) InstanceIAMBindingPtrOutput }
type InstanceIAMBindingPtrOutput ¶
type InstanceIAMBindingPtrOutput struct {
*pulumi.OutputState
}
func (InstanceIAMBindingPtrOutput) ElementType ¶
func (InstanceIAMBindingPtrOutput) ElementType() reflect.Type
func (InstanceIAMBindingPtrOutput) ToInstanceIAMBindingPtrOutput ¶
func (o InstanceIAMBindingPtrOutput) ToInstanceIAMBindingPtrOutput() InstanceIAMBindingPtrOutput
func (InstanceIAMBindingPtrOutput) ToInstanceIAMBindingPtrOutputWithContext ¶
func (o InstanceIAMBindingPtrOutput) ToInstanceIAMBindingPtrOutputWithContext(ctx context.Context) InstanceIAMBindingPtrOutput
type InstanceIAMBindingState ¶
type InstanceIAMBindingState struct { Condition InstanceIAMBindingConditionPtrInput // (Computed) The etag of the instance's IAM policy. Etag pulumi.StringPtrInput // The name of the instance. Instance pulumi.StringPtrInput Members pulumi.StringArrayInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `spanner.InstanceIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringPtrInput }
func (InstanceIAMBindingState) ElementType ¶
func (InstanceIAMBindingState) ElementType() reflect.Type
type InstanceIAMMember ¶
type InstanceIAMMember struct { pulumi.CustomResourceState Condition InstanceIAMMemberConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the instance's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name of the instance. Instance pulumi.StringOutput `pulumi:"instance"` Member pulumi.StringOutput `pulumi:"member"` // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `spanner.InstanceIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringOutput `pulumi:"role"` }
Three different resources help you manage your IAM policy for a Spanner instance. Each of these resources serves a different use case:
* `spanner.InstanceIAMPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached.
> **Warning:** It's entirely possibly to lock yourself out of your instance using `spanner.InstanceIAMPolicy`. Any permissions granted by default will be removed unless you include them in your config.
* `spanner.InstanceIAMBinding`: 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 instance are preserved. * `spanner.InstanceIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.
> **Note:** `spanner.InstanceIAMPolicy` **cannot** be used in conjunction with `spanner.InstanceIAMBinding` and `spanner.InstanceIAMMember` or they will fight over what your policy should be.
> **Note:** `spanner.InstanceIAMBinding` resources **can be** used in conjunction with `spanner.InstanceIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_spanner\_instance\_iam\_policy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "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{ organizations.GetIAMPolicyBinding{ Role: "roles/editor", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = spanner.NewInstanceIAMPolicy(ctx, "instance", &spanner.InstanceIAMPolicyArgs{ Instance: pulumi.String("your-instance-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_instance\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewInstanceIAMBinding(ctx, "instance", &spanner.InstanceIAMBindingArgs{ Instance: pulumi.String("your-instance-name"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_instance\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewInstanceIAMMember(ctx, "instance", &spanner.InstanceIAMMemberArgs{ Instance: pulumi.String("your-instance-name"), Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* {{project}}/{{name}} * {{name}} (project is taken from provider project) IAM member imports use space-delimited identifiers; the resource in question, the role, and the account, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMMember:InstanceIAMMember instance "project-name/instance-name roles/viewer user:foo@example.com"
```
IAM binding imports use space-delimited identifiers; the resource in question and the role, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMMember:InstanceIAMMember instance "project-name/instance-name roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMMember:InstanceIAMMember instance project-name/instance-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 GetInstanceIAMMember ¶
func GetInstanceIAMMember(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceIAMMemberState, opts ...pulumi.ResourceOption) (*InstanceIAMMember, error)
GetInstanceIAMMember gets an existing InstanceIAMMember 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 NewInstanceIAMMember ¶
func NewInstanceIAMMember(ctx *pulumi.Context, name string, args *InstanceIAMMemberArgs, opts ...pulumi.ResourceOption) (*InstanceIAMMember, error)
NewInstanceIAMMember registers a new resource with the given unique name, arguments, and options.
func (*InstanceIAMMember) ElementType ¶
func (*InstanceIAMMember) ElementType() reflect.Type
func (*InstanceIAMMember) ToInstanceIAMMemberOutput ¶
func (i *InstanceIAMMember) ToInstanceIAMMemberOutput() InstanceIAMMemberOutput
func (*InstanceIAMMember) ToInstanceIAMMemberOutputWithContext ¶
func (i *InstanceIAMMember) ToInstanceIAMMemberOutputWithContext(ctx context.Context) InstanceIAMMemberOutput
func (*InstanceIAMMember) ToInstanceIAMMemberPtrOutput ¶
func (i *InstanceIAMMember) ToInstanceIAMMemberPtrOutput() InstanceIAMMemberPtrOutput
func (*InstanceIAMMember) ToInstanceIAMMemberPtrOutputWithContext ¶
func (i *InstanceIAMMember) ToInstanceIAMMemberPtrOutputWithContext(ctx context.Context) InstanceIAMMemberPtrOutput
type InstanceIAMMemberArgs ¶
type InstanceIAMMemberArgs struct { Condition InstanceIAMMemberConditionPtrInput // The name of the instance. Instance pulumi.StringInput Member pulumi.StringInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `spanner.InstanceIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringInput }
The set of arguments for constructing a InstanceIAMMember resource.
func (InstanceIAMMemberArgs) ElementType ¶
func (InstanceIAMMemberArgs) ElementType() reflect.Type
type InstanceIAMMemberArray ¶
type InstanceIAMMemberArray []InstanceIAMMemberInput
func (InstanceIAMMemberArray) ElementType ¶
func (InstanceIAMMemberArray) ElementType() reflect.Type
func (InstanceIAMMemberArray) ToInstanceIAMMemberArrayOutput ¶
func (i InstanceIAMMemberArray) ToInstanceIAMMemberArrayOutput() InstanceIAMMemberArrayOutput
func (InstanceIAMMemberArray) ToInstanceIAMMemberArrayOutputWithContext ¶
func (i InstanceIAMMemberArray) ToInstanceIAMMemberArrayOutputWithContext(ctx context.Context) InstanceIAMMemberArrayOutput
type InstanceIAMMemberArrayInput ¶
type InstanceIAMMemberArrayInput interface { pulumi.Input ToInstanceIAMMemberArrayOutput() InstanceIAMMemberArrayOutput ToInstanceIAMMemberArrayOutputWithContext(context.Context) InstanceIAMMemberArrayOutput }
InstanceIAMMemberArrayInput is an input type that accepts InstanceIAMMemberArray and InstanceIAMMemberArrayOutput values. You can construct a concrete instance of `InstanceIAMMemberArrayInput` via:
InstanceIAMMemberArray{ InstanceIAMMemberArgs{...} }
type InstanceIAMMemberArrayOutput ¶
type InstanceIAMMemberArrayOutput struct{ *pulumi.OutputState }
func (InstanceIAMMemberArrayOutput) ElementType ¶
func (InstanceIAMMemberArrayOutput) ElementType() reflect.Type
func (InstanceIAMMemberArrayOutput) Index ¶
func (o InstanceIAMMemberArrayOutput) Index(i pulumi.IntInput) InstanceIAMMemberOutput
func (InstanceIAMMemberArrayOutput) ToInstanceIAMMemberArrayOutput ¶
func (o InstanceIAMMemberArrayOutput) ToInstanceIAMMemberArrayOutput() InstanceIAMMemberArrayOutput
func (InstanceIAMMemberArrayOutput) ToInstanceIAMMemberArrayOutputWithContext ¶
func (o InstanceIAMMemberArrayOutput) ToInstanceIAMMemberArrayOutputWithContext(ctx context.Context) InstanceIAMMemberArrayOutput
type InstanceIAMMemberConditionArgs ¶
type InstanceIAMMemberConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (InstanceIAMMemberConditionArgs) ElementType ¶
func (InstanceIAMMemberConditionArgs) ElementType() reflect.Type
func (InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionOutput ¶
func (i InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionOutput() InstanceIAMMemberConditionOutput
func (InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionOutputWithContext ¶
func (i InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionOutputWithContext(ctx context.Context) InstanceIAMMemberConditionOutput
func (InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionPtrOutput ¶
func (i InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionPtrOutput() InstanceIAMMemberConditionPtrOutput
func (InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionPtrOutputWithContext ¶
func (i InstanceIAMMemberConditionArgs) ToInstanceIAMMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIAMMemberConditionPtrOutput
type InstanceIAMMemberConditionInput ¶
type InstanceIAMMemberConditionInput interface { pulumi.Input ToInstanceIAMMemberConditionOutput() InstanceIAMMemberConditionOutput ToInstanceIAMMemberConditionOutputWithContext(context.Context) InstanceIAMMemberConditionOutput }
InstanceIAMMemberConditionInput is an input type that accepts InstanceIAMMemberConditionArgs and InstanceIAMMemberConditionOutput values. You can construct a concrete instance of `InstanceIAMMemberConditionInput` via:
InstanceIAMMemberConditionArgs{...}
type InstanceIAMMemberConditionOutput ¶
type InstanceIAMMemberConditionOutput struct{ *pulumi.OutputState }
func (InstanceIAMMemberConditionOutput) Description ¶
func (o InstanceIAMMemberConditionOutput) Description() pulumi.StringPtrOutput
func (InstanceIAMMemberConditionOutput) ElementType ¶
func (InstanceIAMMemberConditionOutput) ElementType() reflect.Type
func (InstanceIAMMemberConditionOutput) Expression ¶
func (o InstanceIAMMemberConditionOutput) Expression() pulumi.StringOutput
func (InstanceIAMMemberConditionOutput) Title ¶
func (o InstanceIAMMemberConditionOutput) Title() pulumi.StringOutput
func (InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionOutput ¶
func (o InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionOutput() InstanceIAMMemberConditionOutput
func (InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionOutputWithContext ¶
func (o InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionOutputWithContext(ctx context.Context) InstanceIAMMemberConditionOutput
func (InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionPtrOutput ¶
func (o InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionPtrOutput() InstanceIAMMemberConditionPtrOutput
func (InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionPtrOutputWithContext ¶
func (o InstanceIAMMemberConditionOutput) ToInstanceIAMMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIAMMemberConditionPtrOutput
type InstanceIAMMemberConditionPtrInput ¶
type InstanceIAMMemberConditionPtrInput interface { pulumi.Input ToInstanceIAMMemberConditionPtrOutput() InstanceIAMMemberConditionPtrOutput ToInstanceIAMMemberConditionPtrOutputWithContext(context.Context) InstanceIAMMemberConditionPtrOutput }
InstanceIAMMemberConditionPtrInput is an input type that accepts InstanceIAMMemberConditionArgs, InstanceIAMMemberConditionPtr and InstanceIAMMemberConditionPtrOutput values. You can construct a concrete instance of `InstanceIAMMemberConditionPtrInput` via:
InstanceIAMMemberConditionArgs{...} or: nil
func InstanceIAMMemberConditionPtr ¶
func InstanceIAMMemberConditionPtr(v *InstanceIAMMemberConditionArgs) InstanceIAMMemberConditionPtrInput
type InstanceIAMMemberConditionPtrOutput ¶
type InstanceIAMMemberConditionPtrOutput struct{ *pulumi.OutputState }
func (InstanceIAMMemberConditionPtrOutput) Description ¶
func (o InstanceIAMMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
func (InstanceIAMMemberConditionPtrOutput) Elem ¶
func (o InstanceIAMMemberConditionPtrOutput) Elem() InstanceIAMMemberConditionOutput
func (InstanceIAMMemberConditionPtrOutput) ElementType ¶
func (InstanceIAMMemberConditionPtrOutput) ElementType() reflect.Type
func (InstanceIAMMemberConditionPtrOutput) Expression ¶
func (o InstanceIAMMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (InstanceIAMMemberConditionPtrOutput) Title ¶
func (o InstanceIAMMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
func (InstanceIAMMemberConditionPtrOutput) ToInstanceIAMMemberConditionPtrOutput ¶
func (o InstanceIAMMemberConditionPtrOutput) ToInstanceIAMMemberConditionPtrOutput() InstanceIAMMemberConditionPtrOutput
func (InstanceIAMMemberConditionPtrOutput) ToInstanceIAMMemberConditionPtrOutputWithContext ¶
func (o InstanceIAMMemberConditionPtrOutput) ToInstanceIAMMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIAMMemberConditionPtrOutput
type InstanceIAMMemberInput ¶
type InstanceIAMMemberInput interface { pulumi.Input ToInstanceIAMMemberOutput() InstanceIAMMemberOutput ToInstanceIAMMemberOutputWithContext(ctx context.Context) InstanceIAMMemberOutput }
type InstanceIAMMemberMap ¶
type InstanceIAMMemberMap map[string]InstanceIAMMemberInput
func (InstanceIAMMemberMap) ElementType ¶
func (InstanceIAMMemberMap) ElementType() reflect.Type
func (InstanceIAMMemberMap) ToInstanceIAMMemberMapOutput ¶
func (i InstanceIAMMemberMap) ToInstanceIAMMemberMapOutput() InstanceIAMMemberMapOutput
func (InstanceIAMMemberMap) ToInstanceIAMMemberMapOutputWithContext ¶
func (i InstanceIAMMemberMap) ToInstanceIAMMemberMapOutputWithContext(ctx context.Context) InstanceIAMMemberMapOutput
type InstanceIAMMemberMapInput ¶
type InstanceIAMMemberMapInput interface { pulumi.Input ToInstanceIAMMemberMapOutput() InstanceIAMMemberMapOutput ToInstanceIAMMemberMapOutputWithContext(context.Context) InstanceIAMMemberMapOutput }
InstanceIAMMemberMapInput is an input type that accepts InstanceIAMMemberMap and InstanceIAMMemberMapOutput values. You can construct a concrete instance of `InstanceIAMMemberMapInput` via:
InstanceIAMMemberMap{ "key": InstanceIAMMemberArgs{...} }
type InstanceIAMMemberMapOutput ¶
type InstanceIAMMemberMapOutput struct{ *pulumi.OutputState }
func (InstanceIAMMemberMapOutput) ElementType ¶
func (InstanceIAMMemberMapOutput) ElementType() reflect.Type
func (InstanceIAMMemberMapOutput) MapIndex ¶
func (o InstanceIAMMemberMapOutput) MapIndex(k pulumi.StringInput) InstanceIAMMemberOutput
func (InstanceIAMMemberMapOutput) ToInstanceIAMMemberMapOutput ¶
func (o InstanceIAMMemberMapOutput) ToInstanceIAMMemberMapOutput() InstanceIAMMemberMapOutput
func (InstanceIAMMemberMapOutput) ToInstanceIAMMemberMapOutputWithContext ¶
func (o InstanceIAMMemberMapOutput) ToInstanceIAMMemberMapOutputWithContext(ctx context.Context) InstanceIAMMemberMapOutput
type InstanceIAMMemberOutput ¶
type InstanceIAMMemberOutput struct {
*pulumi.OutputState
}
func (InstanceIAMMemberOutput) ElementType ¶
func (InstanceIAMMemberOutput) ElementType() reflect.Type
func (InstanceIAMMemberOutput) ToInstanceIAMMemberOutput ¶
func (o InstanceIAMMemberOutput) ToInstanceIAMMemberOutput() InstanceIAMMemberOutput
func (InstanceIAMMemberOutput) ToInstanceIAMMemberOutputWithContext ¶
func (o InstanceIAMMemberOutput) ToInstanceIAMMemberOutputWithContext(ctx context.Context) InstanceIAMMemberOutput
func (InstanceIAMMemberOutput) ToInstanceIAMMemberPtrOutput ¶
func (o InstanceIAMMemberOutput) ToInstanceIAMMemberPtrOutput() InstanceIAMMemberPtrOutput
func (InstanceIAMMemberOutput) ToInstanceIAMMemberPtrOutputWithContext ¶
func (o InstanceIAMMemberOutput) ToInstanceIAMMemberPtrOutputWithContext(ctx context.Context) InstanceIAMMemberPtrOutput
type InstanceIAMMemberPtrInput ¶
type InstanceIAMMemberPtrInput interface { pulumi.Input ToInstanceIAMMemberPtrOutput() InstanceIAMMemberPtrOutput ToInstanceIAMMemberPtrOutputWithContext(ctx context.Context) InstanceIAMMemberPtrOutput }
type InstanceIAMMemberPtrOutput ¶
type InstanceIAMMemberPtrOutput struct {
*pulumi.OutputState
}
func (InstanceIAMMemberPtrOutput) ElementType ¶
func (InstanceIAMMemberPtrOutput) ElementType() reflect.Type
func (InstanceIAMMemberPtrOutput) ToInstanceIAMMemberPtrOutput ¶
func (o InstanceIAMMemberPtrOutput) ToInstanceIAMMemberPtrOutput() InstanceIAMMemberPtrOutput
func (InstanceIAMMemberPtrOutput) ToInstanceIAMMemberPtrOutputWithContext ¶
func (o InstanceIAMMemberPtrOutput) ToInstanceIAMMemberPtrOutputWithContext(ctx context.Context) InstanceIAMMemberPtrOutput
type InstanceIAMMemberState ¶
type InstanceIAMMemberState struct { Condition InstanceIAMMemberConditionPtrInput // (Computed) The etag of the instance's IAM policy. Etag pulumi.StringPtrInput // The name of the instance. Instance pulumi.StringPtrInput Member pulumi.StringPtrInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `spanner.InstanceIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringPtrInput }
func (InstanceIAMMemberState) ElementType ¶
func (InstanceIAMMemberState) ElementType() reflect.Type
type InstanceIAMPolicy ¶
type InstanceIAMPolicy struct { pulumi.CustomResourceState // (Computed) The etag of the instance's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name of the instance. Instance pulumi.StringOutput `pulumi:"instance"` // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringOutput `pulumi:"policyData"` // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` }
Three different resources help you manage your IAM policy for a Spanner instance. Each of these resources serves a different use case:
* `spanner.InstanceIAMPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached.
> **Warning:** It's entirely possibly to lock yourself out of your instance using `spanner.InstanceIAMPolicy`. Any permissions granted by default will be removed unless you include them in your config.
* `spanner.InstanceIAMBinding`: 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 instance are preserved. * `spanner.InstanceIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.
> **Note:** `spanner.InstanceIAMPolicy` **cannot** be used in conjunction with `spanner.InstanceIAMBinding` and `spanner.InstanceIAMMember` or they will fight over what your policy should be.
> **Note:** `spanner.InstanceIAMBinding` resources **can be** used in conjunction with `spanner.InstanceIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_spanner\_instance\_iam\_policy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "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{ organizations.GetIAMPolicyBinding{ Role: "roles/editor", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = spanner.NewInstanceIAMPolicy(ctx, "instance", &spanner.InstanceIAMPolicyArgs{ Instance: pulumi.String("your-instance-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_instance\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewInstanceIAMBinding(ctx, "instance", &spanner.InstanceIAMBindingArgs{ Instance: pulumi.String("your-instance-name"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## google\_spanner\_instance\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.NewInstanceIAMMember(ctx, "instance", &spanner.InstanceIAMMemberArgs{ Instance: pulumi.String("your-instance-name"), Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/compute.networkUser"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* {{project}}/{{name}} * {{name}} (project is taken from provider project) IAM member imports use space-delimited identifiers; the resource in question, the role, and the account, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMPolicy:InstanceIAMPolicy instance "project-name/instance-name roles/viewer user:foo@example.com"
```
IAM binding imports use space-delimited identifiers; the resource in question and the role, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMPolicy:InstanceIAMPolicy instance "project-name/instance-name roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:spanner/instanceIAMPolicy:InstanceIAMPolicy instance project-name/instance-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 GetInstanceIAMPolicy ¶
func GetInstanceIAMPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceIAMPolicyState, opts ...pulumi.ResourceOption) (*InstanceIAMPolicy, error)
GetInstanceIAMPolicy gets an existing InstanceIAMPolicy 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 NewInstanceIAMPolicy ¶
func NewInstanceIAMPolicy(ctx *pulumi.Context, name string, args *InstanceIAMPolicyArgs, opts ...pulumi.ResourceOption) (*InstanceIAMPolicy, error)
NewInstanceIAMPolicy registers a new resource with the given unique name, arguments, and options.
func (*InstanceIAMPolicy) ElementType ¶
func (*InstanceIAMPolicy) ElementType() reflect.Type
func (*InstanceIAMPolicy) ToInstanceIAMPolicyOutput ¶
func (i *InstanceIAMPolicy) ToInstanceIAMPolicyOutput() InstanceIAMPolicyOutput
func (*InstanceIAMPolicy) ToInstanceIAMPolicyOutputWithContext ¶
func (i *InstanceIAMPolicy) ToInstanceIAMPolicyOutputWithContext(ctx context.Context) InstanceIAMPolicyOutput
func (*InstanceIAMPolicy) ToInstanceIAMPolicyPtrOutput ¶
func (i *InstanceIAMPolicy) ToInstanceIAMPolicyPtrOutput() InstanceIAMPolicyPtrOutput
func (*InstanceIAMPolicy) ToInstanceIAMPolicyPtrOutputWithContext ¶
func (i *InstanceIAMPolicy) ToInstanceIAMPolicyPtrOutputWithContext(ctx context.Context) InstanceIAMPolicyPtrOutput
type InstanceIAMPolicyArgs ¶
type InstanceIAMPolicyArgs struct { // The name of the instance. Instance pulumi.StringInput // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput }
The set of arguments for constructing a InstanceIAMPolicy resource.
func (InstanceIAMPolicyArgs) ElementType ¶
func (InstanceIAMPolicyArgs) ElementType() reflect.Type
type InstanceIAMPolicyArray ¶
type InstanceIAMPolicyArray []InstanceIAMPolicyInput
func (InstanceIAMPolicyArray) ElementType ¶
func (InstanceIAMPolicyArray) ElementType() reflect.Type
func (InstanceIAMPolicyArray) ToInstanceIAMPolicyArrayOutput ¶
func (i InstanceIAMPolicyArray) ToInstanceIAMPolicyArrayOutput() InstanceIAMPolicyArrayOutput
func (InstanceIAMPolicyArray) ToInstanceIAMPolicyArrayOutputWithContext ¶
func (i InstanceIAMPolicyArray) ToInstanceIAMPolicyArrayOutputWithContext(ctx context.Context) InstanceIAMPolicyArrayOutput
type InstanceIAMPolicyArrayInput ¶
type InstanceIAMPolicyArrayInput interface { pulumi.Input ToInstanceIAMPolicyArrayOutput() InstanceIAMPolicyArrayOutput ToInstanceIAMPolicyArrayOutputWithContext(context.Context) InstanceIAMPolicyArrayOutput }
InstanceIAMPolicyArrayInput is an input type that accepts InstanceIAMPolicyArray and InstanceIAMPolicyArrayOutput values. You can construct a concrete instance of `InstanceIAMPolicyArrayInput` via:
InstanceIAMPolicyArray{ InstanceIAMPolicyArgs{...} }
type InstanceIAMPolicyArrayOutput ¶
type InstanceIAMPolicyArrayOutput struct{ *pulumi.OutputState }
func (InstanceIAMPolicyArrayOutput) ElementType ¶
func (InstanceIAMPolicyArrayOutput) ElementType() reflect.Type
func (InstanceIAMPolicyArrayOutput) Index ¶
func (o InstanceIAMPolicyArrayOutput) Index(i pulumi.IntInput) InstanceIAMPolicyOutput
func (InstanceIAMPolicyArrayOutput) ToInstanceIAMPolicyArrayOutput ¶
func (o InstanceIAMPolicyArrayOutput) ToInstanceIAMPolicyArrayOutput() InstanceIAMPolicyArrayOutput
func (InstanceIAMPolicyArrayOutput) ToInstanceIAMPolicyArrayOutputWithContext ¶
func (o InstanceIAMPolicyArrayOutput) ToInstanceIAMPolicyArrayOutputWithContext(ctx context.Context) InstanceIAMPolicyArrayOutput
type InstanceIAMPolicyInput ¶
type InstanceIAMPolicyInput interface { pulumi.Input ToInstanceIAMPolicyOutput() InstanceIAMPolicyOutput ToInstanceIAMPolicyOutputWithContext(ctx context.Context) InstanceIAMPolicyOutput }
type InstanceIAMPolicyMap ¶
type InstanceIAMPolicyMap map[string]InstanceIAMPolicyInput
func (InstanceIAMPolicyMap) ElementType ¶
func (InstanceIAMPolicyMap) ElementType() reflect.Type
func (InstanceIAMPolicyMap) ToInstanceIAMPolicyMapOutput ¶
func (i InstanceIAMPolicyMap) ToInstanceIAMPolicyMapOutput() InstanceIAMPolicyMapOutput
func (InstanceIAMPolicyMap) ToInstanceIAMPolicyMapOutputWithContext ¶
func (i InstanceIAMPolicyMap) ToInstanceIAMPolicyMapOutputWithContext(ctx context.Context) InstanceIAMPolicyMapOutput
type InstanceIAMPolicyMapInput ¶
type InstanceIAMPolicyMapInput interface { pulumi.Input ToInstanceIAMPolicyMapOutput() InstanceIAMPolicyMapOutput ToInstanceIAMPolicyMapOutputWithContext(context.Context) InstanceIAMPolicyMapOutput }
InstanceIAMPolicyMapInput is an input type that accepts InstanceIAMPolicyMap and InstanceIAMPolicyMapOutput values. You can construct a concrete instance of `InstanceIAMPolicyMapInput` via:
InstanceIAMPolicyMap{ "key": InstanceIAMPolicyArgs{...} }
type InstanceIAMPolicyMapOutput ¶
type InstanceIAMPolicyMapOutput struct{ *pulumi.OutputState }
func (InstanceIAMPolicyMapOutput) ElementType ¶
func (InstanceIAMPolicyMapOutput) ElementType() reflect.Type
func (InstanceIAMPolicyMapOutput) MapIndex ¶
func (o InstanceIAMPolicyMapOutput) MapIndex(k pulumi.StringInput) InstanceIAMPolicyOutput
func (InstanceIAMPolicyMapOutput) ToInstanceIAMPolicyMapOutput ¶
func (o InstanceIAMPolicyMapOutput) ToInstanceIAMPolicyMapOutput() InstanceIAMPolicyMapOutput
func (InstanceIAMPolicyMapOutput) ToInstanceIAMPolicyMapOutputWithContext ¶
func (o InstanceIAMPolicyMapOutput) ToInstanceIAMPolicyMapOutputWithContext(ctx context.Context) InstanceIAMPolicyMapOutput
type InstanceIAMPolicyOutput ¶
type InstanceIAMPolicyOutput struct {
*pulumi.OutputState
}
func (InstanceIAMPolicyOutput) ElementType ¶
func (InstanceIAMPolicyOutput) ElementType() reflect.Type
func (InstanceIAMPolicyOutput) ToInstanceIAMPolicyOutput ¶
func (o InstanceIAMPolicyOutput) ToInstanceIAMPolicyOutput() InstanceIAMPolicyOutput
func (InstanceIAMPolicyOutput) ToInstanceIAMPolicyOutputWithContext ¶
func (o InstanceIAMPolicyOutput) ToInstanceIAMPolicyOutputWithContext(ctx context.Context) InstanceIAMPolicyOutput
func (InstanceIAMPolicyOutput) ToInstanceIAMPolicyPtrOutput ¶
func (o InstanceIAMPolicyOutput) ToInstanceIAMPolicyPtrOutput() InstanceIAMPolicyPtrOutput
func (InstanceIAMPolicyOutput) ToInstanceIAMPolicyPtrOutputWithContext ¶
func (o InstanceIAMPolicyOutput) ToInstanceIAMPolicyPtrOutputWithContext(ctx context.Context) InstanceIAMPolicyPtrOutput
type InstanceIAMPolicyPtrInput ¶
type InstanceIAMPolicyPtrInput interface { pulumi.Input ToInstanceIAMPolicyPtrOutput() InstanceIAMPolicyPtrOutput ToInstanceIAMPolicyPtrOutputWithContext(ctx context.Context) InstanceIAMPolicyPtrOutput }
type InstanceIAMPolicyPtrOutput ¶
type InstanceIAMPolicyPtrOutput struct {
*pulumi.OutputState
}
func (InstanceIAMPolicyPtrOutput) ElementType ¶
func (InstanceIAMPolicyPtrOutput) ElementType() reflect.Type
func (InstanceIAMPolicyPtrOutput) ToInstanceIAMPolicyPtrOutput ¶
func (o InstanceIAMPolicyPtrOutput) ToInstanceIAMPolicyPtrOutput() InstanceIAMPolicyPtrOutput
func (InstanceIAMPolicyPtrOutput) ToInstanceIAMPolicyPtrOutputWithContext ¶
func (o InstanceIAMPolicyPtrOutput) ToInstanceIAMPolicyPtrOutputWithContext(ctx context.Context) InstanceIAMPolicyPtrOutput
type InstanceIAMPolicyState ¶
type InstanceIAMPolicyState struct { // (Computed) The etag of the instance's IAM policy. Etag pulumi.StringPtrInput // The name of the instance. Instance pulumi.StringPtrInput // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringPtrInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput }
func (InstanceIAMPolicyState) ElementType ¶
func (InstanceIAMPolicyState) ElementType() reflect.Type
type InstanceInput ¶
type InstanceInput interface { pulumi.Input ToInstanceOutput() InstanceOutput ToInstanceOutputWithContext(ctx context.Context) InstanceOutput }
type InstanceMap ¶
type InstanceMap map[string]InstanceInput
func (InstanceMap) ElementType ¶
func (InstanceMap) ElementType() reflect.Type
func (InstanceMap) ToInstanceMapOutput ¶
func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput
func (InstanceMap) ToInstanceMapOutputWithContext ¶
func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput
type InstanceMapInput ¶
type InstanceMapInput interface { pulumi.Input ToInstanceMapOutput() InstanceMapOutput ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput }
InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:
InstanceMap{ "key": InstanceArgs{...} }
type InstanceMapOutput ¶
type InstanceMapOutput struct{ *pulumi.OutputState }
func (InstanceMapOutput) ElementType ¶
func (InstanceMapOutput) ElementType() reflect.Type
func (InstanceMapOutput) MapIndex ¶
func (o InstanceMapOutput) MapIndex(k pulumi.StringInput) InstanceOutput
func (InstanceMapOutput) ToInstanceMapOutput ¶
func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput
func (InstanceMapOutput) ToInstanceMapOutputWithContext ¶
func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput
type InstanceOutput ¶
type InstanceOutput struct {
*pulumi.OutputState
}
func (InstanceOutput) ElementType ¶
func (InstanceOutput) ElementType() reflect.Type
func (InstanceOutput) ToInstanceOutput ¶
func (o InstanceOutput) ToInstanceOutput() InstanceOutput
func (InstanceOutput) ToInstanceOutputWithContext ¶
func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
func (InstanceOutput) ToInstancePtrOutput ¶
func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput
func (InstanceOutput) ToInstancePtrOutputWithContext ¶
func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
type InstancePtrInput ¶
type InstancePtrInput interface { pulumi.Input ToInstancePtrOutput() InstancePtrOutput ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput }
type InstancePtrOutput ¶
type InstancePtrOutput struct {
*pulumi.OutputState
}
func (InstancePtrOutput) ElementType ¶
func (InstancePtrOutput) ElementType() reflect.Type
func (InstancePtrOutput) ToInstancePtrOutput ¶
func (o InstancePtrOutput) ToInstancePtrOutput() InstancePtrOutput
func (InstancePtrOutput) ToInstancePtrOutputWithContext ¶
func (o InstancePtrOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
type InstanceState ¶
type InstanceState struct { // The name of the instance's configuration (similar but not // quite the same as a region) which defines defines the geographic placement and // replication of your databases in this instance. It determines where your data // is stored. Values are typically of the form `regional-europe-west1` , `us-central` etc. // In order to obtain a valid list please consult the // [Configuration section of the docs](https://cloud.google.com/spanner/docs/instances). Config pulumi.StringPtrInput // The descriptive name for this instance as it appears in UIs. Must be // unique per project and between 4 and 30 characters in length. DisplayName pulumi.StringPtrInput // An object containing a list of "key": value pairs. // Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Labels pulumi.StringMapInput // A unique identifier for the instance, which cannot be changed after // the instance is created. The name must be between 6 and 30 characters // in length. Name pulumi.StringPtrInput // The number of nodes allocated to this instance. NumNodes pulumi.IntPtrInput // The ID of the project in which the resource belongs. // If it is not provided, the provider project is used. Project pulumi.StringPtrInput // Instance status: 'CREATING' or 'READY'. State pulumi.StringPtrInput }
func (InstanceState) ElementType ¶
func (InstanceState) ElementType() reflect.Type
type LookupInstanceArgs ¶
type LookupInstanceArgs struct { Config *string `pulumi:"config"` DisplayName *string `pulumi:"displayName"` Labels map[string]string `pulumi:"labels"` // The name of the spanner instance. Name string `pulumi:"name"` NumNodes *int `pulumi:"numNodes"` // The project in which the resource belongs. If it // is not provided, the provider project is used. Project *string `pulumi:"project"` }
A collection of arguments for invoking getInstance.
type LookupInstanceResult ¶
type LookupInstanceResult struct { Config *string `pulumi:"config"` DisplayName *string `pulumi:"displayName"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Labels map[string]string `pulumi:"labels"` Name string `pulumi:"name"` NumNodes *int `pulumi:"numNodes"` Project *string `pulumi:"project"` State string `pulumi:"state"` }
A collection of values returned by getInstance.
func LookupInstance ¶
func LookupInstance(ctx *pulumi.Context, args *LookupInstanceArgs, opts ...pulumi.InvokeOption) (*LookupInstanceResult, error)
Get a spanner instance from Google Cloud by its name.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/spanner" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := spanner.LookupInstance(ctx, &spanner.LookupInstanceArgs{ Name: "bar", }, nil) if err != nil { return err } return nil }) }
```