Documentation ¶
Index ¶
- type Database
- type DatabaseArgs
- type DatabaseArray
- type DatabaseArrayInput
- type DatabaseArrayOutput
- type DatabaseEncryptionConfig
- type DatabaseEncryptionConfigArgs
- func (DatabaseEncryptionConfigArgs) ElementType() reflect.Type
- func (i DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigOutput() DatabaseEncryptionConfigOutput
- func (i DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigOutputWithContext(ctx context.Context) DatabaseEncryptionConfigOutput
- func (i DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigPtrOutput() DatabaseEncryptionConfigPtrOutput
- func (i DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigPtrOutputWithContext(ctx context.Context) DatabaseEncryptionConfigPtrOutput
- type DatabaseEncryptionConfigInput
- type DatabaseEncryptionConfigOutput
- func (DatabaseEncryptionConfigOutput) ElementType() reflect.Type
- func (o DatabaseEncryptionConfigOutput) KmsKeyName() pulumi.StringOutput
- func (o DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigOutput() DatabaseEncryptionConfigOutput
- func (o DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigOutputWithContext(ctx context.Context) DatabaseEncryptionConfigOutput
- func (o DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigPtrOutput() DatabaseEncryptionConfigPtrOutput
- func (o DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigPtrOutputWithContext(ctx context.Context) DatabaseEncryptionConfigPtrOutput
- type DatabaseEncryptionConfigPtrInput
- type DatabaseEncryptionConfigPtrOutput
- func (o DatabaseEncryptionConfigPtrOutput) Elem() DatabaseEncryptionConfigOutput
- func (DatabaseEncryptionConfigPtrOutput) ElementType() reflect.Type
- func (o DatabaseEncryptionConfigPtrOutput) KmsKeyName() pulumi.StringPtrOutput
- func (o DatabaseEncryptionConfigPtrOutput) ToDatabaseEncryptionConfigPtrOutput() DatabaseEncryptionConfigPtrOutput
- func (o DatabaseEncryptionConfigPtrOutput) ToDatabaseEncryptionConfigPtrOutputWithContext(ctx context.Context) DatabaseEncryptionConfigPtrOutput
- type DatabaseIAMBinding
- 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
- type DatabaseIAMBindingState
- type DatabaseIAMMember
- 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
- type DatabaseIAMMemberState
- type DatabaseIAMPolicy
- 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
- type DatabaseIAMPolicyState
- type DatabaseInput
- type DatabaseMap
- type DatabaseMapInput
- type DatabaseMapOutput
- type DatabaseOutput
- type DatabaseState
- type Instance
- type InstanceArgs
- type InstanceArray
- type InstanceArrayInput
- type InstanceArrayOutput
- type InstanceIAMBinding
- 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
- type InstanceIAMBindingState
- type InstanceIAMMember
- 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
- type InstanceIAMMemberState
- type InstanceIAMPolicy
- 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
- type InstanceIAMPolicyState
- type InstanceInput
- type InstanceMap
- type InstanceMapInput
- type InstanceMapOutput
- type InstanceOutput
- type InstanceState
- type LookupInstanceArgs
- type LookupInstanceOutputArgs
- type LookupInstanceResult
- type LookupInstanceResultOutput
- func (o LookupInstanceResultOutput) Config() pulumi.StringPtrOutput
- func (o LookupInstanceResultOutput) DisplayName() pulumi.StringPtrOutput
- func (LookupInstanceResultOutput) ElementType() reflect.Type
- func (o LookupInstanceResultOutput) ForceDestroy() pulumi.BoolOutput
- func (o LookupInstanceResultOutput) Id() pulumi.StringOutput
- func (o LookupInstanceResultOutput) Labels() pulumi.StringMapOutput
- func (o LookupInstanceResultOutput) Name() pulumi.StringOutput
- func (o LookupInstanceResultOutput) NumNodes() pulumi.IntOutput
- func (o LookupInstanceResultOutput) ProcessingUnits() pulumi.IntOutput
- func (o LookupInstanceResultOutput) Project() pulumi.StringPtrOutput
- func (o LookupInstanceResultOutput) State() pulumi.StringOutput
- func (o LookupInstanceResultOutput) ToLookupInstanceResultOutput() LookupInstanceResultOutput
- func (o LookupInstanceResultOutput) ToLookupInstanceResultOutputWithContext(ctx context.Context) LookupInstanceResultOutput
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"` // Encryption configuration for the database // Structure is documented below. EncryptionConfig DatabaseEncryptionConfigPtrOutput `pulumi:"encryptionConfig"` // 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/v6/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"), NumNodes: pulumi.Int(1), }) 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
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 // Encryption configuration for the database // Structure is documented below. EncryptionConfig DatabaseEncryptionConfigPtrInput // 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 DatabaseEncryptionConfig ¶
type DatabaseEncryptionConfig struct { // Fully qualified name of the KMS key to use to encrypt this database. This key must exist // in the same location as the Spanner Database. KmsKeyName string `pulumi:"kmsKeyName"` }
type DatabaseEncryptionConfigArgs ¶
type DatabaseEncryptionConfigArgs struct { // Fully qualified name of the KMS key to use to encrypt this database. This key must exist // in the same location as the Spanner Database. KmsKeyName pulumi.StringInput `pulumi:"kmsKeyName"` }
func (DatabaseEncryptionConfigArgs) ElementType ¶
func (DatabaseEncryptionConfigArgs) ElementType() reflect.Type
func (DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigOutput ¶
func (i DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigOutput() DatabaseEncryptionConfigOutput
func (DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigOutputWithContext ¶
func (i DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigOutputWithContext(ctx context.Context) DatabaseEncryptionConfigOutput
func (DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigPtrOutput ¶
func (i DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigPtrOutput() DatabaseEncryptionConfigPtrOutput
func (DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigPtrOutputWithContext ¶
func (i DatabaseEncryptionConfigArgs) ToDatabaseEncryptionConfigPtrOutputWithContext(ctx context.Context) DatabaseEncryptionConfigPtrOutput
type DatabaseEncryptionConfigInput ¶
type DatabaseEncryptionConfigInput interface { pulumi.Input ToDatabaseEncryptionConfigOutput() DatabaseEncryptionConfigOutput ToDatabaseEncryptionConfigOutputWithContext(context.Context) DatabaseEncryptionConfigOutput }
DatabaseEncryptionConfigInput is an input type that accepts DatabaseEncryptionConfigArgs and DatabaseEncryptionConfigOutput values. You can construct a concrete instance of `DatabaseEncryptionConfigInput` via:
DatabaseEncryptionConfigArgs{...}
type DatabaseEncryptionConfigOutput ¶
type DatabaseEncryptionConfigOutput struct{ *pulumi.OutputState }
func (DatabaseEncryptionConfigOutput) ElementType ¶
func (DatabaseEncryptionConfigOutput) ElementType() reflect.Type
func (DatabaseEncryptionConfigOutput) KmsKeyName ¶
func (o DatabaseEncryptionConfigOutput) KmsKeyName() pulumi.StringOutput
Fully qualified name of the KMS key to use to encrypt this database. This key must exist in the same location as the Spanner Database.
func (DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigOutput ¶
func (o DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigOutput() DatabaseEncryptionConfigOutput
func (DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigOutputWithContext ¶
func (o DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigOutputWithContext(ctx context.Context) DatabaseEncryptionConfigOutput
func (DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigPtrOutput ¶
func (o DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigPtrOutput() DatabaseEncryptionConfigPtrOutput
func (DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigPtrOutputWithContext ¶
func (o DatabaseEncryptionConfigOutput) ToDatabaseEncryptionConfigPtrOutputWithContext(ctx context.Context) DatabaseEncryptionConfigPtrOutput
type DatabaseEncryptionConfigPtrInput ¶
type DatabaseEncryptionConfigPtrInput interface { pulumi.Input ToDatabaseEncryptionConfigPtrOutput() DatabaseEncryptionConfigPtrOutput ToDatabaseEncryptionConfigPtrOutputWithContext(context.Context) DatabaseEncryptionConfigPtrOutput }
DatabaseEncryptionConfigPtrInput is an input type that accepts DatabaseEncryptionConfigArgs, DatabaseEncryptionConfigPtr and DatabaseEncryptionConfigPtrOutput values. You can construct a concrete instance of `DatabaseEncryptionConfigPtrInput` via:
DatabaseEncryptionConfigArgs{...} or: nil
func DatabaseEncryptionConfigPtr ¶
func DatabaseEncryptionConfigPtr(v *DatabaseEncryptionConfigArgs) DatabaseEncryptionConfigPtrInput
type DatabaseEncryptionConfigPtrOutput ¶
type DatabaseEncryptionConfigPtrOutput struct{ *pulumi.OutputState }
func (DatabaseEncryptionConfigPtrOutput) Elem ¶
func (o DatabaseEncryptionConfigPtrOutput) Elem() DatabaseEncryptionConfigOutput
func (DatabaseEncryptionConfigPtrOutput) ElementType ¶
func (DatabaseEncryptionConfigPtrOutput) ElementType() reflect.Type
func (DatabaseEncryptionConfigPtrOutput) KmsKeyName ¶
func (o DatabaseEncryptionConfigPtrOutput) KmsKeyName() pulumi.StringPtrOutput
Fully qualified name of the KMS key to use to encrypt this database. This key must exist in the same location as the Spanner Database.
func (DatabaseEncryptionConfigPtrOutput) ToDatabaseEncryptionConfigPtrOutput ¶
func (o DatabaseEncryptionConfigPtrOutput) ToDatabaseEncryptionConfigPtrOutput() DatabaseEncryptionConfigPtrOutput
func (DatabaseEncryptionConfigPtrOutput) ToDatabaseEncryptionConfigPtrOutputWithContext ¶
func (o DatabaseEncryptionConfigPtrOutput) ToDatabaseEncryptionConfigPtrOutputWithContext(ctx context.Context) DatabaseEncryptionConfigPtrOutput
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/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/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/v6/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
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
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/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/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/v6/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
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
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/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/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/v6/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
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
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
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 // Encryption configuration for the database // Structure is documented below. EncryptionConfig DatabaseEncryptionConfigPtrInput // 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 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"` // When deleting a spanner instance, this boolean option will delete all backups of this instance. // This must be set to true if you created a backup manually in the console. ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"` // 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. Exactly one of either node_count or processing_units must be present in // terraform. NumNodes pulumi.IntOutput `pulumi:"numNodes"` // The number of processing units allocated to this instance. Exactly one of processing_units or node_count must be present // in terraform. ProcessingUnits pulumi.IntOutput `pulumi:"processingUnits"` // 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/v6/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 Processing Units
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/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"), }, ProcessingUnits: pulumi.Int(200), }) if err != nil { return err } return nil }) }
``` ### Spanner Instance Multi Regional
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/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
type InstanceArgs ¶
type InstanceArgs struct { // The name of the instance's configuration (similar but not // quite the same as a region) which 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 // When deleting a spanner instance, this boolean option will delete all backups of this instance. // This must be set to true if you created a backup manually in the console. ForceDestroy pulumi.BoolPtrInput // 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. Exactly one of either node_count or processing_units must be present in // terraform. NumNodes pulumi.IntPtrInput // The number of processing units allocated to this instance. Exactly one of processing_units or node_count must be present // in terraform. ProcessingUnits 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/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/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/v6/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
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
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/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/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/v6/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
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
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/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/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/v6/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/v6/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
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
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
type InstanceState ¶
type InstanceState struct { // The name of the instance's configuration (similar but not // quite the same as a region) which 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 // When deleting a spanner instance, this boolean option will delete all backups of this instance. // This must be set to true if you created a backup manually in the console. ForceDestroy pulumi.BoolPtrInput // 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. Exactly one of either node_count or processing_units must be present in // terraform. NumNodes pulumi.IntPtrInput // The number of processing units allocated to this instance. Exactly one of processing_units or node_count must be present // in terraform. ProcessingUnits 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"` // The name of the spanner instance. Name string `pulumi:"name"` // 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 LookupInstanceOutputArgs ¶
type LookupInstanceOutputArgs struct { Config pulumi.StringPtrInput `pulumi:"config"` DisplayName pulumi.StringPtrInput `pulumi:"displayName"` // The name of the spanner instance. Name pulumi.StringInput `pulumi:"name"` // The project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput `pulumi:"project"` }
A collection of arguments for invoking getInstance.
func (LookupInstanceOutputArgs) ElementType ¶
func (LookupInstanceOutputArgs) ElementType() reflect.Type
type LookupInstanceResult ¶
type LookupInstanceResult struct { Config *string `pulumi:"config"` DisplayName *string `pulumi:"displayName"` ForceDestroy bool `pulumi:"forceDestroy"` // 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"` ProcessingUnits int `pulumi:"processingUnits"` 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/v6/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 }) }
```
type LookupInstanceResultOutput ¶
type LookupInstanceResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getInstance.
func LookupInstanceOutput ¶
func LookupInstanceOutput(ctx *pulumi.Context, args LookupInstanceOutputArgs, opts ...pulumi.InvokeOption) LookupInstanceResultOutput
func (LookupInstanceResultOutput) Config ¶
func (o LookupInstanceResultOutput) Config() pulumi.StringPtrOutput
func (LookupInstanceResultOutput) DisplayName ¶
func (o LookupInstanceResultOutput) DisplayName() pulumi.StringPtrOutput
func (LookupInstanceResultOutput) ElementType ¶
func (LookupInstanceResultOutput) ElementType() reflect.Type
func (LookupInstanceResultOutput) ForceDestroy ¶
func (o LookupInstanceResultOutput) ForceDestroy() pulumi.BoolOutput
func (LookupInstanceResultOutput) Id ¶
func (o LookupInstanceResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupInstanceResultOutput) Labels ¶
func (o LookupInstanceResultOutput) Labels() pulumi.StringMapOutput
func (LookupInstanceResultOutput) Name ¶
func (o LookupInstanceResultOutput) Name() pulumi.StringOutput
func (LookupInstanceResultOutput) NumNodes ¶
func (o LookupInstanceResultOutput) NumNodes() pulumi.IntOutput
func (LookupInstanceResultOutput) ProcessingUnits ¶
func (o LookupInstanceResultOutput) ProcessingUnits() pulumi.IntOutput
func (LookupInstanceResultOutput) Project ¶
func (o LookupInstanceResultOutput) Project() pulumi.StringPtrOutput
func (LookupInstanceResultOutput) State ¶
func (o LookupInstanceResultOutput) State() pulumi.StringOutput
func (LookupInstanceResultOutput) ToLookupInstanceResultOutput ¶
func (o LookupInstanceResultOutput) ToLookupInstanceResultOutput() LookupInstanceResultOutput
func (LookupInstanceResultOutput) ToLookupInstanceResultOutputWithContext ¶
func (o LookupInstanceResultOutput) ToLookupInstanceResultOutputWithContext(ctx context.Context) LookupInstanceResultOutput