Documentation
¶
Index ¶
- func NewSpannerDatabaseEncryptionConfigOutputReference_Override(s SpannerDatabaseEncryptionConfigOutputReference, ...)
- func NewSpannerDatabaseTimeoutsOutputReference_Override(s SpannerDatabaseTimeoutsOutputReference, ...)
- func NewSpannerDatabase_Override(s SpannerDatabase, scope constructs.Construct, id *string, ...)
- func SpannerDatabase_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func SpannerDatabase_IsConstruct(x interface{}) *bool
- func SpannerDatabase_IsTerraformElement(x interface{}) *bool
- func SpannerDatabase_IsTerraformResource(x interface{}) *bool
- func SpannerDatabase_TfResourceType() *string
- type SpannerDatabase
- type SpannerDatabaseConfig
- type SpannerDatabaseEncryptionConfig
- type SpannerDatabaseEncryptionConfigOutputReference
- type SpannerDatabaseTimeouts
- type SpannerDatabaseTimeoutsOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewSpannerDatabaseEncryptionConfigOutputReference_Override ¶
func NewSpannerDatabaseEncryptionConfigOutputReference_Override(s SpannerDatabaseEncryptionConfigOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewSpannerDatabaseTimeoutsOutputReference_Override ¶
func NewSpannerDatabaseTimeoutsOutputReference_Override(s SpannerDatabaseTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewSpannerDatabase_Override ¶
func NewSpannerDatabase_Override(s SpannerDatabase, scope constructs.Construct, id *string, config *SpannerDatabaseConfig)
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database google_spanner_database} Resource.
func SpannerDatabase_GenerateConfigForImport ¶
func SpannerDatabase_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a SpannerDatabase resource upon running "cdktf plan <stack-name>".
func SpannerDatabase_IsConstruct ¶
func SpannerDatabase_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func SpannerDatabase_IsTerraformElement ¶
func SpannerDatabase_IsTerraformElement(x interface{}) *bool
Experimental.
func SpannerDatabase_IsTerraformResource ¶
func SpannerDatabase_IsTerraformResource(x interface{}) *bool
Experimental.
func SpannerDatabase_TfResourceType ¶
func SpannerDatabase_TfResourceType() *string
Types ¶
type SpannerDatabase ¶
type SpannerDatabase interface {
cdktf.TerraformResource
// Experimental.
CdktfStack() cdktf.TerraformStack
// Experimental.
Connection() interface{}
// Experimental.
SetConnection(val interface{})
// Experimental.
ConstructNodeMetadata() *map[string]interface{}
// Experimental.
Count() interface{}
// Experimental.
SetCount(val interface{})
DatabaseDialect() *string
SetDatabaseDialect(val *string)
DatabaseDialectInput() *string
Ddl() *[]*string
SetDdl(val *[]*string)
DdlInput() *[]*string
DeletionProtection() interface{}
SetDeletionProtection(val interface{})
DeletionProtectionInput() interface{}
// Experimental.
DependsOn() *[]*string
// Experimental.
SetDependsOn(val *[]*string)
EnableDropProtection() interface{}
SetEnableDropProtection(val interface{})
EnableDropProtectionInput() interface{}
EncryptionConfig() SpannerDatabaseEncryptionConfigOutputReference
EncryptionConfigInput() *SpannerDatabaseEncryptionConfig
// Experimental.
ForEach() cdktf.ITerraformIterator
// Experimental.
SetForEach(val cdktf.ITerraformIterator)
// Experimental.
Fqn() *string
// Experimental.
FriendlyUniqueId() *string
Id() *string
SetId(val *string)
IdInput() *string
Instance() *string
SetInstance(val *string)
InstanceInput() *string
// Experimental.
Lifecycle() *cdktf.TerraformResourceLifecycle
// Experimental.
SetLifecycle(val *cdktf.TerraformResourceLifecycle)
Name() *string
SetName(val *string)
NameInput() *string
// The tree node.
Node() constructs.Node
Project() *string
SetProject(val *string)
ProjectInput() *string
// Experimental.
Provider() cdktf.TerraformProvider
// Experimental.
SetProvider(val cdktf.TerraformProvider)
// Experimental.
Provisioners() *[]interface{}
// Experimental.
SetProvisioners(val *[]interface{})
// Experimental.
RawOverrides() interface{}
State() *string
// Experimental.
TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
// Experimental.
TerraformMetaArguments() *map[string]interface{}
// Experimental.
TerraformResourceType() *string
Timeouts() SpannerDatabaseTimeoutsOutputReference
TimeoutsInput() interface{}
VersionRetentionPeriod() *string
SetVersionRetentionPeriod(val *string)
VersionRetentionPeriodInput() *string
// Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
// Experimental.
AddMoveTarget(moveTarget *string)
// Experimental.
AddOverride(path *string, value interface{})
// Experimental.
GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
// Experimental.
GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
// Experimental.
GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
// Experimental.
GetListAttribute(terraformAttribute *string) *[]*string
// Experimental.
GetNumberAttribute(terraformAttribute *string) *float64
// Experimental.
GetNumberListAttribute(terraformAttribute *string) *[]*float64
// Experimental.
GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
// Experimental.
GetStringAttribute(terraformAttribute *string) *string
// Experimental.
GetStringMapAttribute(terraformAttribute *string) *map[string]*string
// Experimental.
HasResourceMove() interface{}
// Experimental.
ImportFrom(id *string, provider cdktf.TerraformProvider)
// Experimental.
InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
// Move the resource corresponding to "id" to this resource.
//
// Note that the resource being moved from must be marked as moved using it's instance function.
// Experimental.
MoveFromId(id *string)
// Moves this resource to the target resource given by moveTarget.
// Experimental.
MoveTo(moveTarget *string, index interface{})
// Moves this resource to the resource corresponding to "id".
// Experimental.
MoveToId(id *string)
// Overrides the auto-generated logical ID with a specific ID.
// Experimental.
OverrideLogicalId(newLogicalId *string)
PutEncryptionConfig(value *SpannerDatabaseEncryptionConfig)
PutTimeouts(value *SpannerDatabaseTimeouts)
ResetDatabaseDialect()
ResetDdl()
ResetDeletionProtection()
ResetEnableDropProtection()
ResetEncryptionConfig()
ResetId()
// Resets a previously passed logical Id to use the auto-generated logical id again.
// Experimental.
ResetOverrideLogicalId()
ResetProject()
ResetTimeouts()
ResetVersionRetentionPeriod()
SynthesizeAttributes() *map[string]interface{}
SynthesizeHclAttributes() *map[string]interface{}
// Experimental.
ToHclTerraform() interface{}
// Experimental.
ToMetadata() interface{}
// Returns a string representation of this construct.
ToString() *string
// Adds this resource to the terraform JSON output.
// Experimental.
ToTerraform() interface{}
}
Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database google_spanner_database}.
func NewSpannerDatabase ¶
func NewSpannerDatabase(scope constructs.Construct, id *string, config *SpannerDatabaseConfig) SpannerDatabase
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database google_spanner_database} Resource.
type SpannerDatabaseConfig ¶
type SpannerDatabaseConfig struct {
// Experimental.
Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
// Experimental.
Count interface{} `field:"optional" json:"count" yaml:"count"`
// Experimental.
DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
// Experimental.
ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
// Experimental.
Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
// Experimental.
Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
// Experimental.
Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
// The instance to create the database on.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#instance SpannerDatabase#instance}
Instance *string `field:"required" json:"instance" yaml:"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]'.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#name SpannerDatabase#name}
Name *string `field:"required" json:"name" yaml:"name"`
// The dialect of the Cloud Spanner Database. If it is not provided, "GOOGLE_STANDARD_SQL" will be used. Possible values: ["GOOGLE_STANDARD_SQL", "POSTGRESQL"].
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#database_dialect SpannerDatabase#database_dialect}
DatabaseDialect *string `field:"optional" json:"databaseDialect" yaml:"databaseDialect"`
// An optional list of DDL statements to run inside the database. Statements can create tables, indexes, etc.
//
// During creation these statements execute atomically with the creation of the database
// and if there is an error in any statement, the database is not created.
//
// Terraform does not perform drift detection on this field and assumes that the values
// recorded in state are accurate. Limited updates to this field are supported, and
// newly appended DDL statements can be executed in an update. However, modifications
// to prior statements will create a plan that marks the resource for recreation.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#ddl SpannerDatabase#ddl}
Ddl *[]*string `field:"optional" json:"ddl" yaml:"ddl"`
// Whether Terraform will be prevented from destroying the database.
//
// Defaults to true.
// When a'terraform destroy' or 'terraform apply' would delete the database,
// the command will fail if this field is not set to false in Terraform state.
// When the field is set to true or unset in Terraform state, a 'terraform apply'
// or 'terraform destroy' that would delete the database will fail.
// When the field is set to false, deleting the database is allowed.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#deletion_protection SpannerDatabase#deletion_protection}
DeletionProtection interface{} `field:"optional" json:"deletionProtection" yaml:"deletionProtection"`
// Whether drop protection is enabled for this database.
//
// Defaults to false.
// Drop protection is different from
// the "deletion_protection" attribute in the following ways:
// (1) "deletion_protection" only protects the database from deletions in Terraform.
// whereas setting “enableDropProtection” to true protects the database from deletions in all interfaces.
// (2) Setting "enableDropProtection" to true also prevents the deletion of the parent instance containing the database.
// "deletion_protection" attribute does not provide protection against the deletion of the parent instance.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#enable_drop_protection SpannerDatabase#enable_drop_protection}
EnableDropProtection interface{} `field:"optional" json:"enableDropProtection" yaml:"enableDropProtection"`
// encryption_config block.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#encryption_config SpannerDatabase#encryption_config}
EncryptionConfig *SpannerDatabaseEncryptionConfig `field:"optional" json:"encryptionConfig" yaml:"encryptionConfig"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#id SpannerDatabase#id}.
//
// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
Id *string `field:"optional" json:"id" yaml:"id"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#project SpannerDatabase#project}.
Project *string `field:"optional" json:"project" yaml:"project"`
// timeouts block.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#timeouts SpannerDatabase#timeouts}
Timeouts *SpannerDatabaseTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"`
// The retention period for the database.
//
// The retention period must be between 1 hour
// and 7 days, and can be specified in days, hours, minutes, or seconds. For example,
// the values 1d, 24h, 1440m, and 86400s are equivalent. Default value is 1h.
// If this property is used, you must avoid adding new DDL statements to 'ddl' that
// update the database's version_retention_period.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#version_retention_period SpannerDatabase#version_retention_period}
VersionRetentionPeriod *string `field:"optional" json:"versionRetentionPeriod" yaml:"versionRetentionPeriod"`
}
type SpannerDatabaseEncryptionConfig ¶
type SpannerDatabaseEncryptionConfig 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.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#kms_key_name SpannerDatabase#kms_key_name}
KmsKeyName *string `field:"optional" json:"kmsKeyName" yaml:"kmsKeyName"`
// Fully qualified name of the KMS keys to use to encrypt this database.
//
// The keys must exist
// in the same locations as the Spanner Database.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#kms_key_names SpannerDatabase#kms_key_names}
KmsKeyNames *[]*string `field:"optional" json:"kmsKeyNames" yaml:"kmsKeyNames"`
}
type SpannerDatabaseEncryptionConfigOutputReference ¶
type SpannerDatabaseEncryptionConfigOutputReference interface {
cdktf.ComplexObject
// the index of the complex object in a list.
// Experimental.
ComplexObjectIndex() interface{}
// Experimental.
SetComplexObjectIndex(val interface{})
// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
// Experimental.
ComplexObjectIsFromSet() *bool
// Experimental.
SetComplexObjectIsFromSet(val *bool)
// The creation stack of this resolvable which will be appended to errors thrown during resolution.
//
// If this returns an empty array the stack will not be attached.
// Experimental.
CreationStack() *[]*string
// Experimental.
Fqn() *string
InternalValue() *SpannerDatabaseEncryptionConfig
SetInternalValue(val *SpannerDatabaseEncryptionConfig)
KmsKeyName() *string
SetKmsKeyName(val *string)
KmsKeyNameInput() *string
KmsKeyNames() *[]*string
SetKmsKeyNames(val *[]*string)
KmsKeyNamesInput() *[]*string
// Experimental.
TerraformAttribute() *string
// Experimental.
SetTerraformAttribute(val *string)
// Experimental.
TerraformResource() cdktf.IInterpolatingParent
// Experimental.
SetTerraformResource(val cdktf.IInterpolatingParent)
// Experimental.
ComputeFqn() *string
// Experimental.
GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
// Experimental.
GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
// Experimental.
GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
// Experimental.
GetListAttribute(terraformAttribute *string) *[]*string
// Experimental.
GetNumberAttribute(terraformAttribute *string) *float64
// Experimental.
GetNumberListAttribute(terraformAttribute *string) *[]*float64
// Experimental.
GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
// Experimental.
GetStringAttribute(terraformAttribute *string) *string
// Experimental.
GetStringMapAttribute(terraformAttribute *string) *map[string]*string
// Experimental.
InterpolationAsList() cdktf.IResolvable
// Experimental.
InterpolationForAttribute(property *string) cdktf.IResolvable
ResetKmsKeyName()
ResetKmsKeyNames()
// Produce the Token's value at resolution time.
// Experimental.
Resolve(_context cdktf.IResolveContext) interface{}
// Return a string representation of this resolvable object.
//
// Returns a reversible string representation.
// Experimental.
ToString() *string
}
func NewSpannerDatabaseEncryptionConfigOutputReference ¶
func NewSpannerDatabaseEncryptionConfigOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) SpannerDatabaseEncryptionConfigOutputReference
type SpannerDatabaseTimeouts ¶
type SpannerDatabaseTimeouts struct {
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#create SpannerDatabase#create}.
Create *string `field:"optional" json:"create" yaml:"create"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#delete SpannerDatabase#delete}.
Delete *string `field:"optional" json:"delete" yaml:"delete"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/spanner_database#update SpannerDatabase#update}.
Update *string `field:"optional" json:"update" yaml:"update"`
}
type SpannerDatabaseTimeoutsOutputReference ¶
type SpannerDatabaseTimeoutsOutputReference interface {
cdktf.ComplexObject
// the index of the complex object in a list.
// Experimental.
ComplexObjectIndex() interface{}
// Experimental.
SetComplexObjectIndex(val interface{})
// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
// Experimental.
ComplexObjectIsFromSet() *bool
// Experimental.
SetComplexObjectIsFromSet(val *bool)
Create() *string
SetCreate(val *string)
CreateInput() *string
// The creation stack of this resolvable which will be appended to errors thrown during resolution.
//
// If this returns an empty array the stack will not be attached.
// Experimental.
CreationStack() *[]*string
Delete() *string
SetDelete(val *string)
DeleteInput() *string
// Experimental.
Fqn() *string
InternalValue() interface{}
SetInternalValue(val interface{})
// Experimental.
TerraformAttribute() *string
// Experimental.
SetTerraformAttribute(val *string)
// Experimental.
TerraformResource() cdktf.IInterpolatingParent
// Experimental.
SetTerraformResource(val cdktf.IInterpolatingParent)
Update() *string
SetUpdate(val *string)
UpdateInput() *string
// Experimental.
ComputeFqn() *string
// Experimental.
GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
// Experimental.
GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
// Experimental.
GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
// Experimental.
GetListAttribute(terraformAttribute *string) *[]*string
// Experimental.
GetNumberAttribute(terraformAttribute *string) *float64
// Experimental.
GetNumberListAttribute(terraformAttribute *string) *[]*float64
// Experimental.
GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
// Experimental.
GetStringAttribute(terraformAttribute *string) *string
// Experimental.
GetStringMapAttribute(terraformAttribute *string) *map[string]*string
// Experimental.
InterpolationAsList() cdktf.IResolvable
// Experimental.
InterpolationForAttribute(property *string) cdktf.IResolvable
ResetCreate()
ResetDelete()
ResetUpdate()
// Produce the Token's value at resolution time.
// Experimental.
Resolve(_context cdktf.IResolveContext) interface{}
// Return a string representation of this resolvable object.
//
// Returns a reversible string representation.
// Experimental.
ToString() *string
}
func NewSpannerDatabaseTimeoutsOutputReference ¶
func NewSpannerDatabaseTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) SpannerDatabaseTimeoutsOutputReference
Source Files
¶
- SpannerDatabaseConfig.go
- SpannerDatabaseEncryptionConfig.go
- SpannerDatabaseEncryptionConfigOutputReference.go
- SpannerDatabaseEncryptionConfigOutputReference__checks.go
- SpannerDatabaseTimeouts.go
- SpannerDatabaseTimeoutsOutputReference.go
- SpannerDatabaseTimeoutsOutputReference__checks.go
- SpannerDatabase__checks.go
- main.go
- spannerdatabase.go