Documentation
¶
Index ¶
- func NewPubsubTopicMessageStoragePolicyOutputReference_Override(p PubsubTopicMessageStoragePolicyOutputReference, ...)
- func NewPubsubTopicSchemaSettingsOutputReference_Override(p PubsubTopicSchemaSettingsOutputReference, ...)
- func NewPubsubTopicTimeoutsOutputReference_Override(p PubsubTopicTimeoutsOutputReference, ...)
- func NewPubsubTopic_Override(p PubsubTopic, scope constructs.Construct, id *string, ...)
- func PubsubTopic_IsConstruct(x interface{}) *bool
- func PubsubTopic_IsTerraformElement(x interface{}) *bool
- func PubsubTopic_IsTerraformResource(x interface{}) *bool
- func PubsubTopic_TfResourceType() *string
- type PubsubTopic
- type PubsubTopicConfig
- type PubsubTopicMessageStoragePolicy
- type PubsubTopicMessageStoragePolicyOutputReference
- type PubsubTopicSchemaSettings
- type PubsubTopicSchemaSettingsOutputReference
- type PubsubTopicTimeouts
- type PubsubTopicTimeoutsOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewPubsubTopicMessageStoragePolicyOutputReference_Override ¶
func NewPubsubTopicMessageStoragePolicyOutputReference_Override(p PubsubTopicMessageStoragePolicyOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewPubsubTopicSchemaSettingsOutputReference_Override ¶
func NewPubsubTopicSchemaSettingsOutputReference_Override(p PubsubTopicSchemaSettingsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewPubsubTopicTimeoutsOutputReference_Override ¶
func NewPubsubTopicTimeoutsOutputReference_Override(p PubsubTopicTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewPubsubTopic_Override ¶
func NewPubsubTopic_Override(p PubsubTopic, scope constructs.Construct, id *string, config *PubsubTopicConfig)
Create a new {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic google_pubsub_topic} Resource.
func PubsubTopic_IsConstruct ¶
func PubsubTopic_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 PubsubTopic_IsTerraformElement ¶
func PubsubTopic_IsTerraformElement(x interface{}) *bool
Experimental.
func PubsubTopic_IsTerraformResource ¶
func PubsubTopic_IsTerraformResource(x interface{}) *bool
Experimental.
func PubsubTopic_TfResourceType ¶
func PubsubTopic_TfResourceType() *string
Types ¶
type PubsubTopic ¶
type PubsubTopic interface {
cdktf.TerraformResource
// Experimental.
CdktfStack() cdktf.TerraformStack
// Experimental.
Connection() interface{}
// Experimental.
SetConnection(val interface{})
// Experimental.
ConstructNodeMetadata() *map[string]interface{}
// Experimental.
Count() *float64
// Experimental.
SetCount(val *float64)
// Experimental.
DependsOn() *[]*string
// Experimental.
SetDependsOn(val *[]*string)
// Experimental.
ForEach() cdktf.ITerraformIterator
// Experimental.
SetForEach(val cdktf.ITerraformIterator)
// Experimental.
Fqn() *string
// Experimental.
FriendlyUniqueId() *string
Id() *string
SetId(val *string)
IdInput() *string
KmsKeyName() *string
SetKmsKeyName(val *string)
KmsKeyNameInput() *string
Labels() *map[string]*string
SetLabels(val *map[string]*string)
LabelsInput() *map[string]*string
// Experimental.
Lifecycle() *cdktf.TerraformResourceLifecycle
// Experimental.
SetLifecycle(val *cdktf.TerraformResourceLifecycle)
MessageRetentionDuration() *string
SetMessageRetentionDuration(val *string)
MessageRetentionDurationInput() *string
MessageStoragePolicy() PubsubTopicMessageStoragePolicyOutputReference
MessageStoragePolicyInput() *PubsubTopicMessageStoragePolicy
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{}
SchemaSettings() PubsubTopicSchemaSettingsOutputReference
SchemaSettingsInput() *PubsubTopicSchemaSettings
// Experimental.
TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
// Experimental.
TerraformMetaArguments() *map[string]interface{}
// Experimental.
TerraformResourceType() *string
Timeouts() PubsubTopicTimeoutsOutputReference
TimeoutsInput() interface{}
// 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.
InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
// Overrides the auto-generated logical ID with a specific ID.
// Experimental.
OverrideLogicalId(newLogicalId *string)
PutMessageStoragePolicy(value *PubsubTopicMessageStoragePolicy)
PutSchemaSettings(value *PubsubTopicSchemaSettings)
PutTimeouts(value *PubsubTopicTimeouts)
ResetId()
ResetKmsKeyName()
ResetLabels()
ResetMessageRetentionDuration()
ResetMessageStoragePolicy()
// Resets a previously passed logical Id to use the auto-generated logical id again.
// Experimental.
ResetOverrideLogicalId()
ResetProject()
ResetSchemaSettings()
ResetTimeouts()
SynthesizeAttributes() *map[string]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://www.terraform.io/docs/providers/google/r/pubsub_topic google_pubsub_topic}.
func NewPubsubTopic ¶
func NewPubsubTopic(scope constructs.Construct, id *string, config *PubsubTopicConfig) PubsubTopic
Create a new {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic google_pubsub_topic} Resource.
type PubsubTopicConfig ¶
type PubsubTopicConfig struct {
// Experimental.
Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
// Experimental.
Count *float64 `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"`
// Name of the topic.
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#name PubsubTopic#name}
Name *string `field:"required" json:"name" yaml:"name"`
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#id PubsubTopic#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"`
// The resource name of the Cloud KMS CryptoKey to be used to protect access to messages published on this topic.
//
// Your project's PubSub service account
// ('service-{{PROJECT_NUMBER}}@gcp-sa-pubsub.iam.gserviceaccount.com') must have
// 'roles/cloudkms.cryptoKeyEncrypterDecrypter' to use this feature.
// The expected format is 'projects/*\/locations/*\/keyRings/*\/cryptoKeys/*'
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#kms_key_name PubsubTopic#kms_key_name}
KmsKeyName *string `field:"optional" json:"kmsKeyName" yaml:"kmsKeyName"`
// A set of key/value label pairs to assign to this Topic.
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#labels PubsubTopic#labels}
Labels *map[string]*string `field:"optional" json:"labels" yaml:"labels"`
// Indicates the minimum duration to retain a message after it is published to the topic.
//
// If this field is set, messages published to the topic in
// the last messageRetentionDuration are always available to subscribers.
// For instance, it allows any attached subscription to seek to a timestamp
// that is up to messageRetentionDuration in the past. If this field is not
// set, message retention is controlled by settings on individual subscriptions.
// Cannot be more than 31 days or less than 10 minutes.
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#message_retention_duration PubsubTopic#message_retention_duration}
MessageRetentionDuration *string `field:"optional" json:"messageRetentionDuration" yaml:"messageRetentionDuration"`
// message_storage_policy block.
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#message_storage_policy PubsubTopic#message_storage_policy}
MessageStoragePolicy *PubsubTopicMessageStoragePolicy `field:"optional" json:"messageStoragePolicy" yaml:"messageStoragePolicy"`
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#project PubsubTopic#project}.
Project *string `field:"optional" json:"project" yaml:"project"`
// schema_settings block.
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#schema_settings PubsubTopic#schema_settings}
SchemaSettings *PubsubTopicSchemaSettings `field:"optional" json:"schemaSettings" yaml:"schemaSettings"`
// timeouts block.
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#timeouts PubsubTopic#timeouts}
Timeouts *PubsubTopicTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"`
}
type PubsubTopicMessageStoragePolicy ¶
type PubsubTopicMessageStoragePolicy struct {
// A list of IDs of GCP regions where messages that are published to the topic may be persisted in storage.
//
// Messages published by
// publishers running in non-allowed GCP regions (or running outside
// of GCP altogether) will be routed for storage in one of the
// allowed regions. An empty list means that no regions are allowed,
// and is not a valid configuration.
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#allowed_persistence_regions PubsubTopic#allowed_persistence_regions}
AllowedPersistenceRegions *[]*string `field:"required" json:"allowedPersistenceRegions" yaml:"allowedPersistenceRegions"`
}
type PubsubTopicMessageStoragePolicyOutputReference ¶
type PubsubTopicMessageStoragePolicyOutputReference interface {
cdktf.ComplexObject
AllowedPersistenceRegions() *[]*string
SetAllowedPersistenceRegions(val *[]*string)
AllowedPersistenceRegionsInput() *[]*string
// 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() *PubsubTopicMessageStoragePolicy
SetInternalValue(val *PubsubTopicMessageStoragePolicy)
// 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
// 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 NewPubsubTopicMessageStoragePolicyOutputReference ¶
func NewPubsubTopicMessageStoragePolicyOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicMessageStoragePolicyOutputReference
type PubsubTopicSchemaSettings ¶
type PubsubTopicSchemaSettings struct {
// The name of the schema that messages published should be validated against.
//
// Format is projects/{project}/schemas/{schema}.
// The value of this field will be _deleted-schema_
// if the schema has been deleted.
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#schema PubsubTopic#schema}
Schema *string `field:"required" json:"schema" yaml:"schema"`
// The encoding of messages validated against schema. Default value: "ENCODING_UNSPECIFIED" Possible values: ["ENCODING_UNSPECIFIED", "JSON", "BINARY"].
//
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#encoding PubsubTopic#encoding}
Encoding *string `field:"optional" json:"encoding" yaml:"encoding"`
}
type PubsubTopicSchemaSettingsOutputReference ¶
type PubsubTopicSchemaSettingsOutputReference 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
Encoding() *string
SetEncoding(val *string)
EncodingInput() *string
// Experimental.
Fqn() *string
InternalValue() *PubsubTopicSchemaSettings
SetInternalValue(val *PubsubTopicSchemaSettings)
Schema() *string
SetSchema(val *string)
SchemaInput() *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
ResetEncoding()
// 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 NewPubsubTopicSchemaSettingsOutputReference ¶
func NewPubsubTopicSchemaSettingsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicSchemaSettingsOutputReference
type PubsubTopicTimeouts ¶
type PubsubTopicTimeouts struct {
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#create PubsubTopic#create}.
Create *string `field:"optional" json:"create" yaml:"create"`
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#delete PubsubTopic#delete}.
Delete *string `field:"optional" json:"delete" yaml:"delete"`
// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/pubsub_topic#update PubsubTopic#update}.
Update *string `field:"optional" json:"update" yaml:"update"`
}
type PubsubTopicTimeoutsOutputReference ¶
type PubsubTopicTimeoutsOutputReference 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 NewPubsubTopicTimeoutsOutputReference ¶
func NewPubsubTopicTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) PubsubTopicTimeoutsOutputReference
Source Files
¶
- pubsubtopic.go
- pubsubtopic_PubsubTopic.go
- pubsubtopic_PubsubTopicConfig.go
- pubsubtopic_PubsubTopicMessageStoragePolicy.go
- pubsubtopic_PubsubTopicMessageStoragePolicyOutputReference.go
- pubsubtopic_PubsubTopicMessageStoragePolicyOutputReference__runtime_type_checks.go
- pubsubtopic_PubsubTopicSchemaSettings.go
- pubsubtopic_PubsubTopicSchemaSettingsOutputReference.go
- pubsubtopic_PubsubTopicSchemaSettingsOutputReference__runtime_type_checks.go
- pubsubtopic_PubsubTopicTimeouts.go
- pubsubtopic_PubsubTopicTimeoutsOutputReference.go
- pubsubtopic_PubsubTopicTimeoutsOutputReference__runtime_type_checks.go
- pubsubtopic_PubsubTopic__runtime_type_checks.go