Documentation ¶
Index ¶
- type GetTopicMessageStoragePolicy
- type GetTopicMessageStoragePolicyArgs
- func (GetTopicMessageStoragePolicyArgs) ElementType() reflect.Type
- func (i GetTopicMessageStoragePolicyArgs) ToGetTopicMessageStoragePolicyOutput() GetTopicMessageStoragePolicyOutput
- func (i GetTopicMessageStoragePolicyArgs) ToGetTopicMessageStoragePolicyOutputWithContext(ctx context.Context) GetTopicMessageStoragePolicyOutput
- type GetTopicMessageStoragePolicyArray
- func (GetTopicMessageStoragePolicyArray) ElementType() reflect.Type
- func (i GetTopicMessageStoragePolicyArray) ToGetTopicMessageStoragePolicyArrayOutput() GetTopicMessageStoragePolicyArrayOutput
- func (i GetTopicMessageStoragePolicyArray) ToGetTopicMessageStoragePolicyArrayOutputWithContext(ctx context.Context) GetTopicMessageStoragePolicyArrayOutput
- type GetTopicMessageStoragePolicyArrayInput
- type GetTopicMessageStoragePolicyArrayOutput
- func (GetTopicMessageStoragePolicyArrayOutput) ElementType() reflect.Type
- func (o GetTopicMessageStoragePolicyArrayOutput) Index(i pulumi.IntInput) GetTopicMessageStoragePolicyOutput
- func (o GetTopicMessageStoragePolicyArrayOutput) ToGetTopicMessageStoragePolicyArrayOutput() GetTopicMessageStoragePolicyArrayOutput
- func (o GetTopicMessageStoragePolicyArrayOutput) ToGetTopicMessageStoragePolicyArrayOutputWithContext(ctx context.Context) GetTopicMessageStoragePolicyArrayOutput
- type GetTopicMessageStoragePolicyInput
- type GetTopicMessageStoragePolicyOutput
- func (o GetTopicMessageStoragePolicyOutput) AllowedPersistenceRegions() pulumi.StringArrayOutput
- func (GetTopicMessageStoragePolicyOutput) ElementType() reflect.Type
- func (o GetTopicMessageStoragePolicyOutput) ToGetTopicMessageStoragePolicyOutput() GetTopicMessageStoragePolicyOutput
- func (o GetTopicMessageStoragePolicyOutput) ToGetTopicMessageStoragePolicyOutputWithContext(ctx context.Context) GetTopicMessageStoragePolicyOutput
- type GetTopicSchemaSetting
- type GetTopicSchemaSettingArgs
- type GetTopicSchemaSettingArray
- func (GetTopicSchemaSettingArray) ElementType() reflect.Type
- func (i GetTopicSchemaSettingArray) ToGetTopicSchemaSettingArrayOutput() GetTopicSchemaSettingArrayOutput
- func (i GetTopicSchemaSettingArray) ToGetTopicSchemaSettingArrayOutputWithContext(ctx context.Context) GetTopicSchemaSettingArrayOutput
- type GetTopicSchemaSettingArrayInput
- type GetTopicSchemaSettingArrayOutput
- func (GetTopicSchemaSettingArrayOutput) ElementType() reflect.Type
- func (o GetTopicSchemaSettingArrayOutput) Index(i pulumi.IntInput) GetTopicSchemaSettingOutput
- func (o GetTopicSchemaSettingArrayOutput) ToGetTopicSchemaSettingArrayOutput() GetTopicSchemaSettingArrayOutput
- func (o GetTopicSchemaSettingArrayOutput) ToGetTopicSchemaSettingArrayOutputWithContext(ctx context.Context) GetTopicSchemaSettingArrayOutput
- type GetTopicSchemaSettingInput
- type GetTopicSchemaSettingOutput
- func (GetTopicSchemaSettingOutput) ElementType() reflect.Type
- func (o GetTopicSchemaSettingOutput) Encoding() pulumi.StringOutput
- func (o GetTopicSchemaSettingOutput) Schema() pulumi.StringOutput
- func (o GetTopicSchemaSettingOutput) ToGetTopicSchemaSettingOutput() GetTopicSchemaSettingOutput
- func (o GetTopicSchemaSettingOutput) ToGetTopicSchemaSettingOutputWithContext(ctx context.Context) GetTopicSchemaSettingOutput
- type LiteReservation
- type LiteReservationArgs
- type LiteReservationArray
- type LiteReservationArrayInput
- type LiteReservationArrayOutput
- func (LiteReservationArrayOutput) ElementType() reflect.Type
- func (o LiteReservationArrayOutput) Index(i pulumi.IntInput) LiteReservationOutput
- func (o LiteReservationArrayOutput) ToLiteReservationArrayOutput() LiteReservationArrayOutput
- func (o LiteReservationArrayOutput) ToLiteReservationArrayOutputWithContext(ctx context.Context) LiteReservationArrayOutput
- type LiteReservationInput
- type LiteReservationMap
- type LiteReservationMapInput
- type LiteReservationMapOutput
- func (LiteReservationMapOutput) ElementType() reflect.Type
- func (o LiteReservationMapOutput) MapIndex(k pulumi.StringInput) LiteReservationOutput
- func (o LiteReservationMapOutput) ToLiteReservationMapOutput() LiteReservationMapOutput
- func (o LiteReservationMapOutput) ToLiteReservationMapOutputWithContext(ctx context.Context) LiteReservationMapOutput
- type LiteReservationOutput
- func (LiteReservationOutput) ElementType() reflect.Type
- func (o LiteReservationOutput) Name() pulumi.StringOutput
- func (o LiteReservationOutput) Project() pulumi.StringOutput
- func (o LiteReservationOutput) Region() pulumi.StringPtrOutput
- func (o LiteReservationOutput) ThroughputCapacity() pulumi.IntOutput
- func (o LiteReservationOutput) ToLiteReservationOutput() LiteReservationOutput
- func (o LiteReservationOutput) ToLiteReservationOutputWithContext(ctx context.Context) LiteReservationOutput
- type LiteReservationState
- type LiteSubscription
- type LiteSubscriptionArgs
- type LiteSubscriptionArray
- type LiteSubscriptionArrayInput
- type LiteSubscriptionArrayOutput
- func (LiteSubscriptionArrayOutput) ElementType() reflect.Type
- func (o LiteSubscriptionArrayOutput) Index(i pulumi.IntInput) LiteSubscriptionOutput
- func (o LiteSubscriptionArrayOutput) ToLiteSubscriptionArrayOutput() LiteSubscriptionArrayOutput
- func (o LiteSubscriptionArrayOutput) ToLiteSubscriptionArrayOutputWithContext(ctx context.Context) LiteSubscriptionArrayOutput
- type LiteSubscriptionDeliveryConfig
- type LiteSubscriptionDeliveryConfigArgs
- func (LiteSubscriptionDeliveryConfigArgs) ElementType() reflect.Type
- func (i LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigOutput() LiteSubscriptionDeliveryConfigOutput
- func (i LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigOutput
- func (i LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigPtrOutput() LiteSubscriptionDeliveryConfigPtrOutput
- func (i LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigPtrOutput
- type LiteSubscriptionDeliveryConfigInput
- type LiteSubscriptionDeliveryConfigOutput
- func (o LiteSubscriptionDeliveryConfigOutput) DeliveryRequirement() pulumi.StringOutput
- func (LiteSubscriptionDeliveryConfigOutput) ElementType() reflect.Type
- func (o LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigOutput() LiteSubscriptionDeliveryConfigOutput
- func (o LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigOutput
- func (o LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigPtrOutput() LiteSubscriptionDeliveryConfigPtrOutput
- func (o LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigPtrOutput
- type LiteSubscriptionDeliveryConfigPtrInput
- type LiteSubscriptionDeliveryConfigPtrOutput
- func (o LiteSubscriptionDeliveryConfigPtrOutput) DeliveryRequirement() pulumi.StringPtrOutput
- func (o LiteSubscriptionDeliveryConfigPtrOutput) Elem() LiteSubscriptionDeliveryConfigOutput
- func (LiteSubscriptionDeliveryConfigPtrOutput) ElementType() reflect.Type
- func (o LiteSubscriptionDeliveryConfigPtrOutput) ToLiteSubscriptionDeliveryConfigPtrOutput() LiteSubscriptionDeliveryConfigPtrOutput
- func (o LiteSubscriptionDeliveryConfigPtrOutput) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigPtrOutput
- type LiteSubscriptionInput
- type LiteSubscriptionMap
- type LiteSubscriptionMapInput
- type LiteSubscriptionMapOutput
- func (LiteSubscriptionMapOutput) ElementType() reflect.Type
- func (o LiteSubscriptionMapOutput) MapIndex(k pulumi.StringInput) LiteSubscriptionOutput
- func (o LiteSubscriptionMapOutput) ToLiteSubscriptionMapOutput() LiteSubscriptionMapOutput
- func (o LiteSubscriptionMapOutput) ToLiteSubscriptionMapOutputWithContext(ctx context.Context) LiteSubscriptionMapOutput
- type LiteSubscriptionOutput
- func (o LiteSubscriptionOutput) DeliveryConfig() LiteSubscriptionDeliveryConfigPtrOutput
- func (LiteSubscriptionOutput) ElementType() reflect.Type
- func (o LiteSubscriptionOutput) Name() pulumi.StringOutput
- func (o LiteSubscriptionOutput) Project() pulumi.StringOutput
- func (o LiteSubscriptionOutput) Region() pulumi.StringPtrOutput
- func (o LiteSubscriptionOutput) ToLiteSubscriptionOutput() LiteSubscriptionOutput
- func (o LiteSubscriptionOutput) ToLiteSubscriptionOutputWithContext(ctx context.Context) LiteSubscriptionOutput
- func (o LiteSubscriptionOutput) Topic() pulumi.StringOutput
- func (o LiteSubscriptionOutput) Zone() pulumi.StringPtrOutput
- type LiteSubscriptionState
- type LiteTopic
- type LiteTopicArgs
- type LiteTopicArray
- type LiteTopicArrayInput
- type LiteTopicArrayOutput
- func (LiteTopicArrayOutput) ElementType() reflect.Type
- func (o LiteTopicArrayOutput) Index(i pulumi.IntInput) LiteTopicOutput
- func (o LiteTopicArrayOutput) ToLiteTopicArrayOutput() LiteTopicArrayOutput
- func (o LiteTopicArrayOutput) ToLiteTopicArrayOutputWithContext(ctx context.Context) LiteTopicArrayOutput
- type LiteTopicInput
- type LiteTopicMap
- type LiteTopicMapInput
- type LiteTopicMapOutput
- type LiteTopicOutput
- func (LiteTopicOutput) ElementType() reflect.Type
- func (o LiteTopicOutput) Name() pulumi.StringOutput
- func (o LiteTopicOutput) PartitionConfig() LiteTopicPartitionConfigPtrOutput
- func (o LiteTopicOutput) Project() pulumi.StringOutput
- func (o LiteTopicOutput) Region() pulumi.StringPtrOutput
- func (o LiteTopicOutput) ReservationConfig() LiteTopicReservationConfigPtrOutput
- func (o LiteTopicOutput) RetentionConfig() LiteTopicRetentionConfigPtrOutput
- func (o LiteTopicOutput) ToLiteTopicOutput() LiteTopicOutput
- func (o LiteTopicOutput) ToLiteTopicOutputWithContext(ctx context.Context) LiteTopicOutput
- func (o LiteTopicOutput) Zone() pulumi.StringPtrOutput
- type LiteTopicPartitionConfig
- type LiteTopicPartitionConfigArgs
- func (LiteTopicPartitionConfigArgs) ElementType() reflect.Type
- func (i LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigOutput() LiteTopicPartitionConfigOutput
- func (i LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigOutputWithContext(ctx context.Context) LiteTopicPartitionConfigOutput
- func (i LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigPtrOutput() LiteTopicPartitionConfigPtrOutput
- func (i LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigPtrOutput
- type LiteTopicPartitionConfigCapacity
- type LiteTopicPartitionConfigCapacityArgs
- func (LiteTopicPartitionConfigCapacityArgs) ElementType() reflect.Type
- func (i LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityOutput() LiteTopicPartitionConfigCapacityOutput
- func (i LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityOutput
- func (i LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityPtrOutput() LiteTopicPartitionConfigCapacityPtrOutput
- func (i LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityPtrOutput
- type LiteTopicPartitionConfigCapacityInput
- type LiteTopicPartitionConfigCapacityOutput
- func (LiteTopicPartitionConfigCapacityOutput) ElementType() reflect.Type
- func (o LiteTopicPartitionConfigCapacityOutput) PublishMibPerSec() pulumi.IntOutput
- func (o LiteTopicPartitionConfigCapacityOutput) SubscribeMibPerSec() pulumi.IntOutput
- func (o LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityOutput() LiteTopicPartitionConfigCapacityOutput
- func (o LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityOutput
- func (o LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityPtrOutput() LiteTopicPartitionConfigCapacityPtrOutput
- func (o LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityPtrOutput
- type LiteTopicPartitionConfigCapacityPtrInput
- type LiteTopicPartitionConfigCapacityPtrOutput
- func (o LiteTopicPartitionConfigCapacityPtrOutput) Elem() LiteTopicPartitionConfigCapacityOutput
- func (LiteTopicPartitionConfigCapacityPtrOutput) ElementType() reflect.Type
- func (o LiteTopicPartitionConfigCapacityPtrOutput) PublishMibPerSec() pulumi.IntPtrOutput
- func (o LiteTopicPartitionConfigCapacityPtrOutput) SubscribeMibPerSec() pulumi.IntPtrOutput
- func (o LiteTopicPartitionConfigCapacityPtrOutput) ToLiteTopicPartitionConfigCapacityPtrOutput() LiteTopicPartitionConfigCapacityPtrOutput
- func (o LiteTopicPartitionConfigCapacityPtrOutput) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityPtrOutput
- type LiteTopicPartitionConfigInput
- type LiteTopicPartitionConfigOutput
- func (o LiteTopicPartitionConfigOutput) Capacity() LiteTopicPartitionConfigCapacityPtrOutput
- func (o LiteTopicPartitionConfigOutput) Count() pulumi.IntOutput
- func (LiteTopicPartitionConfigOutput) ElementType() reflect.Type
- func (o LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigOutput() LiteTopicPartitionConfigOutput
- func (o LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigOutputWithContext(ctx context.Context) LiteTopicPartitionConfigOutput
- func (o LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigPtrOutput() LiteTopicPartitionConfigPtrOutput
- func (o LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigPtrOutput
- type LiteTopicPartitionConfigPtrInput
- type LiteTopicPartitionConfigPtrOutput
- func (o LiteTopicPartitionConfigPtrOutput) Capacity() LiteTopicPartitionConfigCapacityPtrOutput
- func (o LiteTopicPartitionConfigPtrOutput) Count() pulumi.IntPtrOutput
- func (o LiteTopicPartitionConfigPtrOutput) Elem() LiteTopicPartitionConfigOutput
- func (LiteTopicPartitionConfigPtrOutput) ElementType() reflect.Type
- func (o LiteTopicPartitionConfigPtrOutput) ToLiteTopicPartitionConfigPtrOutput() LiteTopicPartitionConfigPtrOutput
- func (o LiteTopicPartitionConfigPtrOutput) ToLiteTopicPartitionConfigPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigPtrOutput
- type LiteTopicReservationConfig
- type LiteTopicReservationConfigArgs
- func (LiteTopicReservationConfigArgs) ElementType() reflect.Type
- func (i LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigOutput() LiteTopicReservationConfigOutput
- func (i LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigOutputWithContext(ctx context.Context) LiteTopicReservationConfigOutput
- func (i LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigPtrOutput() LiteTopicReservationConfigPtrOutput
- func (i LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigPtrOutputWithContext(ctx context.Context) LiteTopicReservationConfigPtrOutput
- type LiteTopicReservationConfigInput
- type LiteTopicReservationConfigOutput
- func (LiteTopicReservationConfigOutput) ElementType() reflect.Type
- func (o LiteTopicReservationConfigOutput) ThroughputReservation() pulumi.StringPtrOutput
- func (o LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigOutput() LiteTopicReservationConfigOutput
- func (o LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigOutputWithContext(ctx context.Context) LiteTopicReservationConfigOutput
- func (o LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigPtrOutput() LiteTopicReservationConfigPtrOutput
- func (o LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigPtrOutputWithContext(ctx context.Context) LiteTopicReservationConfigPtrOutput
- type LiteTopicReservationConfigPtrInput
- type LiteTopicReservationConfigPtrOutput
- func (o LiteTopicReservationConfigPtrOutput) Elem() LiteTopicReservationConfigOutput
- func (LiteTopicReservationConfigPtrOutput) ElementType() reflect.Type
- func (o LiteTopicReservationConfigPtrOutput) ThroughputReservation() pulumi.StringPtrOutput
- func (o LiteTopicReservationConfigPtrOutput) ToLiteTopicReservationConfigPtrOutput() LiteTopicReservationConfigPtrOutput
- func (o LiteTopicReservationConfigPtrOutput) ToLiteTopicReservationConfigPtrOutputWithContext(ctx context.Context) LiteTopicReservationConfigPtrOutput
- type LiteTopicRetentionConfig
- type LiteTopicRetentionConfigArgs
- func (LiteTopicRetentionConfigArgs) ElementType() reflect.Type
- func (i LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigOutput() LiteTopicRetentionConfigOutput
- func (i LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigOutputWithContext(ctx context.Context) LiteTopicRetentionConfigOutput
- func (i LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigPtrOutput() LiteTopicRetentionConfigPtrOutput
- func (i LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigPtrOutputWithContext(ctx context.Context) LiteTopicRetentionConfigPtrOutput
- type LiteTopicRetentionConfigInput
- type LiteTopicRetentionConfigOutput
- func (LiteTopicRetentionConfigOutput) ElementType() reflect.Type
- func (o LiteTopicRetentionConfigOutput) PerPartitionBytes() pulumi.StringOutput
- func (o LiteTopicRetentionConfigOutput) Period() pulumi.StringPtrOutput
- func (o LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigOutput() LiteTopicRetentionConfigOutput
- func (o LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigOutputWithContext(ctx context.Context) LiteTopicRetentionConfigOutput
- func (o LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigPtrOutput() LiteTopicRetentionConfigPtrOutput
- func (o LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigPtrOutputWithContext(ctx context.Context) LiteTopicRetentionConfigPtrOutput
- type LiteTopicRetentionConfigPtrInput
- type LiteTopicRetentionConfigPtrOutput
- func (o LiteTopicRetentionConfigPtrOutput) Elem() LiteTopicRetentionConfigOutput
- func (LiteTopicRetentionConfigPtrOutput) ElementType() reflect.Type
- func (o LiteTopicRetentionConfigPtrOutput) PerPartitionBytes() pulumi.StringPtrOutput
- func (o LiteTopicRetentionConfigPtrOutput) Period() pulumi.StringPtrOutput
- func (o LiteTopicRetentionConfigPtrOutput) ToLiteTopicRetentionConfigPtrOutput() LiteTopicRetentionConfigPtrOutput
- func (o LiteTopicRetentionConfigPtrOutput) ToLiteTopicRetentionConfigPtrOutputWithContext(ctx context.Context) LiteTopicRetentionConfigPtrOutput
- type LiteTopicState
- type LookupTopicArgs
- type LookupTopicOutputArgs
- type LookupTopicResult
- type LookupTopicResultOutput
- func (LookupTopicResultOutput) ElementType() reflect.Type
- func (o LookupTopicResultOutput) Id() pulumi.StringOutput
- func (o LookupTopicResultOutput) KmsKeyName() pulumi.StringOutput
- func (o LookupTopicResultOutput) Labels() pulumi.StringMapOutput
- func (o LookupTopicResultOutput) MessageRetentionDuration() pulumi.StringOutput
- func (o LookupTopicResultOutput) MessageStoragePolicies() GetTopicMessageStoragePolicyArrayOutput
- func (o LookupTopicResultOutput) Name() pulumi.StringOutput
- func (o LookupTopicResultOutput) Project() pulumi.StringPtrOutput
- func (o LookupTopicResultOutput) SchemaSettings() GetTopicSchemaSettingArrayOutput
- func (o LookupTopicResultOutput) ToLookupTopicResultOutput() LookupTopicResultOutput
- func (o LookupTopicResultOutput) ToLookupTopicResultOutputWithContext(ctx context.Context) LookupTopicResultOutput
- type Schema
- type SchemaArgs
- type SchemaArray
- type SchemaArrayInput
- type SchemaArrayOutput
- type SchemaInput
- type SchemaMap
- type SchemaMapInput
- type SchemaMapOutput
- type SchemaOutput
- func (o SchemaOutput) Definition() pulumi.StringPtrOutput
- func (SchemaOutput) ElementType() reflect.Type
- func (o SchemaOutput) Name() pulumi.StringOutput
- func (o SchemaOutput) Project() pulumi.StringOutput
- func (o SchemaOutput) ToSchemaOutput() SchemaOutput
- func (o SchemaOutput) ToSchemaOutputWithContext(ctx context.Context) SchemaOutput
- func (o SchemaOutput) Type() pulumi.StringPtrOutput
- type SchemaState
- type Subscription
- type SubscriptionArgs
- type SubscriptionArray
- type SubscriptionArrayInput
- type SubscriptionArrayOutput
- func (SubscriptionArrayOutput) ElementType() reflect.Type
- func (o SubscriptionArrayOutput) Index(i pulumi.IntInput) SubscriptionOutput
- func (o SubscriptionArrayOutput) ToSubscriptionArrayOutput() SubscriptionArrayOutput
- func (o SubscriptionArrayOutput) ToSubscriptionArrayOutputWithContext(ctx context.Context) SubscriptionArrayOutput
- type SubscriptionBigqueryConfig
- type SubscriptionBigqueryConfigArgs
- func (SubscriptionBigqueryConfigArgs) ElementType() reflect.Type
- func (i SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigOutput() SubscriptionBigqueryConfigOutput
- func (i SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigOutput
- func (i SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigPtrOutput() SubscriptionBigqueryConfigPtrOutput
- func (i SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigPtrOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigPtrOutput
- type SubscriptionBigqueryConfigInput
- type SubscriptionBigqueryConfigOutput
- func (o SubscriptionBigqueryConfigOutput) DropUnknownFields() pulumi.BoolPtrOutput
- func (SubscriptionBigqueryConfigOutput) ElementType() reflect.Type
- func (o SubscriptionBigqueryConfigOutput) Table() pulumi.StringOutput
- func (o SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigOutput() SubscriptionBigqueryConfigOutput
- func (o SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigOutput
- func (o SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigPtrOutput() SubscriptionBigqueryConfigPtrOutput
- func (o SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigPtrOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigPtrOutput
- func (o SubscriptionBigqueryConfigOutput) UseTopicSchema() pulumi.BoolPtrOutput
- func (o SubscriptionBigqueryConfigOutput) WriteMetadata() pulumi.BoolPtrOutput
- type SubscriptionBigqueryConfigPtrInput
- type SubscriptionBigqueryConfigPtrOutput
- func (o SubscriptionBigqueryConfigPtrOutput) DropUnknownFields() pulumi.BoolPtrOutput
- func (o SubscriptionBigqueryConfigPtrOutput) Elem() SubscriptionBigqueryConfigOutput
- func (SubscriptionBigqueryConfigPtrOutput) ElementType() reflect.Type
- func (o SubscriptionBigqueryConfigPtrOutput) Table() pulumi.StringPtrOutput
- func (o SubscriptionBigqueryConfigPtrOutput) ToSubscriptionBigqueryConfigPtrOutput() SubscriptionBigqueryConfigPtrOutput
- func (o SubscriptionBigqueryConfigPtrOutput) ToSubscriptionBigqueryConfigPtrOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigPtrOutput
- func (o SubscriptionBigqueryConfigPtrOutput) UseTopicSchema() pulumi.BoolPtrOutput
- func (o SubscriptionBigqueryConfigPtrOutput) WriteMetadata() pulumi.BoolPtrOutput
- type SubscriptionDeadLetterPolicy
- type SubscriptionDeadLetterPolicyArgs
- func (SubscriptionDeadLetterPolicyArgs) ElementType() reflect.Type
- func (i SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyOutput() SubscriptionDeadLetterPolicyOutput
- func (i SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyOutput
- func (i SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyPtrOutput() SubscriptionDeadLetterPolicyPtrOutput
- func (i SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyPtrOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyPtrOutput
- type SubscriptionDeadLetterPolicyInput
- type SubscriptionDeadLetterPolicyOutput
- func (o SubscriptionDeadLetterPolicyOutput) DeadLetterTopic() pulumi.StringPtrOutput
- func (SubscriptionDeadLetterPolicyOutput) ElementType() reflect.Type
- func (o SubscriptionDeadLetterPolicyOutput) MaxDeliveryAttempts() pulumi.IntPtrOutput
- func (o SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyOutput() SubscriptionDeadLetterPolicyOutput
- func (o SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyOutput
- func (o SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyPtrOutput() SubscriptionDeadLetterPolicyPtrOutput
- func (o SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyPtrOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyPtrOutput
- type SubscriptionDeadLetterPolicyPtrInput
- type SubscriptionDeadLetterPolicyPtrOutput
- func (o SubscriptionDeadLetterPolicyPtrOutput) DeadLetterTopic() pulumi.StringPtrOutput
- func (o SubscriptionDeadLetterPolicyPtrOutput) Elem() SubscriptionDeadLetterPolicyOutput
- func (SubscriptionDeadLetterPolicyPtrOutput) ElementType() reflect.Type
- func (o SubscriptionDeadLetterPolicyPtrOutput) MaxDeliveryAttempts() pulumi.IntPtrOutput
- func (o SubscriptionDeadLetterPolicyPtrOutput) ToSubscriptionDeadLetterPolicyPtrOutput() SubscriptionDeadLetterPolicyPtrOutput
- func (o SubscriptionDeadLetterPolicyPtrOutput) ToSubscriptionDeadLetterPolicyPtrOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyPtrOutput
- type SubscriptionExpirationPolicy
- type SubscriptionExpirationPolicyArgs
- func (SubscriptionExpirationPolicyArgs) ElementType() reflect.Type
- func (i SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyOutput() SubscriptionExpirationPolicyOutput
- func (i SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyOutput
- func (i SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyPtrOutput() SubscriptionExpirationPolicyPtrOutput
- func (i SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyPtrOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyPtrOutput
- type SubscriptionExpirationPolicyInput
- type SubscriptionExpirationPolicyOutput
- func (SubscriptionExpirationPolicyOutput) ElementType() reflect.Type
- func (o SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyOutput() SubscriptionExpirationPolicyOutput
- func (o SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyOutput
- func (o SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyPtrOutput() SubscriptionExpirationPolicyPtrOutput
- func (o SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyPtrOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyPtrOutput
- func (o SubscriptionExpirationPolicyOutput) Ttl() pulumi.StringOutput
- type SubscriptionExpirationPolicyPtrInput
- type SubscriptionExpirationPolicyPtrOutput
- func (o SubscriptionExpirationPolicyPtrOutput) Elem() SubscriptionExpirationPolicyOutput
- func (SubscriptionExpirationPolicyPtrOutput) ElementType() reflect.Type
- func (o SubscriptionExpirationPolicyPtrOutput) ToSubscriptionExpirationPolicyPtrOutput() SubscriptionExpirationPolicyPtrOutput
- func (o SubscriptionExpirationPolicyPtrOutput) ToSubscriptionExpirationPolicyPtrOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyPtrOutput
- func (o SubscriptionExpirationPolicyPtrOutput) Ttl() pulumi.StringPtrOutput
- type SubscriptionIAMBinding
- type SubscriptionIAMBindingArgs
- type SubscriptionIAMBindingArray
- func (SubscriptionIAMBindingArray) ElementType() reflect.Type
- func (i SubscriptionIAMBindingArray) ToSubscriptionIAMBindingArrayOutput() SubscriptionIAMBindingArrayOutput
- func (i SubscriptionIAMBindingArray) ToSubscriptionIAMBindingArrayOutputWithContext(ctx context.Context) SubscriptionIAMBindingArrayOutput
- type SubscriptionIAMBindingArrayInput
- type SubscriptionIAMBindingArrayOutput
- func (SubscriptionIAMBindingArrayOutput) ElementType() reflect.Type
- func (o SubscriptionIAMBindingArrayOutput) Index(i pulumi.IntInput) SubscriptionIAMBindingOutput
- func (o SubscriptionIAMBindingArrayOutput) ToSubscriptionIAMBindingArrayOutput() SubscriptionIAMBindingArrayOutput
- func (o SubscriptionIAMBindingArrayOutput) ToSubscriptionIAMBindingArrayOutputWithContext(ctx context.Context) SubscriptionIAMBindingArrayOutput
- type SubscriptionIAMBindingCondition
- type SubscriptionIAMBindingConditionArgs
- func (SubscriptionIAMBindingConditionArgs) ElementType() reflect.Type
- func (i SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionOutput() SubscriptionIAMBindingConditionOutput
- func (i SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionOutput
- func (i SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionPtrOutput() SubscriptionIAMBindingConditionPtrOutput
- func (i SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionPtrOutput
- type SubscriptionIAMBindingConditionInput
- type SubscriptionIAMBindingConditionOutput
- func (o SubscriptionIAMBindingConditionOutput) Description() pulumi.StringPtrOutput
- func (SubscriptionIAMBindingConditionOutput) ElementType() reflect.Type
- func (o SubscriptionIAMBindingConditionOutput) Expression() pulumi.StringOutput
- func (o SubscriptionIAMBindingConditionOutput) Title() pulumi.StringOutput
- func (o SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionOutput() SubscriptionIAMBindingConditionOutput
- func (o SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionOutput
- func (o SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionPtrOutput() SubscriptionIAMBindingConditionPtrOutput
- func (o SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionPtrOutput
- type SubscriptionIAMBindingConditionPtrInput
- type SubscriptionIAMBindingConditionPtrOutput
- func (o SubscriptionIAMBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o SubscriptionIAMBindingConditionPtrOutput) Elem() SubscriptionIAMBindingConditionOutput
- func (SubscriptionIAMBindingConditionPtrOutput) ElementType() reflect.Type
- func (o SubscriptionIAMBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o SubscriptionIAMBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o SubscriptionIAMBindingConditionPtrOutput) ToSubscriptionIAMBindingConditionPtrOutput() SubscriptionIAMBindingConditionPtrOutput
- func (o SubscriptionIAMBindingConditionPtrOutput) ToSubscriptionIAMBindingConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionPtrOutput
- type SubscriptionIAMBindingInput
- type SubscriptionIAMBindingMap
- type SubscriptionIAMBindingMapInput
- type SubscriptionIAMBindingMapOutput
- func (SubscriptionIAMBindingMapOutput) ElementType() reflect.Type
- func (o SubscriptionIAMBindingMapOutput) MapIndex(k pulumi.StringInput) SubscriptionIAMBindingOutput
- func (o SubscriptionIAMBindingMapOutput) ToSubscriptionIAMBindingMapOutput() SubscriptionIAMBindingMapOutput
- func (o SubscriptionIAMBindingMapOutput) ToSubscriptionIAMBindingMapOutputWithContext(ctx context.Context) SubscriptionIAMBindingMapOutput
- type SubscriptionIAMBindingOutput
- func (o SubscriptionIAMBindingOutput) Condition() SubscriptionIAMBindingConditionPtrOutput
- func (SubscriptionIAMBindingOutput) ElementType() reflect.Type
- func (o SubscriptionIAMBindingOutput) Etag() pulumi.StringOutput
- func (o SubscriptionIAMBindingOutput) Members() pulumi.StringArrayOutput
- func (o SubscriptionIAMBindingOutput) Project() pulumi.StringOutput
- func (o SubscriptionIAMBindingOutput) Role() pulumi.StringOutput
- func (o SubscriptionIAMBindingOutput) Subscription() pulumi.StringOutput
- func (o SubscriptionIAMBindingOutput) ToSubscriptionIAMBindingOutput() SubscriptionIAMBindingOutput
- func (o SubscriptionIAMBindingOutput) ToSubscriptionIAMBindingOutputWithContext(ctx context.Context) SubscriptionIAMBindingOutput
- type SubscriptionIAMBindingState
- type SubscriptionIAMMember
- type SubscriptionIAMMemberArgs
- type SubscriptionIAMMemberArray
- func (SubscriptionIAMMemberArray) ElementType() reflect.Type
- func (i SubscriptionIAMMemberArray) ToSubscriptionIAMMemberArrayOutput() SubscriptionIAMMemberArrayOutput
- func (i SubscriptionIAMMemberArray) ToSubscriptionIAMMemberArrayOutputWithContext(ctx context.Context) SubscriptionIAMMemberArrayOutput
- type SubscriptionIAMMemberArrayInput
- type SubscriptionIAMMemberArrayOutput
- func (SubscriptionIAMMemberArrayOutput) ElementType() reflect.Type
- func (o SubscriptionIAMMemberArrayOutput) Index(i pulumi.IntInput) SubscriptionIAMMemberOutput
- func (o SubscriptionIAMMemberArrayOutput) ToSubscriptionIAMMemberArrayOutput() SubscriptionIAMMemberArrayOutput
- func (o SubscriptionIAMMemberArrayOutput) ToSubscriptionIAMMemberArrayOutputWithContext(ctx context.Context) SubscriptionIAMMemberArrayOutput
- type SubscriptionIAMMemberCondition
- type SubscriptionIAMMemberConditionArgs
- func (SubscriptionIAMMemberConditionArgs) ElementType() reflect.Type
- func (i SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionOutput() SubscriptionIAMMemberConditionOutput
- func (i SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionOutput
- func (i SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionPtrOutput() SubscriptionIAMMemberConditionPtrOutput
- func (i SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionPtrOutput
- type SubscriptionIAMMemberConditionInput
- type SubscriptionIAMMemberConditionOutput
- func (o SubscriptionIAMMemberConditionOutput) Description() pulumi.StringPtrOutput
- func (SubscriptionIAMMemberConditionOutput) ElementType() reflect.Type
- func (o SubscriptionIAMMemberConditionOutput) Expression() pulumi.StringOutput
- func (o SubscriptionIAMMemberConditionOutput) Title() pulumi.StringOutput
- func (o SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionOutput() SubscriptionIAMMemberConditionOutput
- func (o SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionOutput
- func (o SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionPtrOutput() SubscriptionIAMMemberConditionPtrOutput
- func (o SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionPtrOutput
- type SubscriptionIAMMemberConditionPtrInput
- type SubscriptionIAMMemberConditionPtrOutput
- func (o SubscriptionIAMMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o SubscriptionIAMMemberConditionPtrOutput) Elem() SubscriptionIAMMemberConditionOutput
- func (SubscriptionIAMMemberConditionPtrOutput) ElementType() reflect.Type
- func (o SubscriptionIAMMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o SubscriptionIAMMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o SubscriptionIAMMemberConditionPtrOutput) ToSubscriptionIAMMemberConditionPtrOutput() SubscriptionIAMMemberConditionPtrOutput
- func (o SubscriptionIAMMemberConditionPtrOutput) ToSubscriptionIAMMemberConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionPtrOutput
- type SubscriptionIAMMemberInput
- type SubscriptionIAMMemberMap
- type SubscriptionIAMMemberMapInput
- type SubscriptionIAMMemberMapOutput
- func (SubscriptionIAMMemberMapOutput) ElementType() reflect.Type
- func (o SubscriptionIAMMemberMapOutput) MapIndex(k pulumi.StringInput) SubscriptionIAMMemberOutput
- func (o SubscriptionIAMMemberMapOutput) ToSubscriptionIAMMemberMapOutput() SubscriptionIAMMemberMapOutput
- func (o SubscriptionIAMMemberMapOutput) ToSubscriptionIAMMemberMapOutputWithContext(ctx context.Context) SubscriptionIAMMemberMapOutput
- type SubscriptionIAMMemberOutput
- func (o SubscriptionIAMMemberOutput) Condition() SubscriptionIAMMemberConditionPtrOutput
- func (SubscriptionIAMMemberOutput) ElementType() reflect.Type
- func (o SubscriptionIAMMemberOutput) Etag() pulumi.StringOutput
- func (o SubscriptionIAMMemberOutput) Member() pulumi.StringOutput
- func (o SubscriptionIAMMemberOutput) Project() pulumi.StringOutput
- func (o SubscriptionIAMMemberOutput) Role() pulumi.StringOutput
- func (o SubscriptionIAMMemberOutput) Subscription() pulumi.StringOutput
- func (o SubscriptionIAMMemberOutput) ToSubscriptionIAMMemberOutput() SubscriptionIAMMemberOutput
- func (o SubscriptionIAMMemberOutput) ToSubscriptionIAMMemberOutputWithContext(ctx context.Context) SubscriptionIAMMemberOutput
- type SubscriptionIAMMemberState
- type SubscriptionIAMPolicy
- type SubscriptionIAMPolicyArgs
- type SubscriptionIAMPolicyArray
- func (SubscriptionIAMPolicyArray) ElementType() reflect.Type
- func (i SubscriptionIAMPolicyArray) ToSubscriptionIAMPolicyArrayOutput() SubscriptionIAMPolicyArrayOutput
- func (i SubscriptionIAMPolicyArray) ToSubscriptionIAMPolicyArrayOutputWithContext(ctx context.Context) SubscriptionIAMPolicyArrayOutput
- type SubscriptionIAMPolicyArrayInput
- type SubscriptionIAMPolicyArrayOutput
- func (SubscriptionIAMPolicyArrayOutput) ElementType() reflect.Type
- func (o SubscriptionIAMPolicyArrayOutput) Index(i pulumi.IntInput) SubscriptionIAMPolicyOutput
- func (o SubscriptionIAMPolicyArrayOutput) ToSubscriptionIAMPolicyArrayOutput() SubscriptionIAMPolicyArrayOutput
- func (o SubscriptionIAMPolicyArrayOutput) ToSubscriptionIAMPolicyArrayOutputWithContext(ctx context.Context) SubscriptionIAMPolicyArrayOutput
- type SubscriptionIAMPolicyInput
- type SubscriptionIAMPolicyMap
- type SubscriptionIAMPolicyMapInput
- type SubscriptionIAMPolicyMapOutput
- func (SubscriptionIAMPolicyMapOutput) ElementType() reflect.Type
- func (o SubscriptionIAMPolicyMapOutput) MapIndex(k pulumi.StringInput) SubscriptionIAMPolicyOutput
- func (o SubscriptionIAMPolicyMapOutput) ToSubscriptionIAMPolicyMapOutput() SubscriptionIAMPolicyMapOutput
- func (o SubscriptionIAMPolicyMapOutput) ToSubscriptionIAMPolicyMapOutputWithContext(ctx context.Context) SubscriptionIAMPolicyMapOutput
- type SubscriptionIAMPolicyOutput
- func (SubscriptionIAMPolicyOutput) ElementType() reflect.Type
- func (o SubscriptionIAMPolicyOutput) Etag() pulumi.StringOutput
- func (o SubscriptionIAMPolicyOutput) PolicyData() pulumi.StringOutput
- func (o SubscriptionIAMPolicyOutput) Project() pulumi.StringOutput
- func (o SubscriptionIAMPolicyOutput) Subscription() pulumi.StringOutput
- func (o SubscriptionIAMPolicyOutput) ToSubscriptionIAMPolicyOutput() SubscriptionIAMPolicyOutput
- func (o SubscriptionIAMPolicyOutput) ToSubscriptionIAMPolicyOutputWithContext(ctx context.Context) SubscriptionIAMPolicyOutput
- type SubscriptionIAMPolicyState
- type SubscriptionInput
- type SubscriptionMap
- type SubscriptionMapInput
- type SubscriptionMapOutput
- func (SubscriptionMapOutput) ElementType() reflect.Type
- func (o SubscriptionMapOutput) MapIndex(k pulumi.StringInput) SubscriptionOutput
- func (o SubscriptionMapOutput) ToSubscriptionMapOutput() SubscriptionMapOutput
- func (o SubscriptionMapOutput) ToSubscriptionMapOutputWithContext(ctx context.Context) SubscriptionMapOutput
- type SubscriptionOutput
- func (o SubscriptionOutput) AckDeadlineSeconds() pulumi.IntOutput
- func (o SubscriptionOutput) BigqueryConfig() SubscriptionBigqueryConfigPtrOutput
- func (o SubscriptionOutput) DeadLetterPolicy() SubscriptionDeadLetterPolicyPtrOutput
- func (SubscriptionOutput) ElementType() reflect.Type
- func (o SubscriptionOutput) EnableExactlyOnceDelivery() pulumi.BoolPtrOutput
- func (o SubscriptionOutput) EnableMessageOrdering() pulumi.BoolPtrOutput
- func (o SubscriptionOutput) ExpirationPolicy() SubscriptionExpirationPolicyOutput
- func (o SubscriptionOutput) Filter() pulumi.StringPtrOutput
- func (o SubscriptionOutput) Labels() pulumi.StringMapOutput
- func (o SubscriptionOutput) MessageRetentionDuration() pulumi.StringPtrOutput
- func (o SubscriptionOutput) Name() pulumi.StringOutput
- func (o SubscriptionOutput) Project() pulumi.StringOutput
- func (o SubscriptionOutput) PushConfig() SubscriptionPushConfigPtrOutput
- func (o SubscriptionOutput) RetainAckedMessages() pulumi.BoolPtrOutput
- func (o SubscriptionOutput) RetryPolicy() SubscriptionRetryPolicyPtrOutput
- func (o SubscriptionOutput) ToSubscriptionOutput() SubscriptionOutput
- func (o SubscriptionOutput) ToSubscriptionOutputWithContext(ctx context.Context) SubscriptionOutput
- func (o SubscriptionOutput) Topic() pulumi.StringOutput
- type SubscriptionPushConfig
- type SubscriptionPushConfigArgs
- func (SubscriptionPushConfigArgs) ElementType() reflect.Type
- func (i SubscriptionPushConfigArgs) ToSubscriptionPushConfigOutput() SubscriptionPushConfigOutput
- func (i SubscriptionPushConfigArgs) ToSubscriptionPushConfigOutputWithContext(ctx context.Context) SubscriptionPushConfigOutput
- func (i SubscriptionPushConfigArgs) ToSubscriptionPushConfigPtrOutput() SubscriptionPushConfigPtrOutput
- func (i SubscriptionPushConfigArgs) ToSubscriptionPushConfigPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigPtrOutput
- type SubscriptionPushConfigInput
- type SubscriptionPushConfigOidcToken
- type SubscriptionPushConfigOidcTokenArgs
- func (SubscriptionPushConfigOidcTokenArgs) ElementType() reflect.Type
- func (i SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenOutput() SubscriptionPushConfigOidcTokenOutput
- func (i SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenOutput
- func (i SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenPtrOutput() SubscriptionPushConfigOidcTokenPtrOutput
- func (i SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenPtrOutput
- type SubscriptionPushConfigOidcTokenInput
- type SubscriptionPushConfigOidcTokenOutput
- func (o SubscriptionPushConfigOidcTokenOutput) Audience() pulumi.StringPtrOutput
- func (SubscriptionPushConfigOidcTokenOutput) ElementType() reflect.Type
- func (o SubscriptionPushConfigOidcTokenOutput) ServiceAccountEmail() pulumi.StringOutput
- func (o SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenOutput() SubscriptionPushConfigOidcTokenOutput
- func (o SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenOutput
- func (o SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenPtrOutput() SubscriptionPushConfigOidcTokenPtrOutput
- func (o SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenPtrOutput
- type SubscriptionPushConfigOidcTokenPtrInput
- type SubscriptionPushConfigOidcTokenPtrOutput
- func (o SubscriptionPushConfigOidcTokenPtrOutput) Audience() pulumi.StringPtrOutput
- func (o SubscriptionPushConfigOidcTokenPtrOutput) Elem() SubscriptionPushConfigOidcTokenOutput
- func (SubscriptionPushConfigOidcTokenPtrOutput) ElementType() reflect.Type
- func (o SubscriptionPushConfigOidcTokenPtrOutput) ServiceAccountEmail() pulumi.StringPtrOutput
- func (o SubscriptionPushConfigOidcTokenPtrOutput) ToSubscriptionPushConfigOidcTokenPtrOutput() SubscriptionPushConfigOidcTokenPtrOutput
- func (o SubscriptionPushConfigOidcTokenPtrOutput) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenPtrOutput
- type SubscriptionPushConfigOutput
- func (o SubscriptionPushConfigOutput) Attributes() pulumi.StringMapOutput
- func (SubscriptionPushConfigOutput) ElementType() reflect.Type
- func (o SubscriptionPushConfigOutput) OidcToken() SubscriptionPushConfigOidcTokenPtrOutput
- func (o SubscriptionPushConfigOutput) PushEndpoint() pulumi.StringOutput
- func (o SubscriptionPushConfigOutput) ToSubscriptionPushConfigOutput() SubscriptionPushConfigOutput
- func (o SubscriptionPushConfigOutput) ToSubscriptionPushConfigOutputWithContext(ctx context.Context) SubscriptionPushConfigOutput
- func (o SubscriptionPushConfigOutput) ToSubscriptionPushConfigPtrOutput() SubscriptionPushConfigPtrOutput
- func (o SubscriptionPushConfigOutput) ToSubscriptionPushConfigPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigPtrOutput
- type SubscriptionPushConfigPtrInput
- type SubscriptionPushConfigPtrOutput
- func (o SubscriptionPushConfigPtrOutput) Attributes() pulumi.StringMapOutput
- func (o SubscriptionPushConfigPtrOutput) Elem() SubscriptionPushConfigOutput
- func (SubscriptionPushConfigPtrOutput) ElementType() reflect.Type
- func (o SubscriptionPushConfigPtrOutput) OidcToken() SubscriptionPushConfigOidcTokenPtrOutput
- func (o SubscriptionPushConfigPtrOutput) PushEndpoint() pulumi.StringPtrOutput
- func (o SubscriptionPushConfigPtrOutput) ToSubscriptionPushConfigPtrOutput() SubscriptionPushConfigPtrOutput
- func (o SubscriptionPushConfigPtrOutput) ToSubscriptionPushConfigPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigPtrOutput
- type SubscriptionRetryPolicy
- type SubscriptionRetryPolicyArgs
- func (SubscriptionRetryPolicyArgs) ElementType() reflect.Type
- func (i SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyOutput() SubscriptionRetryPolicyOutput
- func (i SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyOutputWithContext(ctx context.Context) SubscriptionRetryPolicyOutput
- func (i SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyPtrOutput() SubscriptionRetryPolicyPtrOutput
- func (i SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyPtrOutputWithContext(ctx context.Context) SubscriptionRetryPolicyPtrOutput
- type SubscriptionRetryPolicyInput
- type SubscriptionRetryPolicyOutput
- func (SubscriptionRetryPolicyOutput) ElementType() reflect.Type
- func (o SubscriptionRetryPolicyOutput) MaximumBackoff() pulumi.StringPtrOutput
- func (o SubscriptionRetryPolicyOutput) MinimumBackoff() pulumi.StringPtrOutput
- func (o SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyOutput() SubscriptionRetryPolicyOutput
- func (o SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyOutputWithContext(ctx context.Context) SubscriptionRetryPolicyOutput
- func (o SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyPtrOutput() SubscriptionRetryPolicyPtrOutput
- func (o SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyPtrOutputWithContext(ctx context.Context) SubscriptionRetryPolicyPtrOutput
- type SubscriptionRetryPolicyPtrInput
- type SubscriptionRetryPolicyPtrOutput
- func (o SubscriptionRetryPolicyPtrOutput) Elem() SubscriptionRetryPolicyOutput
- func (SubscriptionRetryPolicyPtrOutput) ElementType() reflect.Type
- func (o SubscriptionRetryPolicyPtrOutput) MaximumBackoff() pulumi.StringPtrOutput
- func (o SubscriptionRetryPolicyPtrOutput) MinimumBackoff() pulumi.StringPtrOutput
- func (o SubscriptionRetryPolicyPtrOutput) ToSubscriptionRetryPolicyPtrOutput() SubscriptionRetryPolicyPtrOutput
- func (o SubscriptionRetryPolicyPtrOutput) ToSubscriptionRetryPolicyPtrOutputWithContext(ctx context.Context) SubscriptionRetryPolicyPtrOutput
- type SubscriptionState
- type Topic
- type TopicArgs
- type TopicArray
- type TopicArrayInput
- type TopicArrayOutput
- type TopicIAMBinding
- type TopicIAMBindingArgs
- type TopicIAMBindingArray
- type TopicIAMBindingArrayInput
- type TopicIAMBindingArrayOutput
- func (TopicIAMBindingArrayOutput) ElementType() reflect.Type
- func (o TopicIAMBindingArrayOutput) Index(i pulumi.IntInput) TopicIAMBindingOutput
- func (o TopicIAMBindingArrayOutput) ToTopicIAMBindingArrayOutput() TopicIAMBindingArrayOutput
- func (o TopicIAMBindingArrayOutput) ToTopicIAMBindingArrayOutputWithContext(ctx context.Context) TopicIAMBindingArrayOutput
- type TopicIAMBindingCondition
- type TopicIAMBindingConditionArgs
- func (TopicIAMBindingConditionArgs) ElementType() reflect.Type
- func (i TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionOutput() TopicIAMBindingConditionOutput
- func (i TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionOutputWithContext(ctx context.Context) TopicIAMBindingConditionOutput
- func (i TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionPtrOutput() TopicIAMBindingConditionPtrOutput
- func (i TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionPtrOutputWithContext(ctx context.Context) TopicIAMBindingConditionPtrOutput
- type TopicIAMBindingConditionInput
- type TopicIAMBindingConditionOutput
- func (o TopicIAMBindingConditionOutput) Description() pulumi.StringPtrOutput
- func (TopicIAMBindingConditionOutput) ElementType() reflect.Type
- func (o TopicIAMBindingConditionOutput) Expression() pulumi.StringOutput
- func (o TopicIAMBindingConditionOutput) Title() pulumi.StringOutput
- func (o TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionOutput() TopicIAMBindingConditionOutput
- func (o TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionOutputWithContext(ctx context.Context) TopicIAMBindingConditionOutput
- func (o TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionPtrOutput() TopicIAMBindingConditionPtrOutput
- func (o TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionPtrOutputWithContext(ctx context.Context) TopicIAMBindingConditionPtrOutput
- type TopicIAMBindingConditionPtrInput
- type TopicIAMBindingConditionPtrOutput
- func (o TopicIAMBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o TopicIAMBindingConditionPtrOutput) Elem() TopicIAMBindingConditionOutput
- func (TopicIAMBindingConditionPtrOutput) ElementType() reflect.Type
- func (o TopicIAMBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o TopicIAMBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o TopicIAMBindingConditionPtrOutput) ToTopicIAMBindingConditionPtrOutput() TopicIAMBindingConditionPtrOutput
- func (o TopicIAMBindingConditionPtrOutput) ToTopicIAMBindingConditionPtrOutputWithContext(ctx context.Context) TopicIAMBindingConditionPtrOutput
- type TopicIAMBindingInput
- type TopicIAMBindingMap
- type TopicIAMBindingMapInput
- type TopicIAMBindingMapOutput
- func (TopicIAMBindingMapOutput) ElementType() reflect.Type
- func (o TopicIAMBindingMapOutput) MapIndex(k pulumi.StringInput) TopicIAMBindingOutput
- func (o TopicIAMBindingMapOutput) ToTopicIAMBindingMapOutput() TopicIAMBindingMapOutput
- func (o TopicIAMBindingMapOutput) ToTopicIAMBindingMapOutputWithContext(ctx context.Context) TopicIAMBindingMapOutput
- type TopicIAMBindingOutput
- func (o TopicIAMBindingOutput) Condition() TopicIAMBindingConditionPtrOutput
- func (TopicIAMBindingOutput) ElementType() reflect.Type
- func (o TopicIAMBindingOutput) Etag() pulumi.StringOutput
- func (o TopicIAMBindingOutput) Members() pulumi.StringArrayOutput
- func (o TopicIAMBindingOutput) Project() pulumi.StringOutput
- func (o TopicIAMBindingOutput) Role() pulumi.StringOutput
- func (o TopicIAMBindingOutput) ToTopicIAMBindingOutput() TopicIAMBindingOutput
- func (o TopicIAMBindingOutput) ToTopicIAMBindingOutputWithContext(ctx context.Context) TopicIAMBindingOutput
- func (o TopicIAMBindingOutput) Topic() pulumi.StringOutput
- type TopicIAMBindingState
- type TopicIAMMember
- type TopicIAMMemberArgs
- type TopicIAMMemberArray
- type TopicIAMMemberArrayInput
- type TopicIAMMemberArrayOutput
- func (TopicIAMMemberArrayOutput) ElementType() reflect.Type
- func (o TopicIAMMemberArrayOutput) Index(i pulumi.IntInput) TopicIAMMemberOutput
- func (o TopicIAMMemberArrayOutput) ToTopicIAMMemberArrayOutput() TopicIAMMemberArrayOutput
- func (o TopicIAMMemberArrayOutput) ToTopicIAMMemberArrayOutputWithContext(ctx context.Context) TopicIAMMemberArrayOutput
- type TopicIAMMemberCondition
- type TopicIAMMemberConditionArgs
- func (TopicIAMMemberConditionArgs) ElementType() reflect.Type
- func (i TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionOutput() TopicIAMMemberConditionOutput
- func (i TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionOutputWithContext(ctx context.Context) TopicIAMMemberConditionOutput
- func (i TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionPtrOutput() TopicIAMMemberConditionPtrOutput
- func (i TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionPtrOutputWithContext(ctx context.Context) TopicIAMMemberConditionPtrOutput
- type TopicIAMMemberConditionInput
- type TopicIAMMemberConditionOutput
- func (o TopicIAMMemberConditionOutput) Description() pulumi.StringPtrOutput
- func (TopicIAMMemberConditionOutput) ElementType() reflect.Type
- func (o TopicIAMMemberConditionOutput) Expression() pulumi.StringOutput
- func (o TopicIAMMemberConditionOutput) Title() pulumi.StringOutput
- func (o TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionOutput() TopicIAMMemberConditionOutput
- func (o TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionOutputWithContext(ctx context.Context) TopicIAMMemberConditionOutput
- func (o TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionPtrOutput() TopicIAMMemberConditionPtrOutput
- func (o TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionPtrOutputWithContext(ctx context.Context) TopicIAMMemberConditionPtrOutput
- type TopicIAMMemberConditionPtrInput
- type TopicIAMMemberConditionPtrOutput
- func (o TopicIAMMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o TopicIAMMemberConditionPtrOutput) Elem() TopicIAMMemberConditionOutput
- func (TopicIAMMemberConditionPtrOutput) ElementType() reflect.Type
- func (o TopicIAMMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o TopicIAMMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o TopicIAMMemberConditionPtrOutput) ToTopicIAMMemberConditionPtrOutput() TopicIAMMemberConditionPtrOutput
- func (o TopicIAMMemberConditionPtrOutput) ToTopicIAMMemberConditionPtrOutputWithContext(ctx context.Context) TopicIAMMemberConditionPtrOutput
- type TopicIAMMemberInput
- type TopicIAMMemberMap
- type TopicIAMMemberMapInput
- type TopicIAMMemberMapOutput
- func (TopicIAMMemberMapOutput) ElementType() reflect.Type
- func (o TopicIAMMemberMapOutput) MapIndex(k pulumi.StringInput) TopicIAMMemberOutput
- func (o TopicIAMMemberMapOutput) ToTopicIAMMemberMapOutput() TopicIAMMemberMapOutput
- func (o TopicIAMMemberMapOutput) ToTopicIAMMemberMapOutputWithContext(ctx context.Context) TopicIAMMemberMapOutput
- type TopicIAMMemberOutput
- func (o TopicIAMMemberOutput) Condition() TopicIAMMemberConditionPtrOutput
- func (TopicIAMMemberOutput) ElementType() reflect.Type
- func (o TopicIAMMemberOutput) Etag() pulumi.StringOutput
- func (o TopicIAMMemberOutput) Member() pulumi.StringOutput
- func (o TopicIAMMemberOutput) Project() pulumi.StringOutput
- func (o TopicIAMMemberOutput) Role() pulumi.StringOutput
- func (o TopicIAMMemberOutput) ToTopicIAMMemberOutput() TopicIAMMemberOutput
- func (o TopicIAMMemberOutput) ToTopicIAMMemberOutputWithContext(ctx context.Context) TopicIAMMemberOutput
- func (o TopicIAMMemberOutput) Topic() pulumi.StringOutput
- type TopicIAMMemberState
- type TopicIAMPolicy
- type TopicIAMPolicyArgs
- type TopicIAMPolicyArray
- type TopicIAMPolicyArrayInput
- type TopicIAMPolicyArrayOutput
- func (TopicIAMPolicyArrayOutput) ElementType() reflect.Type
- func (o TopicIAMPolicyArrayOutput) Index(i pulumi.IntInput) TopicIAMPolicyOutput
- func (o TopicIAMPolicyArrayOutput) ToTopicIAMPolicyArrayOutput() TopicIAMPolicyArrayOutput
- func (o TopicIAMPolicyArrayOutput) ToTopicIAMPolicyArrayOutputWithContext(ctx context.Context) TopicIAMPolicyArrayOutput
- type TopicIAMPolicyInput
- type TopicIAMPolicyMap
- type TopicIAMPolicyMapInput
- type TopicIAMPolicyMapOutput
- func (TopicIAMPolicyMapOutput) ElementType() reflect.Type
- func (o TopicIAMPolicyMapOutput) MapIndex(k pulumi.StringInput) TopicIAMPolicyOutput
- func (o TopicIAMPolicyMapOutput) ToTopicIAMPolicyMapOutput() TopicIAMPolicyMapOutput
- func (o TopicIAMPolicyMapOutput) ToTopicIAMPolicyMapOutputWithContext(ctx context.Context) TopicIAMPolicyMapOutput
- type TopicIAMPolicyOutput
- func (TopicIAMPolicyOutput) ElementType() reflect.Type
- func (o TopicIAMPolicyOutput) Etag() pulumi.StringOutput
- func (o TopicIAMPolicyOutput) PolicyData() pulumi.StringOutput
- func (o TopicIAMPolicyOutput) Project() pulumi.StringOutput
- func (o TopicIAMPolicyOutput) ToTopicIAMPolicyOutput() TopicIAMPolicyOutput
- func (o TopicIAMPolicyOutput) ToTopicIAMPolicyOutputWithContext(ctx context.Context) TopicIAMPolicyOutput
- func (o TopicIAMPolicyOutput) Topic() pulumi.StringOutput
- type TopicIAMPolicyState
- type TopicInput
- type TopicMap
- type TopicMapInput
- type TopicMapOutput
- type TopicMessageStoragePolicy
- type TopicMessageStoragePolicyArgs
- func (TopicMessageStoragePolicyArgs) ElementType() reflect.Type
- func (i TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyOutput() TopicMessageStoragePolicyOutput
- func (i TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyOutputWithContext(ctx context.Context) TopicMessageStoragePolicyOutput
- func (i TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyPtrOutput() TopicMessageStoragePolicyPtrOutput
- func (i TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyPtrOutputWithContext(ctx context.Context) TopicMessageStoragePolicyPtrOutput
- type TopicMessageStoragePolicyInput
- type TopicMessageStoragePolicyOutput
- func (o TopicMessageStoragePolicyOutput) AllowedPersistenceRegions() pulumi.StringArrayOutput
- func (TopicMessageStoragePolicyOutput) ElementType() reflect.Type
- func (o TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyOutput() TopicMessageStoragePolicyOutput
- func (o TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyOutputWithContext(ctx context.Context) TopicMessageStoragePolicyOutput
- func (o TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyPtrOutput() TopicMessageStoragePolicyPtrOutput
- func (o TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyPtrOutputWithContext(ctx context.Context) TopicMessageStoragePolicyPtrOutput
- type TopicMessageStoragePolicyPtrInput
- type TopicMessageStoragePolicyPtrOutput
- func (o TopicMessageStoragePolicyPtrOutput) AllowedPersistenceRegions() pulumi.StringArrayOutput
- func (o TopicMessageStoragePolicyPtrOutput) Elem() TopicMessageStoragePolicyOutput
- func (TopicMessageStoragePolicyPtrOutput) ElementType() reflect.Type
- func (o TopicMessageStoragePolicyPtrOutput) ToTopicMessageStoragePolicyPtrOutput() TopicMessageStoragePolicyPtrOutput
- func (o TopicMessageStoragePolicyPtrOutput) ToTopicMessageStoragePolicyPtrOutputWithContext(ctx context.Context) TopicMessageStoragePolicyPtrOutput
- type TopicOutput
- func (TopicOutput) ElementType() reflect.Type
- func (o TopicOutput) KmsKeyName() pulumi.StringPtrOutput
- func (o TopicOutput) Labels() pulumi.StringMapOutput
- func (o TopicOutput) MessageRetentionDuration() pulumi.StringPtrOutput
- func (o TopicOutput) MessageStoragePolicy() TopicMessageStoragePolicyOutput
- func (o TopicOutput) Name() pulumi.StringOutput
- func (o TopicOutput) Project() pulumi.StringOutput
- func (o TopicOutput) SchemaSettings() TopicSchemaSettingsOutput
- func (o TopicOutput) ToTopicOutput() TopicOutput
- func (o TopicOutput) ToTopicOutputWithContext(ctx context.Context) TopicOutput
- type TopicSchemaSettings
- type TopicSchemaSettingsArgs
- func (TopicSchemaSettingsArgs) ElementType() reflect.Type
- func (i TopicSchemaSettingsArgs) ToTopicSchemaSettingsOutput() TopicSchemaSettingsOutput
- func (i TopicSchemaSettingsArgs) ToTopicSchemaSettingsOutputWithContext(ctx context.Context) TopicSchemaSettingsOutput
- func (i TopicSchemaSettingsArgs) ToTopicSchemaSettingsPtrOutput() TopicSchemaSettingsPtrOutput
- func (i TopicSchemaSettingsArgs) ToTopicSchemaSettingsPtrOutputWithContext(ctx context.Context) TopicSchemaSettingsPtrOutput
- type TopicSchemaSettingsInput
- type TopicSchemaSettingsOutput
- func (TopicSchemaSettingsOutput) ElementType() reflect.Type
- func (o TopicSchemaSettingsOutput) Encoding() pulumi.StringPtrOutput
- func (o TopicSchemaSettingsOutput) Schema() pulumi.StringOutput
- func (o TopicSchemaSettingsOutput) ToTopicSchemaSettingsOutput() TopicSchemaSettingsOutput
- func (o TopicSchemaSettingsOutput) ToTopicSchemaSettingsOutputWithContext(ctx context.Context) TopicSchemaSettingsOutput
- func (o TopicSchemaSettingsOutput) ToTopicSchemaSettingsPtrOutput() TopicSchemaSettingsPtrOutput
- func (o TopicSchemaSettingsOutput) ToTopicSchemaSettingsPtrOutputWithContext(ctx context.Context) TopicSchemaSettingsPtrOutput
- type TopicSchemaSettingsPtrInput
- type TopicSchemaSettingsPtrOutput
- func (o TopicSchemaSettingsPtrOutput) Elem() TopicSchemaSettingsOutput
- func (TopicSchemaSettingsPtrOutput) ElementType() reflect.Type
- func (o TopicSchemaSettingsPtrOutput) Encoding() pulumi.StringPtrOutput
- func (o TopicSchemaSettingsPtrOutput) Schema() pulumi.StringPtrOutput
- func (o TopicSchemaSettingsPtrOutput) ToTopicSchemaSettingsPtrOutput() TopicSchemaSettingsPtrOutput
- func (o TopicSchemaSettingsPtrOutput) ToTopicSchemaSettingsPtrOutputWithContext(ctx context.Context) TopicSchemaSettingsPtrOutput
- type TopicState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GetTopicMessageStoragePolicy ¶
type GetTopicMessageStoragePolicy struct {
AllowedPersistenceRegions []string `pulumi:"allowedPersistenceRegions"`
}
type GetTopicMessageStoragePolicyArgs ¶
type GetTopicMessageStoragePolicyArgs struct {
AllowedPersistenceRegions pulumi.StringArrayInput `pulumi:"allowedPersistenceRegions"`
}
func (GetTopicMessageStoragePolicyArgs) ElementType ¶
func (GetTopicMessageStoragePolicyArgs) ElementType() reflect.Type
func (GetTopicMessageStoragePolicyArgs) ToGetTopicMessageStoragePolicyOutput ¶
func (i GetTopicMessageStoragePolicyArgs) ToGetTopicMessageStoragePolicyOutput() GetTopicMessageStoragePolicyOutput
func (GetTopicMessageStoragePolicyArgs) ToGetTopicMessageStoragePolicyOutputWithContext ¶
func (i GetTopicMessageStoragePolicyArgs) ToGetTopicMessageStoragePolicyOutputWithContext(ctx context.Context) GetTopicMessageStoragePolicyOutput
type GetTopicMessageStoragePolicyArray ¶
type GetTopicMessageStoragePolicyArray []GetTopicMessageStoragePolicyInput
func (GetTopicMessageStoragePolicyArray) ElementType ¶
func (GetTopicMessageStoragePolicyArray) ElementType() reflect.Type
func (GetTopicMessageStoragePolicyArray) ToGetTopicMessageStoragePolicyArrayOutput ¶
func (i GetTopicMessageStoragePolicyArray) ToGetTopicMessageStoragePolicyArrayOutput() GetTopicMessageStoragePolicyArrayOutput
func (GetTopicMessageStoragePolicyArray) ToGetTopicMessageStoragePolicyArrayOutputWithContext ¶
func (i GetTopicMessageStoragePolicyArray) ToGetTopicMessageStoragePolicyArrayOutputWithContext(ctx context.Context) GetTopicMessageStoragePolicyArrayOutput
type GetTopicMessageStoragePolicyArrayInput ¶
type GetTopicMessageStoragePolicyArrayInput interface { pulumi.Input ToGetTopicMessageStoragePolicyArrayOutput() GetTopicMessageStoragePolicyArrayOutput ToGetTopicMessageStoragePolicyArrayOutputWithContext(context.Context) GetTopicMessageStoragePolicyArrayOutput }
GetTopicMessageStoragePolicyArrayInput is an input type that accepts GetTopicMessageStoragePolicyArray and GetTopicMessageStoragePolicyArrayOutput values. You can construct a concrete instance of `GetTopicMessageStoragePolicyArrayInput` via:
GetTopicMessageStoragePolicyArray{ GetTopicMessageStoragePolicyArgs{...} }
type GetTopicMessageStoragePolicyArrayOutput ¶
type GetTopicMessageStoragePolicyArrayOutput struct{ *pulumi.OutputState }
func (GetTopicMessageStoragePolicyArrayOutput) ElementType ¶
func (GetTopicMessageStoragePolicyArrayOutput) ElementType() reflect.Type
func (GetTopicMessageStoragePolicyArrayOutput) ToGetTopicMessageStoragePolicyArrayOutput ¶
func (o GetTopicMessageStoragePolicyArrayOutput) ToGetTopicMessageStoragePolicyArrayOutput() GetTopicMessageStoragePolicyArrayOutput
func (GetTopicMessageStoragePolicyArrayOutput) ToGetTopicMessageStoragePolicyArrayOutputWithContext ¶
func (o GetTopicMessageStoragePolicyArrayOutput) ToGetTopicMessageStoragePolicyArrayOutputWithContext(ctx context.Context) GetTopicMessageStoragePolicyArrayOutput
type GetTopicMessageStoragePolicyInput ¶
type GetTopicMessageStoragePolicyInput interface { pulumi.Input ToGetTopicMessageStoragePolicyOutput() GetTopicMessageStoragePolicyOutput ToGetTopicMessageStoragePolicyOutputWithContext(context.Context) GetTopicMessageStoragePolicyOutput }
GetTopicMessageStoragePolicyInput is an input type that accepts GetTopicMessageStoragePolicyArgs and GetTopicMessageStoragePolicyOutput values. You can construct a concrete instance of `GetTopicMessageStoragePolicyInput` via:
GetTopicMessageStoragePolicyArgs{...}
type GetTopicMessageStoragePolicyOutput ¶
type GetTopicMessageStoragePolicyOutput struct{ *pulumi.OutputState }
func (GetTopicMessageStoragePolicyOutput) AllowedPersistenceRegions ¶
func (o GetTopicMessageStoragePolicyOutput) AllowedPersistenceRegions() pulumi.StringArrayOutput
func (GetTopicMessageStoragePolicyOutput) ElementType ¶
func (GetTopicMessageStoragePolicyOutput) ElementType() reflect.Type
func (GetTopicMessageStoragePolicyOutput) ToGetTopicMessageStoragePolicyOutput ¶
func (o GetTopicMessageStoragePolicyOutput) ToGetTopicMessageStoragePolicyOutput() GetTopicMessageStoragePolicyOutput
func (GetTopicMessageStoragePolicyOutput) ToGetTopicMessageStoragePolicyOutputWithContext ¶
func (o GetTopicMessageStoragePolicyOutput) ToGetTopicMessageStoragePolicyOutputWithContext(ctx context.Context) GetTopicMessageStoragePolicyOutput
type GetTopicSchemaSetting ¶
type GetTopicSchemaSettingArgs ¶
type GetTopicSchemaSettingArgs struct { Encoding pulumi.StringInput `pulumi:"encoding"` Schema pulumi.StringInput `pulumi:"schema"` }
func (GetTopicSchemaSettingArgs) ElementType ¶
func (GetTopicSchemaSettingArgs) ElementType() reflect.Type
func (GetTopicSchemaSettingArgs) ToGetTopicSchemaSettingOutput ¶
func (i GetTopicSchemaSettingArgs) ToGetTopicSchemaSettingOutput() GetTopicSchemaSettingOutput
func (GetTopicSchemaSettingArgs) ToGetTopicSchemaSettingOutputWithContext ¶
func (i GetTopicSchemaSettingArgs) ToGetTopicSchemaSettingOutputWithContext(ctx context.Context) GetTopicSchemaSettingOutput
type GetTopicSchemaSettingArray ¶
type GetTopicSchemaSettingArray []GetTopicSchemaSettingInput
func (GetTopicSchemaSettingArray) ElementType ¶
func (GetTopicSchemaSettingArray) ElementType() reflect.Type
func (GetTopicSchemaSettingArray) ToGetTopicSchemaSettingArrayOutput ¶
func (i GetTopicSchemaSettingArray) ToGetTopicSchemaSettingArrayOutput() GetTopicSchemaSettingArrayOutput
func (GetTopicSchemaSettingArray) ToGetTopicSchemaSettingArrayOutputWithContext ¶
func (i GetTopicSchemaSettingArray) ToGetTopicSchemaSettingArrayOutputWithContext(ctx context.Context) GetTopicSchemaSettingArrayOutput
type GetTopicSchemaSettingArrayInput ¶
type GetTopicSchemaSettingArrayInput interface { pulumi.Input ToGetTopicSchemaSettingArrayOutput() GetTopicSchemaSettingArrayOutput ToGetTopicSchemaSettingArrayOutputWithContext(context.Context) GetTopicSchemaSettingArrayOutput }
GetTopicSchemaSettingArrayInput is an input type that accepts GetTopicSchemaSettingArray and GetTopicSchemaSettingArrayOutput values. You can construct a concrete instance of `GetTopicSchemaSettingArrayInput` via:
GetTopicSchemaSettingArray{ GetTopicSchemaSettingArgs{...} }
type GetTopicSchemaSettingArrayOutput ¶
type GetTopicSchemaSettingArrayOutput struct{ *pulumi.OutputState }
func (GetTopicSchemaSettingArrayOutput) ElementType ¶
func (GetTopicSchemaSettingArrayOutput) ElementType() reflect.Type
func (GetTopicSchemaSettingArrayOutput) Index ¶
func (o GetTopicSchemaSettingArrayOutput) Index(i pulumi.IntInput) GetTopicSchemaSettingOutput
func (GetTopicSchemaSettingArrayOutput) ToGetTopicSchemaSettingArrayOutput ¶
func (o GetTopicSchemaSettingArrayOutput) ToGetTopicSchemaSettingArrayOutput() GetTopicSchemaSettingArrayOutput
func (GetTopicSchemaSettingArrayOutput) ToGetTopicSchemaSettingArrayOutputWithContext ¶
func (o GetTopicSchemaSettingArrayOutput) ToGetTopicSchemaSettingArrayOutputWithContext(ctx context.Context) GetTopicSchemaSettingArrayOutput
type GetTopicSchemaSettingInput ¶
type GetTopicSchemaSettingInput interface { pulumi.Input ToGetTopicSchemaSettingOutput() GetTopicSchemaSettingOutput ToGetTopicSchemaSettingOutputWithContext(context.Context) GetTopicSchemaSettingOutput }
GetTopicSchemaSettingInput is an input type that accepts GetTopicSchemaSettingArgs and GetTopicSchemaSettingOutput values. You can construct a concrete instance of `GetTopicSchemaSettingInput` via:
GetTopicSchemaSettingArgs{...}
type GetTopicSchemaSettingOutput ¶
type GetTopicSchemaSettingOutput struct{ *pulumi.OutputState }
func (GetTopicSchemaSettingOutput) ElementType ¶
func (GetTopicSchemaSettingOutput) ElementType() reflect.Type
func (GetTopicSchemaSettingOutput) Encoding ¶
func (o GetTopicSchemaSettingOutput) Encoding() pulumi.StringOutput
func (GetTopicSchemaSettingOutput) Schema ¶
func (o GetTopicSchemaSettingOutput) Schema() pulumi.StringOutput
func (GetTopicSchemaSettingOutput) ToGetTopicSchemaSettingOutput ¶
func (o GetTopicSchemaSettingOutput) ToGetTopicSchemaSettingOutput() GetTopicSchemaSettingOutput
func (GetTopicSchemaSettingOutput) ToGetTopicSchemaSettingOutputWithContext ¶
func (o GetTopicSchemaSettingOutput) ToGetTopicSchemaSettingOutputWithContext(ctx context.Context) GetTopicSchemaSettingOutput
type LiteReservation ¶
type LiteReservation struct { pulumi.CustomResourceState // Name of the reservation. 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"` // The region of the pubsub lite reservation. Region pulumi.StringPtrOutput `pulumi:"region"` // The reserved throughput capacity. Every unit of throughput capacity is // equivalent to 1 MiB/s of published messages or 2 MiB/s of subscribed // messages. ThroughputCapacity pulumi.IntOutput `pulumi:"throughputCapacity"` }
A named resource representing a shared pool of capacity.
To get more information about Reservation, see:
* [API documentation](https://cloud.google.com/pubsub/lite/docs/reference/rest/v1/admin.projects.locations.reservations) * How-to Guides
- [Managing Reservations](https://cloud.google.com/pubsub/lite/docs/reservations)
## Example Usage ### Pubsub Lite Reservation Basic
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { project, err := organizations.LookupProject(ctx, nil, nil) if err != nil { return err } _, err = pubsub.NewLiteReservation(ctx, "example", &pubsub.LiteReservationArgs{ Project: pulumi.String(project.Number), ThroughputCapacity: pulumi.Int(2), }) if err != nil { return err } return nil }) }
```
## Import
Reservation can be imported using any of these accepted formats ¶
```sh
$ pulumi import gcp:pubsub/liteReservation:LiteReservation default projects/{{project}}/locations/{{region}}/reservations/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteReservation:LiteReservation default {{project}}/{{region}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteReservation:LiteReservation default {{region}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteReservation:LiteReservation default {{name}}
```
func GetLiteReservation ¶
func GetLiteReservation(ctx *pulumi.Context, name string, id pulumi.IDInput, state *LiteReservationState, opts ...pulumi.ResourceOption) (*LiteReservation, error)
GetLiteReservation gets an existing LiteReservation 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 NewLiteReservation ¶
func NewLiteReservation(ctx *pulumi.Context, name string, args *LiteReservationArgs, opts ...pulumi.ResourceOption) (*LiteReservation, error)
NewLiteReservation registers a new resource with the given unique name, arguments, and options.
func (*LiteReservation) ElementType ¶
func (*LiteReservation) ElementType() reflect.Type
func (*LiteReservation) ToLiteReservationOutput ¶
func (i *LiteReservation) ToLiteReservationOutput() LiteReservationOutput
func (*LiteReservation) ToLiteReservationOutputWithContext ¶
func (i *LiteReservation) ToLiteReservationOutputWithContext(ctx context.Context) LiteReservationOutput
type LiteReservationArgs ¶
type LiteReservationArgs struct { // Name of the reservation. 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 region of the pubsub lite reservation. Region pulumi.StringPtrInput // The reserved throughput capacity. Every unit of throughput capacity is // equivalent to 1 MiB/s of published messages or 2 MiB/s of subscribed // messages. ThroughputCapacity pulumi.IntInput }
The set of arguments for constructing a LiteReservation resource.
func (LiteReservationArgs) ElementType ¶
func (LiteReservationArgs) ElementType() reflect.Type
type LiteReservationArray ¶
type LiteReservationArray []LiteReservationInput
func (LiteReservationArray) ElementType ¶
func (LiteReservationArray) ElementType() reflect.Type
func (LiteReservationArray) ToLiteReservationArrayOutput ¶
func (i LiteReservationArray) ToLiteReservationArrayOutput() LiteReservationArrayOutput
func (LiteReservationArray) ToLiteReservationArrayOutputWithContext ¶
func (i LiteReservationArray) ToLiteReservationArrayOutputWithContext(ctx context.Context) LiteReservationArrayOutput
type LiteReservationArrayInput ¶
type LiteReservationArrayInput interface { pulumi.Input ToLiteReservationArrayOutput() LiteReservationArrayOutput ToLiteReservationArrayOutputWithContext(context.Context) LiteReservationArrayOutput }
LiteReservationArrayInput is an input type that accepts LiteReservationArray and LiteReservationArrayOutput values. You can construct a concrete instance of `LiteReservationArrayInput` via:
LiteReservationArray{ LiteReservationArgs{...} }
type LiteReservationArrayOutput ¶
type LiteReservationArrayOutput struct{ *pulumi.OutputState }
func (LiteReservationArrayOutput) ElementType ¶
func (LiteReservationArrayOutput) ElementType() reflect.Type
func (LiteReservationArrayOutput) Index ¶
func (o LiteReservationArrayOutput) Index(i pulumi.IntInput) LiteReservationOutput
func (LiteReservationArrayOutput) ToLiteReservationArrayOutput ¶
func (o LiteReservationArrayOutput) ToLiteReservationArrayOutput() LiteReservationArrayOutput
func (LiteReservationArrayOutput) ToLiteReservationArrayOutputWithContext ¶
func (o LiteReservationArrayOutput) ToLiteReservationArrayOutputWithContext(ctx context.Context) LiteReservationArrayOutput
type LiteReservationInput ¶
type LiteReservationInput interface { pulumi.Input ToLiteReservationOutput() LiteReservationOutput ToLiteReservationOutputWithContext(ctx context.Context) LiteReservationOutput }
type LiteReservationMap ¶
type LiteReservationMap map[string]LiteReservationInput
func (LiteReservationMap) ElementType ¶
func (LiteReservationMap) ElementType() reflect.Type
func (LiteReservationMap) ToLiteReservationMapOutput ¶
func (i LiteReservationMap) ToLiteReservationMapOutput() LiteReservationMapOutput
func (LiteReservationMap) ToLiteReservationMapOutputWithContext ¶
func (i LiteReservationMap) ToLiteReservationMapOutputWithContext(ctx context.Context) LiteReservationMapOutput
type LiteReservationMapInput ¶
type LiteReservationMapInput interface { pulumi.Input ToLiteReservationMapOutput() LiteReservationMapOutput ToLiteReservationMapOutputWithContext(context.Context) LiteReservationMapOutput }
LiteReservationMapInput is an input type that accepts LiteReservationMap and LiteReservationMapOutput values. You can construct a concrete instance of `LiteReservationMapInput` via:
LiteReservationMap{ "key": LiteReservationArgs{...} }
type LiteReservationMapOutput ¶
type LiteReservationMapOutput struct{ *pulumi.OutputState }
func (LiteReservationMapOutput) ElementType ¶
func (LiteReservationMapOutput) ElementType() reflect.Type
func (LiteReservationMapOutput) MapIndex ¶
func (o LiteReservationMapOutput) MapIndex(k pulumi.StringInput) LiteReservationOutput
func (LiteReservationMapOutput) ToLiteReservationMapOutput ¶
func (o LiteReservationMapOutput) ToLiteReservationMapOutput() LiteReservationMapOutput
func (LiteReservationMapOutput) ToLiteReservationMapOutputWithContext ¶
func (o LiteReservationMapOutput) ToLiteReservationMapOutputWithContext(ctx context.Context) LiteReservationMapOutput
type LiteReservationOutput ¶
type LiteReservationOutput struct{ *pulumi.OutputState }
func (LiteReservationOutput) ElementType ¶
func (LiteReservationOutput) ElementType() reflect.Type
func (LiteReservationOutput) Name ¶ added in v6.23.0
func (o LiteReservationOutput) Name() pulumi.StringOutput
Name of the reservation.
func (LiteReservationOutput) Project ¶ added in v6.23.0
func (o LiteReservationOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (LiteReservationOutput) Region ¶ added in v6.23.0
func (o LiteReservationOutput) Region() pulumi.StringPtrOutput
The region of the pubsub lite reservation.
func (LiteReservationOutput) ThroughputCapacity ¶ added in v6.23.0
func (o LiteReservationOutput) ThroughputCapacity() pulumi.IntOutput
The reserved throughput capacity. Every unit of throughput capacity is equivalent to 1 MiB/s of published messages or 2 MiB/s of subscribed messages.
func (LiteReservationOutput) ToLiteReservationOutput ¶
func (o LiteReservationOutput) ToLiteReservationOutput() LiteReservationOutput
func (LiteReservationOutput) ToLiteReservationOutputWithContext ¶
func (o LiteReservationOutput) ToLiteReservationOutputWithContext(ctx context.Context) LiteReservationOutput
type LiteReservationState ¶
type LiteReservationState struct { // Name of the reservation. 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 region of the pubsub lite reservation. Region pulumi.StringPtrInput // The reserved throughput capacity. Every unit of throughput capacity is // equivalent to 1 MiB/s of published messages or 2 MiB/s of subscribed // messages. ThroughputCapacity pulumi.IntPtrInput }
func (LiteReservationState) ElementType ¶
func (LiteReservationState) ElementType() reflect.Type
type LiteSubscription ¶
type LiteSubscription struct { pulumi.CustomResourceState // The settings for this subscription's message delivery. // Structure is documented below. DeliveryConfig LiteSubscriptionDeliveryConfigPtrOutput `pulumi:"deliveryConfig"` // Name of the subscription. 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"` // The region of the pubsub lite topic. Region pulumi.StringPtrOutput `pulumi:"region"` // A reference to a Topic resource. Topic pulumi.StringOutput `pulumi:"topic"` // The zone of the pubsub lite topic. Zone pulumi.StringPtrOutput `pulumi:"zone"` }
A named resource representing the stream of messages from a single, specific topic, to be delivered to the subscribing application.
To get more information about Subscription, see:
* [API documentation](https://cloud.google.com/pubsub/lite/docs/reference/rest/v1/admin.projects.locations.subscriptions) * How-to Guides
- [Managing Subscriptions](https://cloud.google.com/pubsub/lite/docs/subscriptions)
## Example Usage ### Pubsub Lite Subscription Basic
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { project, err := organizations.LookupProject(ctx, nil, nil) if err != nil { return err } exampleLiteTopic, err := pubsub.NewLiteTopic(ctx, "exampleLiteTopic", &pubsub.LiteTopicArgs{ Project: pulumi.String(project.Number), PartitionConfig: &pubsub.LiteTopicPartitionConfigArgs{ Count: pulumi.Int(1), Capacity: &pubsub.LiteTopicPartitionConfigCapacityArgs{ PublishMibPerSec: pulumi.Int(4), SubscribeMibPerSec: pulumi.Int(8), }, }, RetentionConfig: &pubsub.LiteTopicRetentionConfigArgs{ PerPartitionBytes: pulumi.String("32212254720"), }, }) if err != nil { return err } _, err = pubsub.NewLiteSubscription(ctx, "exampleLiteSubscription", &pubsub.LiteSubscriptionArgs{ Topic: exampleLiteTopic.Name, DeliveryConfig: &pubsub.LiteSubscriptionDeliveryConfigArgs{ DeliveryRequirement: pulumi.String("DELIVER_AFTER_STORED"), }, }) if err != nil { return err } return nil }) }
```
## Import
Subscription can be imported using any of these accepted formats ¶
```sh
$ pulumi import gcp:pubsub/liteSubscription:LiteSubscription default projects/{{project}}/locations/{{zone}}/subscriptions/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteSubscription:LiteSubscription default {{project}}/{{zone}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteSubscription:LiteSubscription default {{zone}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteSubscription:LiteSubscription default {{name}}
```
func GetLiteSubscription ¶
func GetLiteSubscription(ctx *pulumi.Context, name string, id pulumi.IDInput, state *LiteSubscriptionState, opts ...pulumi.ResourceOption) (*LiteSubscription, error)
GetLiteSubscription gets an existing LiteSubscription 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 NewLiteSubscription ¶
func NewLiteSubscription(ctx *pulumi.Context, name string, args *LiteSubscriptionArgs, opts ...pulumi.ResourceOption) (*LiteSubscription, error)
NewLiteSubscription registers a new resource with the given unique name, arguments, and options.
func (*LiteSubscription) ElementType ¶
func (*LiteSubscription) ElementType() reflect.Type
func (*LiteSubscription) ToLiteSubscriptionOutput ¶
func (i *LiteSubscription) ToLiteSubscriptionOutput() LiteSubscriptionOutput
func (*LiteSubscription) ToLiteSubscriptionOutputWithContext ¶
func (i *LiteSubscription) ToLiteSubscriptionOutputWithContext(ctx context.Context) LiteSubscriptionOutput
type LiteSubscriptionArgs ¶
type LiteSubscriptionArgs struct { // The settings for this subscription's message delivery. // Structure is documented below. DeliveryConfig LiteSubscriptionDeliveryConfigPtrInput // Name of the subscription. 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 region of the pubsub lite topic. Region pulumi.StringPtrInput // A reference to a Topic resource. Topic pulumi.StringInput // The zone of the pubsub lite topic. Zone pulumi.StringPtrInput }
The set of arguments for constructing a LiteSubscription resource.
func (LiteSubscriptionArgs) ElementType ¶
func (LiteSubscriptionArgs) ElementType() reflect.Type
type LiteSubscriptionArray ¶
type LiteSubscriptionArray []LiteSubscriptionInput
func (LiteSubscriptionArray) ElementType ¶
func (LiteSubscriptionArray) ElementType() reflect.Type
func (LiteSubscriptionArray) ToLiteSubscriptionArrayOutput ¶
func (i LiteSubscriptionArray) ToLiteSubscriptionArrayOutput() LiteSubscriptionArrayOutput
func (LiteSubscriptionArray) ToLiteSubscriptionArrayOutputWithContext ¶
func (i LiteSubscriptionArray) ToLiteSubscriptionArrayOutputWithContext(ctx context.Context) LiteSubscriptionArrayOutput
type LiteSubscriptionArrayInput ¶
type LiteSubscriptionArrayInput interface { pulumi.Input ToLiteSubscriptionArrayOutput() LiteSubscriptionArrayOutput ToLiteSubscriptionArrayOutputWithContext(context.Context) LiteSubscriptionArrayOutput }
LiteSubscriptionArrayInput is an input type that accepts LiteSubscriptionArray and LiteSubscriptionArrayOutput values. You can construct a concrete instance of `LiteSubscriptionArrayInput` via:
LiteSubscriptionArray{ LiteSubscriptionArgs{...} }
type LiteSubscriptionArrayOutput ¶
type LiteSubscriptionArrayOutput struct{ *pulumi.OutputState }
func (LiteSubscriptionArrayOutput) ElementType ¶
func (LiteSubscriptionArrayOutput) ElementType() reflect.Type
func (LiteSubscriptionArrayOutput) Index ¶
func (o LiteSubscriptionArrayOutput) Index(i pulumi.IntInput) LiteSubscriptionOutput
func (LiteSubscriptionArrayOutput) ToLiteSubscriptionArrayOutput ¶
func (o LiteSubscriptionArrayOutput) ToLiteSubscriptionArrayOutput() LiteSubscriptionArrayOutput
func (LiteSubscriptionArrayOutput) ToLiteSubscriptionArrayOutputWithContext ¶
func (o LiteSubscriptionArrayOutput) ToLiteSubscriptionArrayOutputWithContext(ctx context.Context) LiteSubscriptionArrayOutput
type LiteSubscriptionDeliveryConfig ¶
type LiteSubscriptionDeliveryConfig struct { // When this subscription should send messages to subscribers relative to messages persistence in storage. // Possible values are `DELIVER_IMMEDIATELY`, `DELIVER_AFTER_STORED`, and `DELIVERY_REQUIREMENT_UNSPECIFIED`. DeliveryRequirement string `pulumi:"deliveryRequirement"` }
type LiteSubscriptionDeliveryConfigArgs ¶
type LiteSubscriptionDeliveryConfigArgs struct { // When this subscription should send messages to subscribers relative to messages persistence in storage. // Possible values are `DELIVER_IMMEDIATELY`, `DELIVER_AFTER_STORED`, and `DELIVERY_REQUIREMENT_UNSPECIFIED`. DeliveryRequirement pulumi.StringInput `pulumi:"deliveryRequirement"` }
func (LiteSubscriptionDeliveryConfigArgs) ElementType ¶
func (LiteSubscriptionDeliveryConfigArgs) ElementType() reflect.Type
func (LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigOutput ¶
func (i LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigOutput() LiteSubscriptionDeliveryConfigOutput
func (LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigOutputWithContext ¶
func (i LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigOutput
func (LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigPtrOutput ¶
func (i LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigPtrOutput() LiteSubscriptionDeliveryConfigPtrOutput
func (LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext ¶
func (i LiteSubscriptionDeliveryConfigArgs) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigPtrOutput
type LiteSubscriptionDeliveryConfigInput ¶
type LiteSubscriptionDeliveryConfigInput interface { pulumi.Input ToLiteSubscriptionDeliveryConfigOutput() LiteSubscriptionDeliveryConfigOutput ToLiteSubscriptionDeliveryConfigOutputWithContext(context.Context) LiteSubscriptionDeliveryConfigOutput }
LiteSubscriptionDeliveryConfigInput is an input type that accepts LiteSubscriptionDeliveryConfigArgs and LiteSubscriptionDeliveryConfigOutput values. You can construct a concrete instance of `LiteSubscriptionDeliveryConfigInput` via:
LiteSubscriptionDeliveryConfigArgs{...}
type LiteSubscriptionDeliveryConfigOutput ¶
type LiteSubscriptionDeliveryConfigOutput struct{ *pulumi.OutputState }
func (LiteSubscriptionDeliveryConfigOutput) DeliveryRequirement ¶
func (o LiteSubscriptionDeliveryConfigOutput) DeliveryRequirement() pulumi.StringOutput
When this subscription should send messages to subscribers relative to messages persistence in storage. Possible values are `DELIVER_IMMEDIATELY`, `DELIVER_AFTER_STORED`, and `DELIVERY_REQUIREMENT_UNSPECIFIED`.
func (LiteSubscriptionDeliveryConfigOutput) ElementType ¶
func (LiteSubscriptionDeliveryConfigOutput) ElementType() reflect.Type
func (LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigOutput ¶
func (o LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigOutput() LiteSubscriptionDeliveryConfigOutput
func (LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigOutputWithContext ¶
func (o LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigOutput
func (LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigPtrOutput ¶
func (o LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigPtrOutput() LiteSubscriptionDeliveryConfigPtrOutput
func (LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext ¶
func (o LiteSubscriptionDeliveryConfigOutput) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigPtrOutput
type LiteSubscriptionDeliveryConfigPtrInput ¶
type LiteSubscriptionDeliveryConfigPtrInput interface { pulumi.Input ToLiteSubscriptionDeliveryConfigPtrOutput() LiteSubscriptionDeliveryConfigPtrOutput ToLiteSubscriptionDeliveryConfigPtrOutputWithContext(context.Context) LiteSubscriptionDeliveryConfigPtrOutput }
LiteSubscriptionDeliveryConfigPtrInput is an input type that accepts LiteSubscriptionDeliveryConfigArgs, LiteSubscriptionDeliveryConfigPtr and LiteSubscriptionDeliveryConfigPtrOutput values. You can construct a concrete instance of `LiteSubscriptionDeliveryConfigPtrInput` via:
LiteSubscriptionDeliveryConfigArgs{...} or: nil
func LiteSubscriptionDeliveryConfigPtr ¶
func LiteSubscriptionDeliveryConfigPtr(v *LiteSubscriptionDeliveryConfigArgs) LiteSubscriptionDeliveryConfigPtrInput
type LiteSubscriptionDeliveryConfigPtrOutput ¶
type LiteSubscriptionDeliveryConfigPtrOutput struct{ *pulumi.OutputState }
func (LiteSubscriptionDeliveryConfigPtrOutput) DeliveryRequirement ¶
func (o LiteSubscriptionDeliveryConfigPtrOutput) DeliveryRequirement() pulumi.StringPtrOutput
When this subscription should send messages to subscribers relative to messages persistence in storage. Possible values are `DELIVER_IMMEDIATELY`, `DELIVER_AFTER_STORED`, and `DELIVERY_REQUIREMENT_UNSPECIFIED`.
func (LiteSubscriptionDeliveryConfigPtrOutput) ElementType ¶
func (LiteSubscriptionDeliveryConfigPtrOutput) ElementType() reflect.Type
func (LiteSubscriptionDeliveryConfigPtrOutput) ToLiteSubscriptionDeliveryConfigPtrOutput ¶
func (o LiteSubscriptionDeliveryConfigPtrOutput) ToLiteSubscriptionDeliveryConfigPtrOutput() LiteSubscriptionDeliveryConfigPtrOutput
func (LiteSubscriptionDeliveryConfigPtrOutput) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext ¶
func (o LiteSubscriptionDeliveryConfigPtrOutput) ToLiteSubscriptionDeliveryConfigPtrOutputWithContext(ctx context.Context) LiteSubscriptionDeliveryConfigPtrOutput
type LiteSubscriptionInput ¶
type LiteSubscriptionInput interface { pulumi.Input ToLiteSubscriptionOutput() LiteSubscriptionOutput ToLiteSubscriptionOutputWithContext(ctx context.Context) LiteSubscriptionOutput }
type LiteSubscriptionMap ¶
type LiteSubscriptionMap map[string]LiteSubscriptionInput
func (LiteSubscriptionMap) ElementType ¶
func (LiteSubscriptionMap) ElementType() reflect.Type
func (LiteSubscriptionMap) ToLiteSubscriptionMapOutput ¶
func (i LiteSubscriptionMap) ToLiteSubscriptionMapOutput() LiteSubscriptionMapOutput
func (LiteSubscriptionMap) ToLiteSubscriptionMapOutputWithContext ¶
func (i LiteSubscriptionMap) ToLiteSubscriptionMapOutputWithContext(ctx context.Context) LiteSubscriptionMapOutput
type LiteSubscriptionMapInput ¶
type LiteSubscriptionMapInput interface { pulumi.Input ToLiteSubscriptionMapOutput() LiteSubscriptionMapOutput ToLiteSubscriptionMapOutputWithContext(context.Context) LiteSubscriptionMapOutput }
LiteSubscriptionMapInput is an input type that accepts LiteSubscriptionMap and LiteSubscriptionMapOutput values. You can construct a concrete instance of `LiteSubscriptionMapInput` via:
LiteSubscriptionMap{ "key": LiteSubscriptionArgs{...} }
type LiteSubscriptionMapOutput ¶
type LiteSubscriptionMapOutput struct{ *pulumi.OutputState }
func (LiteSubscriptionMapOutput) ElementType ¶
func (LiteSubscriptionMapOutput) ElementType() reflect.Type
func (LiteSubscriptionMapOutput) MapIndex ¶
func (o LiteSubscriptionMapOutput) MapIndex(k pulumi.StringInput) LiteSubscriptionOutput
func (LiteSubscriptionMapOutput) ToLiteSubscriptionMapOutput ¶
func (o LiteSubscriptionMapOutput) ToLiteSubscriptionMapOutput() LiteSubscriptionMapOutput
func (LiteSubscriptionMapOutput) ToLiteSubscriptionMapOutputWithContext ¶
func (o LiteSubscriptionMapOutput) ToLiteSubscriptionMapOutputWithContext(ctx context.Context) LiteSubscriptionMapOutput
type LiteSubscriptionOutput ¶
type LiteSubscriptionOutput struct{ *pulumi.OutputState }
func (LiteSubscriptionOutput) DeliveryConfig ¶ added in v6.23.0
func (o LiteSubscriptionOutput) DeliveryConfig() LiteSubscriptionDeliveryConfigPtrOutput
The settings for this subscription's message delivery. Structure is documented below.
func (LiteSubscriptionOutput) ElementType ¶
func (LiteSubscriptionOutput) ElementType() reflect.Type
func (LiteSubscriptionOutput) Name ¶ added in v6.23.0
func (o LiteSubscriptionOutput) Name() pulumi.StringOutput
Name of the subscription.
func (LiteSubscriptionOutput) Project ¶ added in v6.23.0
func (o LiteSubscriptionOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (LiteSubscriptionOutput) Region ¶ added in v6.23.0
func (o LiteSubscriptionOutput) Region() pulumi.StringPtrOutput
The region of the pubsub lite topic.
func (LiteSubscriptionOutput) ToLiteSubscriptionOutput ¶
func (o LiteSubscriptionOutput) ToLiteSubscriptionOutput() LiteSubscriptionOutput
func (LiteSubscriptionOutput) ToLiteSubscriptionOutputWithContext ¶
func (o LiteSubscriptionOutput) ToLiteSubscriptionOutputWithContext(ctx context.Context) LiteSubscriptionOutput
func (LiteSubscriptionOutput) Topic ¶ added in v6.23.0
func (o LiteSubscriptionOutput) Topic() pulumi.StringOutput
A reference to a Topic resource.
func (LiteSubscriptionOutput) Zone ¶ added in v6.23.0
func (o LiteSubscriptionOutput) Zone() pulumi.StringPtrOutput
The zone of the pubsub lite topic.
type LiteSubscriptionState ¶
type LiteSubscriptionState struct { // The settings for this subscription's message delivery. // Structure is documented below. DeliveryConfig LiteSubscriptionDeliveryConfigPtrInput // Name of the subscription. 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 region of the pubsub lite topic. Region pulumi.StringPtrInput // A reference to a Topic resource. Topic pulumi.StringPtrInput // The zone of the pubsub lite topic. Zone pulumi.StringPtrInput }
func (LiteSubscriptionState) ElementType ¶
func (LiteSubscriptionState) ElementType() reflect.Type
type LiteTopic ¶
type LiteTopic struct { pulumi.CustomResourceState // Name of the topic. Name pulumi.StringOutput `pulumi:"name"` // The settings for this topic's partitions. // Structure is documented below. PartitionConfig LiteTopicPartitionConfigPtrOutput `pulumi:"partitionConfig"` // 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 region of the pubsub lite topic. Region pulumi.StringPtrOutput `pulumi:"region"` // The settings for this topic's Reservation usage. // Structure is documented below. ReservationConfig LiteTopicReservationConfigPtrOutput `pulumi:"reservationConfig"` // The settings for a topic's message retention. // Structure is documented below. RetentionConfig LiteTopicRetentionConfigPtrOutput `pulumi:"retentionConfig"` // The zone of the pubsub lite topic. Zone pulumi.StringPtrOutput `pulumi:"zone"` }
A named resource to which messages are sent by publishers.
To get more information about Topic, see:
* [API documentation](https://cloud.google.com/pubsub/lite/docs/reference/rest/v1/admin.projects.locations.topics) * How-to Guides
- [Managing Topics](https://cloud.google.com/pubsub/lite/docs/topics)
## Example Usage ### Pubsub Lite Topic Basic
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { project, err := organizations.LookupProject(ctx, nil, nil) if err != nil { return err } exampleLiteReservation, err := pubsub.NewLiteReservation(ctx, "exampleLiteReservation", &pubsub.LiteReservationArgs{ Project: pulumi.String(project.Number), ThroughputCapacity: pulumi.Int(2), }) if err != nil { return err } _, err = pubsub.NewLiteTopic(ctx, "exampleLiteTopic", &pubsub.LiteTopicArgs{ Project: pulumi.String(project.Number), PartitionConfig: &pubsub.LiteTopicPartitionConfigArgs{ Count: pulumi.Int(1), Capacity: &pubsub.LiteTopicPartitionConfigCapacityArgs{ PublishMibPerSec: pulumi.Int(4), SubscribeMibPerSec: pulumi.Int(8), }, }, RetentionConfig: &pubsub.LiteTopicRetentionConfigArgs{ PerPartitionBytes: pulumi.String("32212254720"), }, ReservationConfig: &pubsub.LiteTopicReservationConfigArgs{ ThroughputReservation: exampleLiteReservation.Name, }, }) if err != nil { return err } return nil }) }
```
## Import
Topic can be imported using any of these accepted formats ¶
```sh
$ pulumi import gcp:pubsub/liteTopic:LiteTopic default projects/{{project}}/locations/{{zone}}/topics/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteTopic:LiteTopic default {{project}}/{{zone}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteTopic:LiteTopic default {{zone}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/liteTopic:LiteTopic default {{name}}
```
func GetLiteTopic ¶
func GetLiteTopic(ctx *pulumi.Context, name string, id pulumi.IDInput, state *LiteTopicState, opts ...pulumi.ResourceOption) (*LiteTopic, error)
GetLiteTopic gets an existing LiteTopic 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 NewLiteTopic ¶
func NewLiteTopic(ctx *pulumi.Context, name string, args *LiteTopicArgs, opts ...pulumi.ResourceOption) (*LiteTopic, error)
NewLiteTopic registers a new resource with the given unique name, arguments, and options.
func (*LiteTopic) ElementType ¶
func (*LiteTopic) ToLiteTopicOutput ¶
func (i *LiteTopic) ToLiteTopicOutput() LiteTopicOutput
func (*LiteTopic) ToLiteTopicOutputWithContext ¶
func (i *LiteTopic) ToLiteTopicOutputWithContext(ctx context.Context) LiteTopicOutput
type LiteTopicArgs ¶
type LiteTopicArgs struct { // Name of the topic. Name pulumi.StringPtrInput // The settings for this topic's partitions. // Structure is documented below. PartitionConfig LiteTopicPartitionConfigPtrInput // The ID of the project in which the resource belongs. // If it is not provided, the provider project is used. Project pulumi.StringPtrInput // The region of the pubsub lite topic. Region pulumi.StringPtrInput // The settings for this topic's Reservation usage. // Structure is documented below. ReservationConfig LiteTopicReservationConfigPtrInput // The settings for a topic's message retention. // Structure is documented below. RetentionConfig LiteTopicRetentionConfigPtrInput // The zone of the pubsub lite topic. Zone pulumi.StringPtrInput }
The set of arguments for constructing a LiteTopic resource.
func (LiteTopicArgs) ElementType ¶
func (LiteTopicArgs) ElementType() reflect.Type
type LiteTopicArray ¶
type LiteTopicArray []LiteTopicInput
func (LiteTopicArray) ElementType ¶
func (LiteTopicArray) ElementType() reflect.Type
func (LiteTopicArray) ToLiteTopicArrayOutput ¶
func (i LiteTopicArray) ToLiteTopicArrayOutput() LiteTopicArrayOutput
func (LiteTopicArray) ToLiteTopicArrayOutputWithContext ¶
func (i LiteTopicArray) ToLiteTopicArrayOutputWithContext(ctx context.Context) LiteTopicArrayOutput
type LiteTopicArrayInput ¶
type LiteTopicArrayInput interface { pulumi.Input ToLiteTopicArrayOutput() LiteTopicArrayOutput ToLiteTopicArrayOutputWithContext(context.Context) LiteTopicArrayOutput }
LiteTopicArrayInput is an input type that accepts LiteTopicArray and LiteTopicArrayOutput values. You can construct a concrete instance of `LiteTopicArrayInput` via:
LiteTopicArray{ LiteTopicArgs{...} }
type LiteTopicArrayOutput ¶
type LiteTopicArrayOutput struct{ *pulumi.OutputState }
func (LiteTopicArrayOutput) ElementType ¶
func (LiteTopicArrayOutput) ElementType() reflect.Type
func (LiteTopicArrayOutput) Index ¶
func (o LiteTopicArrayOutput) Index(i pulumi.IntInput) LiteTopicOutput
func (LiteTopicArrayOutput) ToLiteTopicArrayOutput ¶
func (o LiteTopicArrayOutput) ToLiteTopicArrayOutput() LiteTopicArrayOutput
func (LiteTopicArrayOutput) ToLiteTopicArrayOutputWithContext ¶
func (o LiteTopicArrayOutput) ToLiteTopicArrayOutputWithContext(ctx context.Context) LiteTopicArrayOutput
type LiteTopicInput ¶
type LiteTopicInput interface { pulumi.Input ToLiteTopicOutput() LiteTopicOutput ToLiteTopicOutputWithContext(ctx context.Context) LiteTopicOutput }
type LiteTopicMap ¶
type LiteTopicMap map[string]LiteTopicInput
func (LiteTopicMap) ElementType ¶
func (LiteTopicMap) ElementType() reflect.Type
func (LiteTopicMap) ToLiteTopicMapOutput ¶
func (i LiteTopicMap) ToLiteTopicMapOutput() LiteTopicMapOutput
func (LiteTopicMap) ToLiteTopicMapOutputWithContext ¶
func (i LiteTopicMap) ToLiteTopicMapOutputWithContext(ctx context.Context) LiteTopicMapOutput
type LiteTopicMapInput ¶
type LiteTopicMapInput interface { pulumi.Input ToLiteTopicMapOutput() LiteTopicMapOutput ToLiteTopicMapOutputWithContext(context.Context) LiteTopicMapOutput }
LiteTopicMapInput is an input type that accepts LiteTopicMap and LiteTopicMapOutput values. You can construct a concrete instance of `LiteTopicMapInput` via:
LiteTopicMap{ "key": LiteTopicArgs{...} }
type LiteTopicMapOutput ¶
type LiteTopicMapOutput struct{ *pulumi.OutputState }
func (LiteTopicMapOutput) ElementType ¶
func (LiteTopicMapOutput) ElementType() reflect.Type
func (LiteTopicMapOutput) MapIndex ¶
func (o LiteTopicMapOutput) MapIndex(k pulumi.StringInput) LiteTopicOutput
func (LiteTopicMapOutput) ToLiteTopicMapOutput ¶
func (o LiteTopicMapOutput) ToLiteTopicMapOutput() LiteTopicMapOutput
func (LiteTopicMapOutput) ToLiteTopicMapOutputWithContext ¶
func (o LiteTopicMapOutput) ToLiteTopicMapOutputWithContext(ctx context.Context) LiteTopicMapOutput
type LiteTopicOutput ¶
type LiteTopicOutput struct{ *pulumi.OutputState }
func (LiteTopicOutput) ElementType ¶
func (LiteTopicOutput) ElementType() reflect.Type
func (LiteTopicOutput) Name ¶ added in v6.23.0
func (o LiteTopicOutput) Name() pulumi.StringOutput
Name of the topic.
func (LiteTopicOutput) PartitionConfig ¶ added in v6.23.0
func (o LiteTopicOutput) PartitionConfig() LiteTopicPartitionConfigPtrOutput
The settings for this topic's partitions. Structure is documented below.
func (LiteTopicOutput) Project ¶ added in v6.23.0
func (o LiteTopicOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (LiteTopicOutput) Region ¶ added in v6.23.0
func (o LiteTopicOutput) Region() pulumi.StringPtrOutput
The region of the pubsub lite topic.
func (LiteTopicOutput) ReservationConfig ¶ added in v6.23.0
func (o LiteTopicOutput) ReservationConfig() LiteTopicReservationConfigPtrOutput
The settings for this topic's Reservation usage. Structure is documented below.
func (LiteTopicOutput) RetentionConfig ¶ added in v6.23.0
func (o LiteTopicOutput) RetentionConfig() LiteTopicRetentionConfigPtrOutput
The settings for a topic's message retention. Structure is documented below.
func (LiteTopicOutput) ToLiteTopicOutput ¶
func (o LiteTopicOutput) ToLiteTopicOutput() LiteTopicOutput
func (LiteTopicOutput) ToLiteTopicOutputWithContext ¶
func (o LiteTopicOutput) ToLiteTopicOutputWithContext(ctx context.Context) LiteTopicOutput
func (LiteTopicOutput) Zone ¶ added in v6.23.0
func (o LiteTopicOutput) Zone() pulumi.StringPtrOutput
The zone of the pubsub lite topic.
type LiteTopicPartitionConfig ¶
type LiteTopicPartitionConfig struct { // The capacity configuration. // Structure is documented below. Capacity *LiteTopicPartitionConfigCapacity `pulumi:"capacity"` // The number of partitions in the topic. Must be at least 1. Count int `pulumi:"count"` }
type LiteTopicPartitionConfigArgs ¶
type LiteTopicPartitionConfigArgs struct { // The capacity configuration. // Structure is documented below. Capacity LiteTopicPartitionConfigCapacityPtrInput `pulumi:"capacity"` // The number of partitions in the topic. Must be at least 1. Count pulumi.IntInput `pulumi:"count"` }
func (LiteTopicPartitionConfigArgs) ElementType ¶
func (LiteTopicPartitionConfigArgs) ElementType() reflect.Type
func (LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigOutput ¶
func (i LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigOutput() LiteTopicPartitionConfigOutput
func (LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigOutputWithContext ¶
func (i LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigOutputWithContext(ctx context.Context) LiteTopicPartitionConfigOutput
func (LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigPtrOutput ¶
func (i LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigPtrOutput() LiteTopicPartitionConfigPtrOutput
func (LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigPtrOutputWithContext ¶
func (i LiteTopicPartitionConfigArgs) ToLiteTopicPartitionConfigPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigPtrOutput
type LiteTopicPartitionConfigCapacity ¶
type LiteTopicPartitionConfigCapacity struct { // Subscribe throughput capacity per partition in MiB/s. Must be >= 4 and <= 16. PublishMibPerSec int `pulumi:"publishMibPerSec"` // Publish throughput capacity per partition in MiB/s. Must be >= 4 and <= 16. SubscribeMibPerSec int `pulumi:"subscribeMibPerSec"` }
type LiteTopicPartitionConfigCapacityArgs ¶
type LiteTopicPartitionConfigCapacityArgs struct { // Subscribe throughput capacity per partition in MiB/s. Must be >= 4 and <= 16. PublishMibPerSec pulumi.IntInput `pulumi:"publishMibPerSec"` // Publish throughput capacity per partition in MiB/s. Must be >= 4 and <= 16. SubscribeMibPerSec pulumi.IntInput `pulumi:"subscribeMibPerSec"` }
func (LiteTopicPartitionConfigCapacityArgs) ElementType ¶
func (LiteTopicPartitionConfigCapacityArgs) ElementType() reflect.Type
func (LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityOutput ¶
func (i LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityOutput() LiteTopicPartitionConfigCapacityOutput
func (LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityOutputWithContext ¶
func (i LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityOutput
func (LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityPtrOutput ¶
func (i LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityPtrOutput() LiteTopicPartitionConfigCapacityPtrOutput
func (LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext ¶
func (i LiteTopicPartitionConfigCapacityArgs) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityPtrOutput
type LiteTopicPartitionConfigCapacityInput ¶
type LiteTopicPartitionConfigCapacityInput interface { pulumi.Input ToLiteTopicPartitionConfigCapacityOutput() LiteTopicPartitionConfigCapacityOutput ToLiteTopicPartitionConfigCapacityOutputWithContext(context.Context) LiteTopicPartitionConfigCapacityOutput }
LiteTopicPartitionConfigCapacityInput is an input type that accepts LiteTopicPartitionConfigCapacityArgs and LiteTopicPartitionConfigCapacityOutput values. You can construct a concrete instance of `LiteTopicPartitionConfigCapacityInput` via:
LiteTopicPartitionConfigCapacityArgs{...}
type LiteTopicPartitionConfigCapacityOutput ¶
type LiteTopicPartitionConfigCapacityOutput struct{ *pulumi.OutputState }
func (LiteTopicPartitionConfigCapacityOutput) ElementType ¶
func (LiteTopicPartitionConfigCapacityOutput) ElementType() reflect.Type
func (LiteTopicPartitionConfigCapacityOutput) PublishMibPerSec ¶
func (o LiteTopicPartitionConfigCapacityOutput) PublishMibPerSec() pulumi.IntOutput
Subscribe throughput capacity per partition in MiB/s. Must be >= 4 and <= 16.
func (LiteTopicPartitionConfigCapacityOutput) SubscribeMibPerSec ¶
func (o LiteTopicPartitionConfigCapacityOutput) SubscribeMibPerSec() pulumi.IntOutput
Publish throughput capacity per partition in MiB/s. Must be >= 4 and <= 16.
func (LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityOutput ¶
func (o LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityOutput() LiteTopicPartitionConfigCapacityOutput
func (LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityOutputWithContext ¶
func (o LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityOutput
func (LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityPtrOutput ¶
func (o LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityPtrOutput() LiteTopicPartitionConfigCapacityPtrOutput
func (LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext ¶
func (o LiteTopicPartitionConfigCapacityOutput) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityPtrOutput
type LiteTopicPartitionConfigCapacityPtrInput ¶
type LiteTopicPartitionConfigCapacityPtrInput interface { pulumi.Input ToLiteTopicPartitionConfigCapacityPtrOutput() LiteTopicPartitionConfigCapacityPtrOutput ToLiteTopicPartitionConfigCapacityPtrOutputWithContext(context.Context) LiteTopicPartitionConfigCapacityPtrOutput }
LiteTopicPartitionConfigCapacityPtrInput is an input type that accepts LiteTopicPartitionConfigCapacityArgs, LiteTopicPartitionConfigCapacityPtr and LiteTopicPartitionConfigCapacityPtrOutput values. You can construct a concrete instance of `LiteTopicPartitionConfigCapacityPtrInput` via:
LiteTopicPartitionConfigCapacityArgs{...} or: nil
func LiteTopicPartitionConfigCapacityPtr ¶
func LiteTopicPartitionConfigCapacityPtr(v *LiteTopicPartitionConfigCapacityArgs) LiteTopicPartitionConfigCapacityPtrInput
type LiteTopicPartitionConfigCapacityPtrOutput ¶
type LiteTopicPartitionConfigCapacityPtrOutput struct{ *pulumi.OutputState }
func (LiteTopicPartitionConfigCapacityPtrOutput) ElementType ¶
func (LiteTopicPartitionConfigCapacityPtrOutput) ElementType() reflect.Type
func (LiteTopicPartitionConfigCapacityPtrOutput) PublishMibPerSec ¶
func (o LiteTopicPartitionConfigCapacityPtrOutput) PublishMibPerSec() pulumi.IntPtrOutput
Subscribe throughput capacity per partition in MiB/s. Must be >= 4 and <= 16.
func (LiteTopicPartitionConfigCapacityPtrOutput) SubscribeMibPerSec ¶
func (o LiteTopicPartitionConfigCapacityPtrOutput) SubscribeMibPerSec() pulumi.IntPtrOutput
Publish throughput capacity per partition in MiB/s. Must be >= 4 and <= 16.
func (LiteTopicPartitionConfigCapacityPtrOutput) ToLiteTopicPartitionConfigCapacityPtrOutput ¶
func (o LiteTopicPartitionConfigCapacityPtrOutput) ToLiteTopicPartitionConfigCapacityPtrOutput() LiteTopicPartitionConfigCapacityPtrOutput
func (LiteTopicPartitionConfigCapacityPtrOutput) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext ¶
func (o LiteTopicPartitionConfigCapacityPtrOutput) ToLiteTopicPartitionConfigCapacityPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigCapacityPtrOutput
type LiteTopicPartitionConfigInput ¶
type LiteTopicPartitionConfigInput interface { pulumi.Input ToLiteTopicPartitionConfigOutput() LiteTopicPartitionConfigOutput ToLiteTopicPartitionConfigOutputWithContext(context.Context) LiteTopicPartitionConfigOutput }
LiteTopicPartitionConfigInput is an input type that accepts LiteTopicPartitionConfigArgs and LiteTopicPartitionConfigOutput values. You can construct a concrete instance of `LiteTopicPartitionConfigInput` via:
LiteTopicPartitionConfigArgs{...}
type LiteTopicPartitionConfigOutput ¶
type LiteTopicPartitionConfigOutput struct{ *pulumi.OutputState }
func (LiteTopicPartitionConfigOutput) Capacity ¶
func (o LiteTopicPartitionConfigOutput) Capacity() LiteTopicPartitionConfigCapacityPtrOutput
The capacity configuration. Structure is documented below.
func (LiteTopicPartitionConfigOutput) Count ¶
func (o LiteTopicPartitionConfigOutput) Count() pulumi.IntOutput
The number of partitions in the topic. Must be at least 1.
func (LiteTopicPartitionConfigOutput) ElementType ¶
func (LiteTopicPartitionConfigOutput) ElementType() reflect.Type
func (LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigOutput ¶
func (o LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigOutput() LiteTopicPartitionConfigOutput
func (LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigOutputWithContext ¶
func (o LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigOutputWithContext(ctx context.Context) LiteTopicPartitionConfigOutput
func (LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigPtrOutput ¶
func (o LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigPtrOutput() LiteTopicPartitionConfigPtrOutput
func (LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigPtrOutputWithContext ¶
func (o LiteTopicPartitionConfigOutput) ToLiteTopicPartitionConfigPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigPtrOutput
type LiteTopicPartitionConfigPtrInput ¶
type LiteTopicPartitionConfigPtrInput interface { pulumi.Input ToLiteTopicPartitionConfigPtrOutput() LiteTopicPartitionConfigPtrOutput ToLiteTopicPartitionConfigPtrOutputWithContext(context.Context) LiteTopicPartitionConfigPtrOutput }
LiteTopicPartitionConfigPtrInput is an input type that accepts LiteTopicPartitionConfigArgs, LiteTopicPartitionConfigPtr and LiteTopicPartitionConfigPtrOutput values. You can construct a concrete instance of `LiteTopicPartitionConfigPtrInput` via:
LiteTopicPartitionConfigArgs{...} or: nil
func LiteTopicPartitionConfigPtr ¶
func LiteTopicPartitionConfigPtr(v *LiteTopicPartitionConfigArgs) LiteTopicPartitionConfigPtrInput
type LiteTopicPartitionConfigPtrOutput ¶
type LiteTopicPartitionConfigPtrOutput struct{ *pulumi.OutputState }
func (LiteTopicPartitionConfigPtrOutput) Capacity ¶
func (o LiteTopicPartitionConfigPtrOutput) Capacity() LiteTopicPartitionConfigCapacityPtrOutput
The capacity configuration. Structure is documented below.
func (LiteTopicPartitionConfigPtrOutput) Count ¶
func (o LiteTopicPartitionConfigPtrOutput) Count() pulumi.IntPtrOutput
The number of partitions in the topic. Must be at least 1.
func (LiteTopicPartitionConfigPtrOutput) Elem ¶
func (o LiteTopicPartitionConfigPtrOutput) Elem() LiteTopicPartitionConfigOutput
func (LiteTopicPartitionConfigPtrOutput) ElementType ¶
func (LiteTopicPartitionConfigPtrOutput) ElementType() reflect.Type
func (LiteTopicPartitionConfigPtrOutput) ToLiteTopicPartitionConfigPtrOutput ¶
func (o LiteTopicPartitionConfigPtrOutput) ToLiteTopicPartitionConfigPtrOutput() LiteTopicPartitionConfigPtrOutput
func (LiteTopicPartitionConfigPtrOutput) ToLiteTopicPartitionConfigPtrOutputWithContext ¶
func (o LiteTopicPartitionConfigPtrOutput) ToLiteTopicPartitionConfigPtrOutputWithContext(ctx context.Context) LiteTopicPartitionConfigPtrOutput
type LiteTopicReservationConfig ¶
type LiteTopicReservationConfig struct { // The Reservation to use for this topic's throughput capacity. ThroughputReservation *string `pulumi:"throughputReservation"` }
type LiteTopicReservationConfigArgs ¶
type LiteTopicReservationConfigArgs struct { // The Reservation to use for this topic's throughput capacity. ThroughputReservation pulumi.StringPtrInput `pulumi:"throughputReservation"` }
func (LiteTopicReservationConfigArgs) ElementType ¶
func (LiteTopicReservationConfigArgs) ElementType() reflect.Type
func (LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigOutput ¶
func (i LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigOutput() LiteTopicReservationConfigOutput
func (LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigOutputWithContext ¶
func (i LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigOutputWithContext(ctx context.Context) LiteTopicReservationConfigOutput
func (LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigPtrOutput ¶
func (i LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigPtrOutput() LiteTopicReservationConfigPtrOutput
func (LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigPtrOutputWithContext ¶
func (i LiteTopicReservationConfigArgs) ToLiteTopicReservationConfigPtrOutputWithContext(ctx context.Context) LiteTopicReservationConfigPtrOutput
type LiteTopicReservationConfigInput ¶
type LiteTopicReservationConfigInput interface { pulumi.Input ToLiteTopicReservationConfigOutput() LiteTopicReservationConfigOutput ToLiteTopicReservationConfigOutputWithContext(context.Context) LiteTopicReservationConfigOutput }
LiteTopicReservationConfigInput is an input type that accepts LiteTopicReservationConfigArgs and LiteTopicReservationConfigOutput values. You can construct a concrete instance of `LiteTopicReservationConfigInput` via:
LiteTopicReservationConfigArgs{...}
type LiteTopicReservationConfigOutput ¶
type LiteTopicReservationConfigOutput struct{ *pulumi.OutputState }
func (LiteTopicReservationConfigOutput) ElementType ¶
func (LiteTopicReservationConfigOutput) ElementType() reflect.Type
func (LiteTopicReservationConfigOutput) ThroughputReservation ¶
func (o LiteTopicReservationConfigOutput) ThroughputReservation() pulumi.StringPtrOutput
The Reservation to use for this topic's throughput capacity.
func (LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigOutput ¶
func (o LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigOutput() LiteTopicReservationConfigOutput
func (LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigOutputWithContext ¶
func (o LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigOutputWithContext(ctx context.Context) LiteTopicReservationConfigOutput
func (LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigPtrOutput ¶
func (o LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigPtrOutput() LiteTopicReservationConfigPtrOutput
func (LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigPtrOutputWithContext ¶
func (o LiteTopicReservationConfigOutput) ToLiteTopicReservationConfigPtrOutputWithContext(ctx context.Context) LiteTopicReservationConfigPtrOutput
type LiteTopicReservationConfigPtrInput ¶
type LiteTopicReservationConfigPtrInput interface { pulumi.Input ToLiteTopicReservationConfigPtrOutput() LiteTopicReservationConfigPtrOutput ToLiteTopicReservationConfigPtrOutputWithContext(context.Context) LiteTopicReservationConfigPtrOutput }
LiteTopicReservationConfigPtrInput is an input type that accepts LiteTopicReservationConfigArgs, LiteTopicReservationConfigPtr and LiteTopicReservationConfigPtrOutput values. You can construct a concrete instance of `LiteTopicReservationConfigPtrInput` via:
LiteTopicReservationConfigArgs{...} or: nil
func LiteTopicReservationConfigPtr ¶
func LiteTopicReservationConfigPtr(v *LiteTopicReservationConfigArgs) LiteTopicReservationConfigPtrInput
type LiteTopicReservationConfigPtrOutput ¶
type LiteTopicReservationConfigPtrOutput struct{ *pulumi.OutputState }
func (LiteTopicReservationConfigPtrOutput) Elem ¶
func (o LiteTopicReservationConfigPtrOutput) Elem() LiteTopicReservationConfigOutput
func (LiteTopicReservationConfigPtrOutput) ElementType ¶
func (LiteTopicReservationConfigPtrOutput) ElementType() reflect.Type
func (LiteTopicReservationConfigPtrOutput) ThroughputReservation ¶
func (o LiteTopicReservationConfigPtrOutput) ThroughputReservation() pulumi.StringPtrOutput
The Reservation to use for this topic's throughput capacity.
func (LiteTopicReservationConfigPtrOutput) ToLiteTopicReservationConfigPtrOutput ¶
func (o LiteTopicReservationConfigPtrOutput) ToLiteTopicReservationConfigPtrOutput() LiteTopicReservationConfigPtrOutput
func (LiteTopicReservationConfigPtrOutput) ToLiteTopicReservationConfigPtrOutputWithContext ¶
func (o LiteTopicReservationConfigPtrOutput) ToLiteTopicReservationConfigPtrOutputWithContext(ctx context.Context) LiteTopicReservationConfigPtrOutput
type LiteTopicRetentionConfig ¶
type LiteTopicRetentionConfig struct { // The provisioned storage, in bytes, per partition. If the number of bytes stored // in any of the topic's partitions grows beyond this value, older messages will be // dropped to make room for newer ones, regardless of the value of period. PerPartitionBytes string `pulumi:"perPartitionBytes"` // How long a published message is retained. If unset, messages will be retained as // long as the bytes retained for each partition is below perPartitionBytes. A // duration in seconds with up to nine fractional digits, terminated by 's'. // Example: "3.5s". Period *string `pulumi:"period"` }
type LiteTopicRetentionConfigArgs ¶
type LiteTopicRetentionConfigArgs struct { // The provisioned storage, in bytes, per partition. If the number of bytes stored // in any of the topic's partitions grows beyond this value, older messages will be // dropped to make room for newer ones, regardless of the value of period. PerPartitionBytes pulumi.StringInput `pulumi:"perPartitionBytes"` // How long a published message is retained. If unset, messages will be retained as // long as the bytes retained for each partition is below perPartitionBytes. A // duration in seconds with up to nine fractional digits, terminated by 's'. // Example: "3.5s". Period pulumi.StringPtrInput `pulumi:"period"` }
func (LiteTopicRetentionConfigArgs) ElementType ¶
func (LiteTopicRetentionConfigArgs) ElementType() reflect.Type
func (LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigOutput ¶
func (i LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigOutput() LiteTopicRetentionConfigOutput
func (LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigOutputWithContext ¶
func (i LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigOutputWithContext(ctx context.Context) LiteTopicRetentionConfigOutput
func (LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigPtrOutput ¶
func (i LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigPtrOutput() LiteTopicRetentionConfigPtrOutput
func (LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigPtrOutputWithContext ¶
func (i LiteTopicRetentionConfigArgs) ToLiteTopicRetentionConfigPtrOutputWithContext(ctx context.Context) LiteTopicRetentionConfigPtrOutput
type LiteTopicRetentionConfigInput ¶
type LiteTopicRetentionConfigInput interface { pulumi.Input ToLiteTopicRetentionConfigOutput() LiteTopicRetentionConfigOutput ToLiteTopicRetentionConfigOutputWithContext(context.Context) LiteTopicRetentionConfigOutput }
LiteTopicRetentionConfigInput is an input type that accepts LiteTopicRetentionConfigArgs and LiteTopicRetentionConfigOutput values. You can construct a concrete instance of `LiteTopicRetentionConfigInput` via:
LiteTopicRetentionConfigArgs{...}
type LiteTopicRetentionConfigOutput ¶
type LiteTopicRetentionConfigOutput struct{ *pulumi.OutputState }
func (LiteTopicRetentionConfigOutput) ElementType ¶
func (LiteTopicRetentionConfigOutput) ElementType() reflect.Type
func (LiteTopicRetentionConfigOutput) PerPartitionBytes ¶
func (o LiteTopicRetentionConfigOutput) PerPartitionBytes() pulumi.StringOutput
The provisioned storage, in bytes, per partition. If the number of bytes stored in any of the topic's partitions grows beyond this value, older messages will be dropped to make room for newer ones, regardless of the value of period.
func (LiteTopicRetentionConfigOutput) Period ¶
func (o LiteTopicRetentionConfigOutput) Period() pulumi.StringPtrOutput
How long a published message is retained. If unset, messages will be retained as long as the bytes retained for each partition is below perPartitionBytes. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
func (LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigOutput ¶
func (o LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigOutput() LiteTopicRetentionConfigOutput
func (LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigOutputWithContext ¶
func (o LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigOutputWithContext(ctx context.Context) LiteTopicRetentionConfigOutput
func (LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigPtrOutput ¶
func (o LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigPtrOutput() LiteTopicRetentionConfigPtrOutput
func (LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigPtrOutputWithContext ¶
func (o LiteTopicRetentionConfigOutput) ToLiteTopicRetentionConfigPtrOutputWithContext(ctx context.Context) LiteTopicRetentionConfigPtrOutput
type LiteTopicRetentionConfigPtrInput ¶
type LiteTopicRetentionConfigPtrInput interface { pulumi.Input ToLiteTopicRetentionConfigPtrOutput() LiteTopicRetentionConfigPtrOutput ToLiteTopicRetentionConfigPtrOutputWithContext(context.Context) LiteTopicRetentionConfigPtrOutput }
LiteTopicRetentionConfigPtrInput is an input type that accepts LiteTopicRetentionConfigArgs, LiteTopicRetentionConfigPtr and LiteTopicRetentionConfigPtrOutput values. You can construct a concrete instance of `LiteTopicRetentionConfigPtrInput` via:
LiteTopicRetentionConfigArgs{...} or: nil
func LiteTopicRetentionConfigPtr ¶
func LiteTopicRetentionConfigPtr(v *LiteTopicRetentionConfigArgs) LiteTopicRetentionConfigPtrInput
type LiteTopicRetentionConfigPtrOutput ¶
type LiteTopicRetentionConfigPtrOutput struct{ *pulumi.OutputState }
func (LiteTopicRetentionConfigPtrOutput) Elem ¶
func (o LiteTopicRetentionConfigPtrOutput) Elem() LiteTopicRetentionConfigOutput
func (LiteTopicRetentionConfigPtrOutput) ElementType ¶
func (LiteTopicRetentionConfigPtrOutput) ElementType() reflect.Type
func (LiteTopicRetentionConfigPtrOutput) PerPartitionBytes ¶
func (o LiteTopicRetentionConfigPtrOutput) PerPartitionBytes() pulumi.StringPtrOutput
The provisioned storage, in bytes, per partition. If the number of bytes stored in any of the topic's partitions grows beyond this value, older messages will be dropped to make room for newer ones, regardless of the value of period.
func (LiteTopicRetentionConfigPtrOutput) Period ¶
func (o LiteTopicRetentionConfigPtrOutput) Period() pulumi.StringPtrOutput
How long a published message is retained. If unset, messages will be retained as long as the bytes retained for each partition is below perPartitionBytes. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
func (LiteTopicRetentionConfigPtrOutput) ToLiteTopicRetentionConfigPtrOutput ¶
func (o LiteTopicRetentionConfigPtrOutput) ToLiteTopicRetentionConfigPtrOutput() LiteTopicRetentionConfigPtrOutput
func (LiteTopicRetentionConfigPtrOutput) ToLiteTopicRetentionConfigPtrOutputWithContext ¶
func (o LiteTopicRetentionConfigPtrOutput) ToLiteTopicRetentionConfigPtrOutputWithContext(ctx context.Context) LiteTopicRetentionConfigPtrOutput
type LiteTopicState ¶
type LiteTopicState struct { // Name of the topic. Name pulumi.StringPtrInput // The settings for this topic's partitions. // Structure is documented below. PartitionConfig LiteTopicPartitionConfigPtrInput // The ID of the project in which the resource belongs. // If it is not provided, the provider project is used. Project pulumi.StringPtrInput // The region of the pubsub lite topic. Region pulumi.StringPtrInput // The settings for this topic's Reservation usage. // Structure is documented below. ReservationConfig LiteTopicReservationConfigPtrInput // The settings for a topic's message retention. // Structure is documented below. RetentionConfig LiteTopicRetentionConfigPtrInput // The zone of the pubsub lite topic. Zone pulumi.StringPtrInput }
func (LiteTopicState) ElementType ¶
func (LiteTopicState) ElementType() reflect.Type
type LookupTopicArgs ¶
type LookupTopicArgs struct { // The name of the Cloud Pub/Sub Topic. 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 getTopic.
type LookupTopicOutputArgs ¶
type LookupTopicOutputArgs struct { // The name of the Cloud Pub/Sub Topic. 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 getTopic.
func (LookupTopicOutputArgs) ElementType ¶
func (LookupTopicOutputArgs) ElementType() reflect.Type
type LookupTopicResult ¶
type LookupTopicResult struct { // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` KmsKeyName string `pulumi:"kmsKeyName"` Labels map[string]string `pulumi:"labels"` MessageRetentionDuration string `pulumi:"messageRetentionDuration"` MessageStoragePolicies []GetTopicMessageStoragePolicy `pulumi:"messageStoragePolicies"` Name string `pulumi:"name"` Project *string `pulumi:"project"` SchemaSettings []GetTopicSchemaSetting `pulumi:"schemaSettings"` }
A collection of values returned by getTopic.
func LookupTopic ¶
func LookupTopic(ctx *pulumi.Context, args *LookupTopicArgs, opts ...pulumi.InvokeOption) (*LookupTopicResult, error)
Get information about a Google Cloud Pub/Sub Topic. For more information see the [official documentation](https://cloud.google.com/pubsub/docs/) and [API](https://cloud.google.com/pubsub/docs/apis).
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err = pubsub.LookupTopic(ctx, &pubsub.LookupTopicArgs{ Name: "my-pubsub-topic", }, nil) if err != nil { return err } return nil }) }
```
type LookupTopicResultOutput ¶
type LookupTopicResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getTopic.
func LookupTopicOutput ¶
func LookupTopicOutput(ctx *pulumi.Context, args LookupTopicOutputArgs, opts ...pulumi.InvokeOption) LookupTopicResultOutput
func (LookupTopicResultOutput) ElementType ¶
func (LookupTopicResultOutput) ElementType() reflect.Type
func (LookupTopicResultOutput) Id ¶
func (o LookupTopicResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupTopicResultOutput) KmsKeyName ¶
func (o LookupTopicResultOutput) KmsKeyName() pulumi.StringOutput
func (LookupTopicResultOutput) Labels ¶
func (o LookupTopicResultOutput) Labels() pulumi.StringMapOutput
func (LookupTopicResultOutput) MessageRetentionDuration ¶ added in v6.2.0
func (o LookupTopicResultOutput) MessageRetentionDuration() pulumi.StringOutput
func (LookupTopicResultOutput) MessageStoragePolicies ¶
func (o LookupTopicResultOutput) MessageStoragePolicies() GetTopicMessageStoragePolicyArrayOutput
func (LookupTopicResultOutput) Name ¶
func (o LookupTopicResultOutput) Name() pulumi.StringOutput
func (LookupTopicResultOutput) Project ¶
func (o LookupTopicResultOutput) Project() pulumi.StringPtrOutput
func (LookupTopicResultOutput) SchemaSettings ¶
func (o LookupTopicResultOutput) SchemaSettings() GetTopicSchemaSettingArrayOutput
func (LookupTopicResultOutput) ToLookupTopicResultOutput ¶
func (o LookupTopicResultOutput) ToLookupTopicResultOutput() LookupTopicResultOutput
func (LookupTopicResultOutput) ToLookupTopicResultOutputWithContext ¶
func (o LookupTopicResultOutput) ToLookupTopicResultOutputWithContext(ctx context.Context) LookupTopicResultOutput
type Schema ¶
type Schema struct { pulumi.CustomResourceState // The definition of the schema. // This should contain a string representing the full definition of the schema // that is a valid schema definition of the type specified in type. Definition pulumi.StringPtrOutput `pulumi:"definition"` // The ID to use for the schema, which will become the final component of the schema's resource name. 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"` // The type of the schema definition // Default value is `TYPE_UNSPECIFIED`. // Possible values are `TYPE_UNSPECIFIED`, `PROTOCOL_BUFFER`, and `AVRO`. Type pulumi.StringPtrOutput `pulumi:"type"` }
A schema is a format that messages must follow, creating a contract between publisher and subscriber that Pub/Sub will enforce.
To get more information about Schema, see:
* [API documentation](https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.schemas) * How-to Guides
- [Creating and managing schemas](https://cloud.google.com/pubsub/docs/schemas)
## Example Usage ### Pubsub Schema Basic
```go package main
import (
"fmt" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewSchema(ctx, "example", &pubsub.SchemaArgs{ Definition: pulumi.String(fmt.Sprintf(`{ "type" : "record", "name" : "Avro", "fields" : [ { "name" : "StringField", "type" : "string" }, { "name" : "IntField", "type" : "int" } ] }
`)),
Type: pulumi.String("AVRO"), }) if err != nil { return err } return nil }) }
``` ### Pubsub Schema Protobuf
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleSchema, err := pubsub.NewSchema(ctx, "exampleSchema", &pubsub.SchemaArgs{ Type: pulumi.String("PROTOCOL_BUFFER"), Definition: pulumi.String("syntax = \"proto3\";\nmessage Results {\nstring message_request = 1;\nstring message_response = 2;\nstring timestamp_request = 3;\nstring timestamp_response = 4;\n}"), }) if err != nil { return err } _, err = pubsub.NewTopic(ctx, "exampleTopic", &pubsub.TopicArgs{ SchemaSettings: &pubsub.TopicSchemaSettingsArgs{ Schema: pulumi.String("projects/my-project-name/schemas/example"), Encoding: pulumi.String("JSON"), }, }, pulumi.DependsOn([]pulumi.Resource{ exampleSchema, })) if err != nil { return err } return nil }) }
```
## Import
Schema can be imported using any of these accepted formats ¶
```sh
$ pulumi import gcp:pubsub/schema:Schema default projects/{{project}}/schemas/{{name}}
```
```sh
$ pulumi import gcp:pubsub/schema:Schema default {{project}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/schema:Schema default {{name}}
```
func GetSchema ¶
func GetSchema(ctx *pulumi.Context, name string, id pulumi.IDInput, state *SchemaState, opts ...pulumi.ResourceOption) (*Schema, error)
GetSchema gets an existing Schema 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 NewSchema ¶
func NewSchema(ctx *pulumi.Context, name string, args *SchemaArgs, opts ...pulumi.ResourceOption) (*Schema, error)
NewSchema registers a new resource with the given unique name, arguments, and options.
func (*Schema) ElementType ¶
func (*Schema) ToSchemaOutput ¶
func (i *Schema) ToSchemaOutput() SchemaOutput
func (*Schema) ToSchemaOutputWithContext ¶
func (i *Schema) ToSchemaOutputWithContext(ctx context.Context) SchemaOutput
type SchemaArgs ¶
type SchemaArgs struct { // The definition of the schema. // This should contain a string representing the full definition of the schema // that is a valid schema definition of the type specified in type. Definition pulumi.StringPtrInput // The ID to use for the schema, which will become the final component of the schema's resource name. 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 type of the schema definition // Default value is `TYPE_UNSPECIFIED`. // Possible values are `TYPE_UNSPECIFIED`, `PROTOCOL_BUFFER`, and `AVRO`. Type pulumi.StringPtrInput }
The set of arguments for constructing a Schema resource.
func (SchemaArgs) ElementType ¶
func (SchemaArgs) ElementType() reflect.Type
type SchemaArray ¶
type SchemaArray []SchemaInput
func (SchemaArray) ElementType ¶
func (SchemaArray) ElementType() reflect.Type
func (SchemaArray) ToSchemaArrayOutput ¶
func (i SchemaArray) ToSchemaArrayOutput() SchemaArrayOutput
func (SchemaArray) ToSchemaArrayOutputWithContext ¶
func (i SchemaArray) ToSchemaArrayOutputWithContext(ctx context.Context) SchemaArrayOutput
type SchemaArrayInput ¶
type SchemaArrayInput interface { pulumi.Input ToSchemaArrayOutput() SchemaArrayOutput ToSchemaArrayOutputWithContext(context.Context) SchemaArrayOutput }
SchemaArrayInput is an input type that accepts SchemaArray and SchemaArrayOutput values. You can construct a concrete instance of `SchemaArrayInput` via:
SchemaArray{ SchemaArgs{...} }
type SchemaArrayOutput ¶
type SchemaArrayOutput struct{ *pulumi.OutputState }
func (SchemaArrayOutput) ElementType ¶
func (SchemaArrayOutput) ElementType() reflect.Type
func (SchemaArrayOutput) Index ¶
func (o SchemaArrayOutput) Index(i pulumi.IntInput) SchemaOutput
func (SchemaArrayOutput) ToSchemaArrayOutput ¶
func (o SchemaArrayOutput) ToSchemaArrayOutput() SchemaArrayOutput
func (SchemaArrayOutput) ToSchemaArrayOutputWithContext ¶
func (o SchemaArrayOutput) ToSchemaArrayOutputWithContext(ctx context.Context) SchemaArrayOutput
type SchemaInput ¶
type SchemaInput interface { pulumi.Input ToSchemaOutput() SchemaOutput ToSchemaOutputWithContext(ctx context.Context) SchemaOutput }
type SchemaMap ¶
type SchemaMap map[string]SchemaInput
func (SchemaMap) ElementType ¶
func (SchemaMap) ToSchemaMapOutput ¶
func (i SchemaMap) ToSchemaMapOutput() SchemaMapOutput
func (SchemaMap) ToSchemaMapOutputWithContext ¶
func (i SchemaMap) ToSchemaMapOutputWithContext(ctx context.Context) SchemaMapOutput
type SchemaMapInput ¶
type SchemaMapInput interface { pulumi.Input ToSchemaMapOutput() SchemaMapOutput ToSchemaMapOutputWithContext(context.Context) SchemaMapOutput }
SchemaMapInput is an input type that accepts SchemaMap and SchemaMapOutput values. You can construct a concrete instance of `SchemaMapInput` via:
SchemaMap{ "key": SchemaArgs{...} }
type SchemaMapOutput ¶
type SchemaMapOutput struct{ *pulumi.OutputState }
func (SchemaMapOutput) ElementType ¶
func (SchemaMapOutput) ElementType() reflect.Type
func (SchemaMapOutput) MapIndex ¶
func (o SchemaMapOutput) MapIndex(k pulumi.StringInput) SchemaOutput
func (SchemaMapOutput) ToSchemaMapOutput ¶
func (o SchemaMapOutput) ToSchemaMapOutput() SchemaMapOutput
func (SchemaMapOutput) ToSchemaMapOutputWithContext ¶
func (o SchemaMapOutput) ToSchemaMapOutputWithContext(ctx context.Context) SchemaMapOutput
type SchemaOutput ¶
type SchemaOutput struct{ *pulumi.OutputState }
func (SchemaOutput) Definition ¶ added in v6.23.0
func (o SchemaOutput) Definition() pulumi.StringPtrOutput
The definition of the schema. This should contain a string representing the full definition of the schema that is a valid schema definition of the type specified in type.
func (SchemaOutput) ElementType ¶
func (SchemaOutput) ElementType() reflect.Type
func (SchemaOutput) Name ¶ added in v6.23.0
func (o SchemaOutput) Name() pulumi.StringOutput
The ID to use for the schema, which will become the final component of the schema's resource name.
func (SchemaOutput) Project ¶ added in v6.23.0
func (o SchemaOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (SchemaOutput) ToSchemaOutput ¶
func (o SchemaOutput) ToSchemaOutput() SchemaOutput
func (SchemaOutput) ToSchemaOutputWithContext ¶
func (o SchemaOutput) ToSchemaOutputWithContext(ctx context.Context) SchemaOutput
func (SchemaOutput) Type ¶ added in v6.23.0
func (o SchemaOutput) Type() pulumi.StringPtrOutput
The type of the schema definition Default value is `TYPE_UNSPECIFIED`. Possible values are `TYPE_UNSPECIFIED`, `PROTOCOL_BUFFER`, and `AVRO`.
type SchemaState ¶
type SchemaState struct { // The definition of the schema. // This should contain a string representing the full definition of the schema // that is a valid schema definition of the type specified in type. Definition pulumi.StringPtrInput // The ID to use for the schema, which will become the final component of the schema's resource name. 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 type of the schema definition // Default value is `TYPE_UNSPECIFIED`. // Possible values are `TYPE_UNSPECIFIED`, `PROTOCOL_BUFFER`, and `AVRO`. Type pulumi.StringPtrInput }
func (SchemaState) ElementType ¶
func (SchemaState) ElementType() reflect.Type
type Subscription ¶
type Subscription struct { pulumi.CustomResourceState // This value is the maximum time after a subscriber receives a message // before the subscriber should acknowledge the message. After message // delivery but before the ack deadline expires and before the message is // acknowledged, it is an outstanding message and will not be delivered // again during that time (on a best-effort basis). // For pull subscriptions, this value is used as the initial value for // the ack deadline. To override this value for a given message, call // subscriptions.modifyAckDeadline with the corresponding ackId if using // pull. The minimum custom deadline you can specify is 10 seconds. The // maximum custom deadline you can specify is 600 seconds (10 minutes). // If this parameter is 0, a default value of 10 seconds is used. // For push delivery, this value is also used to set the request timeout // for the call to the push endpoint. // If the subscriber never acknowledges the message, the Pub/Sub system // will eventually redeliver the message. AckDeadlineSeconds pulumi.IntOutput `pulumi:"ackDeadlineSeconds"` // If delivery to BigQuery is used with this subscription, this field is used to configure it. // Either pushConfig or bigQueryConfig can be set, but not both. // If both are empty, then the subscriber will pull and ack messages using API methods. // Structure is documented below. BigqueryConfig SubscriptionBigqueryConfigPtrOutput `pulumi:"bigqueryConfig"` // A policy that specifies the conditions for dead lettering messages in // this subscription. If deadLetterPolicy is not set, dead lettering // is disabled. // The Cloud Pub/Sub service account associated with this subscription's // parent project (i.e., // service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have // permission to Acknowledge() messages on this subscription. // Structure is documented below. DeadLetterPolicy SubscriptionDeadLetterPolicyPtrOutput `pulumi:"deadLetterPolicy"` // If `true`, Pub/Sub provides the following guarantees for the delivery // of a message with a given value of messageId on this Subscriptions': // - The message sent to a subscriber is guaranteed not to be resent before the message's acknowledgement deadline expires. // - An acknowledged message will not be resent to a subscriber. // Note that subscribers may still receive multiple copies of a message when `enableExactlyOnceDelivery` // is true if the message was published multiple times by a publisher client. These copies are considered distinct by Pub/Sub and have distinct messageId values EnableExactlyOnceDelivery pulumi.BoolPtrOutput `pulumi:"enableExactlyOnceDelivery"` // If `true`, messages published with the same orderingKey in PubsubMessage will be delivered to // the subscribers in the order in which they are received by the Pub/Sub system. Otherwise, they // may be delivered in any order. EnableMessageOrdering pulumi.BoolPtrOutput `pulumi:"enableMessageOrdering"` // A policy that specifies the conditions for this subscription's expiration. // A subscription is considered active as long as any connected subscriber // is successfully consuming messages from the subscription or is issuing // operations on the subscription. If expirationPolicy is not set, a default // policy with ttl of 31 days will be used. If it is set but ttl is "", the // resource never expires. The minimum allowed value for expirationPolicy.ttl // is 1 day. // Structure is documented below. ExpirationPolicy SubscriptionExpirationPolicyOutput `pulumi:"expirationPolicy"` // The subscription only delivers the messages that match the filter. // Pub/Sub automatically acknowledges the messages that don't match the filter. You can filter messages // by their attributes. The maximum length of a filter is 256 bytes. After creating the subscription, // you can't modify the filter. Filter pulumi.StringPtrOutput `pulumi:"filter"` // A set of key/value label pairs to assign to this Subscription. Labels pulumi.StringMapOutput `pulumi:"labels"` // How long to retain unacknowledged messages in the subscription's // backlog, from the moment a message is published. If // retainAckedMessages is true, then this also configures the retention // of acknowledged messages, and thus configures how far back in time a // subscriptions.seek can be done. Defaults to 7 days. Cannot be more // than 7 days (`"604800s"`) or less than 10 minutes (`"600s"`). // A duration in seconds with up to nine fractional digits, terminated // by 's'. Example: `"600.5s"`. MessageRetentionDuration pulumi.StringPtrOutput `pulumi:"messageRetentionDuration"` // Name of the subscription. 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"` // If push delivery is used with this subscription, this field is used to // configure it. An empty pushConfig signifies that the subscriber will // pull and ack messages using API methods. // Structure is documented below. PushConfig SubscriptionPushConfigPtrOutput `pulumi:"pushConfig"` // Indicates whether to retain acknowledged messages. If `true`, then // messages are not expunged from the subscription's backlog, even if // they are acknowledged, until they fall out of the // messageRetentionDuration window. RetainAckedMessages pulumi.BoolPtrOutput `pulumi:"retainAckedMessages"` // A policy that specifies how Pub/Sub retries message delivery for this subscription. // If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers. // RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message // Structure is documented below. RetryPolicy SubscriptionRetryPolicyPtrOutput `pulumi:"retryPolicy"` // A reference to a Topic resource. Topic pulumi.StringOutput `pulumi:"topic"` }
A named resource representing the stream of messages from a single, specific topic, to be delivered to the subscribing application.
To get more information about Subscription, see:
* [API documentation](https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.subscriptions) * How-to Guides
- [Managing Subscriptions](https://cloud.google.com/pubsub/docs/admin#managing_subscriptions)
> **Note:** You can retrieve the email of the Google Managed Pub/Sub Service Account used for forwarding by using the `projects.ServiceIdentity` resource.
## Example Usage ### Pubsub Subscription Push
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleTopic, err := pubsub.NewTopic(ctx, "exampleTopic", nil) if err != nil { return err } _, err = pubsub.NewSubscription(ctx, "exampleSubscription", &pubsub.SubscriptionArgs{ Topic: exampleTopic.Name, AckDeadlineSeconds: pulumi.Int(20), Labels: pulumi.StringMap{ "foo": pulumi.String("bar"), }, PushConfig: &pubsub.SubscriptionPushConfigArgs{ PushEndpoint: pulumi.String("https://example.com/push"), Attributes: pulumi.StringMap{ "x-goog-version": pulumi.String("v1"), }, }, }) if err != nil { return err } return nil }) }
``` ### Pubsub Subscription Pull
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleTopic, err := pubsub.NewTopic(ctx, "exampleTopic", nil) if err != nil { return err } _, err = pubsub.NewSubscription(ctx, "exampleSubscription", &pubsub.SubscriptionArgs{ Topic: exampleTopic.Name, Labels: pulumi.StringMap{ "foo": pulumi.String("bar"), }, MessageRetentionDuration: pulumi.String("1200s"), RetainAckedMessages: pulumi.Bool(true), AckDeadlineSeconds: pulumi.Int(20), ExpirationPolicy: &pubsub.SubscriptionExpirationPolicyArgs{ Ttl: pulumi.String("300000.5s"), }, RetryPolicy: &pubsub.SubscriptionRetryPolicyArgs{ MinimumBackoff: pulumi.String("10s"), }, EnableMessageOrdering: pulumi.Bool(false), }) if err != nil { return err } return nil }) }
``` ### Pubsub Subscription Different Project
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleTopic, err := pubsub.NewTopic(ctx, "exampleTopic", &pubsub.TopicArgs{ Project: pulumi.String("topic-project"), }) if err != nil { return err } _, err = pubsub.NewSubscription(ctx, "exampleSubscription", &pubsub.SubscriptionArgs{ Project: pulumi.String("subscription-project"), Topic: exampleTopic.Name, }) if err != nil { return err } return nil }) }
``` ### Pubsub Subscription Dead Letter
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleTopic, err := pubsub.NewTopic(ctx, "exampleTopic", nil) if err != nil { return err } exampleDeadLetter, err := pubsub.NewTopic(ctx, "exampleDeadLetter", nil) if err != nil { return err } _, err = pubsub.NewSubscription(ctx, "exampleSubscription", &pubsub.SubscriptionArgs{ Topic: exampleTopic.Name, DeadLetterPolicy: &pubsub.SubscriptionDeadLetterPolicyArgs{ DeadLetterTopic: exampleDeadLetter.ID(), MaxDeliveryAttempts: pulumi.Int(10), }, }) if err != nil { return err } return nil }) }
``` ### Pubsub Subscription Push Bq
```go package main
import (
"fmt" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/bigquery" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleTopic, err := pubsub.NewTopic(ctx, "exampleTopic", nil) if err != nil { return err } project, err := organizations.LookupProject(ctx, nil, nil) if err != nil { return err } viewer, err := projects.NewIAMMember(ctx, "viewer", &projects.IAMMemberArgs{ Project: pulumi.String(project.ProjectId), Role: pulumi.String("roles/bigquery.metadataViewer"), Member: pulumi.String(fmt.Sprintf("serviceAccount:service-%v@gcp-sa-pubsub.iam.gserviceaccount.com", project.Number)), }) if err != nil { return err } editor, err := projects.NewIAMMember(ctx, "editor", &projects.IAMMemberArgs{ Project: pulumi.String(project.ProjectId), Role: pulumi.String("roles/bigquery.dataEditor"), Member: pulumi.String(fmt.Sprintf("serviceAccount:service-%v@gcp-sa-pubsub.iam.gserviceaccount.com", project.Number)), }) if err != nil { return err } testDataset, err := bigquery.NewDataset(ctx, "testDataset", &bigquery.DatasetArgs{ DatasetId: pulumi.String("example_dataset"), }) if err != nil { return err } testTable, err := bigquery.NewTable(ctx, "testTable", &bigquery.TableArgs{ DeletionProtection: pulumi.Bool(false), TableId: pulumi.String("example_table"), DatasetId: testDataset.DatasetId, Schema: pulumi.String(fmt.Sprintf(`[ { "name": "data", "type": "STRING", "mode": "NULLABLE", "description": "The data" }
] `)),
}) if err != nil { return err } _, err = pubsub.NewSubscription(ctx, "exampleSubscription", &pubsub.SubscriptionArgs{ Topic: exampleTopic.Name, BigqueryConfig: &pubsub.SubscriptionBigqueryConfigArgs{ Table: pulumi.All(testTable.Project, testTable.DatasetId, testTable.TableId).ApplyT(func(_args []interface{}) (string, error) { project := _args[0].(string) datasetId := _args[1].(string) tableId := _args[2].(string) return fmt.Sprintf("%v:%v.%v", project, datasetId, tableId), nil }).(pulumi.StringOutput), }, }, pulumi.DependsOn([]pulumi.Resource{ viewer, editor, })) if err != nil { return err } return nil }) }
```
## Import
Subscription can be imported using any of these accepted formats ¶
```sh
$ pulumi import gcp:pubsub/subscription:Subscription default projects/{{project}}/subscriptions/{{name}}
```
```sh
$ pulumi import gcp:pubsub/subscription:Subscription default {{project}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/subscription:Subscription default {{name}}
```
func GetSubscription ¶
func GetSubscription(ctx *pulumi.Context, name string, id pulumi.IDInput, state *SubscriptionState, opts ...pulumi.ResourceOption) (*Subscription, error)
GetSubscription gets an existing Subscription 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 NewSubscription ¶
func NewSubscription(ctx *pulumi.Context, name string, args *SubscriptionArgs, opts ...pulumi.ResourceOption) (*Subscription, error)
NewSubscription registers a new resource with the given unique name, arguments, and options.
func (*Subscription) ElementType ¶
func (*Subscription) ElementType() reflect.Type
func (*Subscription) ToSubscriptionOutput ¶
func (i *Subscription) ToSubscriptionOutput() SubscriptionOutput
func (*Subscription) ToSubscriptionOutputWithContext ¶
func (i *Subscription) ToSubscriptionOutputWithContext(ctx context.Context) SubscriptionOutput
type SubscriptionArgs ¶
type SubscriptionArgs struct { // This value is the maximum time after a subscriber receives a message // before the subscriber should acknowledge the message. After message // delivery but before the ack deadline expires and before the message is // acknowledged, it is an outstanding message and will not be delivered // again during that time (on a best-effort basis). // For pull subscriptions, this value is used as the initial value for // the ack deadline. To override this value for a given message, call // subscriptions.modifyAckDeadline with the corresponding ackId if using // pull. The minimum custom deadline you can specify is 10 seconds. The // maximum custom deadline you can specify is 600 seconds (10 minutes). // If this parameter is 0, a default value of 10 seconds is used. // For push delivery, this value is also used to set the request timeout // for the call to the push endpoint. // If the subscriber never acknowledges the message, the Pub/Sub system // will eventually redeliver the message. AckDeadlineSeconds pulumi.IntPtrInput // If delivery to BigQuery is used with this subscription, this field is used to configure it. // Either pushConfig or bigQueryConfig can be set, but not both. // If both are empty, then the subscriber will pull and ack messages using API methods. // Structure is documented below. BigqueryConfig SubscriptionBigqueryConfigPtrInput // A policy that specifies the conditions for dead lettering messages in // this subscription. If deadLetterPolicy is not set, dead lettering // is disabled. // The Cloud Pub/Sub service account associated with this subscription's // parent project (i.e., // service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have // permission to Acknowledge() messages on this subscription. // Structure is documented below. DeadLetterPolicy SubscriptionDeadLetterPolicyPtrInput // If `true`, Pub/Sub provides the following guarantees for the delivery // of a message with a given value of messageId on this Subscriptions': // - The message sent to a subscriber is guaranteed not to be resent before the message's acknowledgement deadline expires. // - An acknowledged message will not be resent to a subscriber. // Note that subscribers may still receive multiple copies of a message when `enableExactlyOnceDelivery` // is true if the message was published multiple times by a publisher client. These copies are considered distinct by Pub/Sub and have distinct messageId values EnableExactlyOnceDelivery pulumi.BoolPtrInput // If `true`, messages published with the same orderingKey in PubsubMessage will be delivered to // the subscribers in the order in which they are received by the Pub/Sub system. Otherwise, they // may be delivered in any order. EnableMessageOrdering pulumi.BoolPtrInput // A policy that specifies the conditions for this subscription's expiration. // A subscription is considered active as long as any connected subscriber // is successfully consuming messages from the subscription or is issuing // operations on the subscription. If expirationPolicy is not set, a default // policy with ttl of 31 days will be used. If it is set but ttl is "", the // resource never expires. The minimum allowed value for expirationPolicy.ttl // is 1 day. // Structure is documented below. ExpirationPolicy SubscriptionExpirationPolicyPtrInput // The subscription only delivers the messages that match the filter. // Pub/Sub automatically acknowledges the messages that don't match the filter. You can filter messages // by their attributes. The maximum length of a filter is 256 bytes. After creating the subscription, // you can't modify the filter. Filter pulumi.StringPtrInput // A set of key/value label pairs to assign to this Subscription. Labels pulumi.StringMapInput // How long to retain unacknowledged messages in the subscription's // backlog, from the moment a message is published. If // retainAckedMessages is true, then this also configures the retention // of acknowledged messages, and thus configures how far back in time a // subscriptions.seek can be done. Defaults to 7 days. Cannot be more // than 7 days (`"604800s"`) or less than 10 minutes (`"600s"`). // A duration in seconds with up to nine fractional digits, terminated // by 's'. Example: `"600.5s"`. MessageRetentionDuration pulumi.StringPtrInput // Name of the subscription. 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 // If push delivery is used with this subscription, this field is used to // configure it. An empty pushConfig signifies that the subscriber will // pull and ack messages using API methods. // Structure is documented below. PushConfig SubscriptionPushConfigPtrInput // Indicates whether to retain acknowledged messages. If `true`, then // messages are not expunged from the subscription's backlog, even if // they are acknowledged, until they fall out of the // messageRetentionDuration window. RetainAckedMessages pulumi.BoolPtrInput // A policy that specifies how Pub/Sub retries message delivery for this subscription. // If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers. // RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message // Structure is documented below. RetryPolicy SubscriptionRetryPolicyPtrInput // A reference to a Topic resource. Topic pulumi.StringInput }
The set of arguments for constructing a Subscription resource.
func (SubscriptionArgs) ElementType ¶
func (SubscriptionArgs) ElementType() reflect.Type
type SubscriptionArray ¶
type SubscriptionArray []SubscriptionInput
func (SubscriptionArray) ElementType ¶
func (SubscriptionArray) ElementType() reflect.Type
func (SubscriptionArray) ToSubscriptionArrayOutput ¶
func (i SubscriptionArray) ToSubscriptionArrayOutput() SubscriptionArrayOutput
func (SubscriptionArray) ToSubscriptionArrayOutputWithContext ¶
func (i SubscriptionArray) ToSubscriptionArrayOutputWithContext(ctx context.Context) SubscriptionArrayOutput
type SubscriptionArrayInput ¶
type SubscriptionArrayInput interface { pulumi.Input ToSubscriptionArrayOutput() SubscriptionArrayOutput ToSubscriptionArrayOutputWithContext(context.Context) SubscriptionArrayOutput }
SubscriptionArrayInput is an input type that accepts SubscriptionArray and SubscriptionArrayOutput values. You can construct a concrete instance of `SubscriptionArrayInput` via:
SubscriptionArray{ SubscriptionArgs{...} }
type SubscriptionArrayOutput ¶
type SubscriptionArrayOutput struct{ *pulumi.OutputState }
func (SubscriptionArrayOutput) ElementType ¶
func (SubscriptionArrayOutput) ElementType() reflect.Type
func (SubscriptionArrayOutput) Index ¶
func (o SubscriptionArrayOutput) Index(i pulumi.IntInput) SubscriptionOutput
func (SubscriptionArrayOutput) ToSubscriptionArrayOutput ¶
func (o SubscriptionArrayOutput) ToSubscriptionArrayOutput() SubscriptionArrayOutput
func (SubscriptionArrayOutput) ToSubscriptionArrayOutputWithContext ¶
func (o SubscriptionArrayOutput) ToSubscriptionArrayOutputWithContext(ctx context.Context) SubscriptionArrayOutput
type SubscriptionBigqueryConfig ¶ added in v6.34.0
type SubscriptionBigqueryConfig struct { // When true and useTopicSchema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. // Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog. DropUnknownFields *bool `pulumi:"dropUnknownFields"` // The name of the table to which to write data, of the form {projectId}:{datasetId}.{tableId} Table string `pulumi:"table"` // When true, use the topic's schema as the columns to write to in BigQuery, if it exists. UseTopicSchema *bool `pulumi:"useTopicSchema"` // When true, write the subscription name, messageId, publishTime, attributes, and orderingKey to additional columns in the table. // The subscription name, messageId, and publishTime fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column. WriteMetadata *bool `pulumi:"writeMetadata"` }
type SubscriptionBigqueryConfigArgs ¶ added in v6.34.0
type SubscriptionBigqueryConfigArgs struct { // When true and useTopicSchema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. // Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog. DropUnknownFields pulumi.BoolPtrInput `pulumi:"dropUnknownFields"` // The name of the table to which to write data, of the form {projectId}:{datasetId}.{tableId} Table pulumi.StringInput `pulumi:"table"` // When true, use the topic's schema as the columns to write to in BigQuery, if it exists. UseTopicSchema pulumi.BoolPtrInput `pulumi:"useTopicSchema"` // When true, write the subscription name, messageId, publishTime, attributes, and orderingKey to additional columns in the table. // The subscription name, messageId, and publishTime fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column. WriteMetadata pulumi.BoolPtrInput `pulumi:"writeMetadata"` }
func (SubscriptionBigqueryConfigArgs) ElementType ¶ added in v6.34.0
func (SubscriptionBigqueryConfigArgs) ElementType() reflect.Type
func (SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigOutput ¶ added in v6.34.0
func (i SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigOutput() SubscriptionBigqueryConfigOutput
func (SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigOutputWithContext ¶ added in v6.34.0
func (i SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigOutput
func (SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigPtrOutput ¶ added in v6.34.0
func (i SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigPtrOutput() SubscriptionBigqueryConfigPtrOutput
func (SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigPtrOutputWithContext ¶ added in v6.34.0
func (i SubscriptionBigqueryConfigArgs) ToSubscriptionBigqueryConfigPtrOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigPtrOutput
type SubscriptionBigqueryConfigInput ¶ added in v6.34.0
type SubscriptionBigqueryConfigInput interface { pulumi.Input ToSubscriptionBigqueryConfigOutput() SubscriptionBigqueryConfigOutput ToSubscriptionBigqueryConfigOutputWithContext(context.Context) SubscriptionBigqueryConfigOutput }
SubscriptionBigqueryConfigInput is an input type that accepts SubscriptionBigqueryConfigArgs and SubscriptionBigqueryConfigOutput values. You can construct a concrete instance of `SubscriptionBigqueryConfigInput` via:
SubscriptionBigqueryConfigArgs{...}
type SubscriptionBigqueryConfigOutput ¶ added in v6.34.0
type SubscriptionBigqueryConfigOutput struct{ *pulumi.OutputState }
func (SubscriptionBigqueryConfigOutput) DropUnknownFields ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigOutput) DropUnknownFields() pulumi.BoolPtrOutput
When true and useTopicSchema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog.
func (SubscriptionBigqueryConfigOutput) ElementType ¶ added in v6.34.0
func (SubscriptionBigqueryConfigOutput) ElementType() reflect.Type
func (SubscriptionBigqueryConfigOutput) Table ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigOutput) Table() pulumi.StringOutput
The name of the table to which to write data, of the form {projectId}:{datasetId}.{tableId}
func (SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigOutput ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigOutput() SubscriptionBigqueryConfigOutput
func (SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigOutputWithContext ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigOutput
func (SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigPtrOutput ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigPtrOutput() SubscriptionBigqueryConfigPtrOutput
func (SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigPtrOutputWithContext ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigOutput) ToSubscriptionBigqueryConfigPtrOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigPtrOutput
func (SubscriptionBigqueryConfigOutput) UseTopicSchema ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigOutput) UseTopicSchema() pulumi.BoolPtrOutput
When true, use the topic's schema as the columns to write to in BigQuery, if it exists.
func (SubscriptionBigqueryConfigOutput) WriteMetadata ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigOutput) WriteMetadata() pulumi.BoolPtrOutput
When true, write the subscription name, messageId, publishTime, attributes, and orderingKey to additional columns in the table. The subscription name, messageId, and publishTime fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.
type SubscriptionBigqueryConfigPtrInput ¶ added in v6.34.0
type SubscriptionBigqueryConfigPtrInput interface { pulumi.Input ToSubscriptionBigqueryConfigPtrOutput() SubscriptionBigqueryConfigPtrOutput ToSubscriptionBigqueryConfigPtrOutputWithContext(context.Context) SubscriptionBigqueryConfigPtrOutput }
SubscriptionBigqueryConfigPtrInput is an input type that accepts SubscriptionBigqueryConfigArgs, SubscriptionBigqueryConfigPtr and SubscriptionBigqueryConfigPtrOutput values. You can construct a concrete instance of `SubscriptionBigqueryConfigPtrInput` via:
SubscriptionBigqueryConfigArgs{...} or: nil
func SubscriptionBigqueryConfigPtr ¶ added in v6.34.0
func SubscriptionBigqueryConfigPtr(v *SubscriptionBigqueryConfigArgs) SubscriptionBigqueryConfigPtrInput
type SubscriptionBigqueryConfigPtrOutput ¶ added in v6.34.0
type SubscriptionBigqueryConfigPtrOutput struct{ *pulumi.OutputState }
func (SubscriptionBigqueryConfigPtrOutput) DropUnknownFields ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigPtrOutput) DropUnknownFields() pulumi.BoolPtrOutput
When true and useTopicSchema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog.
func (SubscriptionBigqueryConfigPtrOutput) Elem ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigPtrOutput) Elem() SubscriptionBigqueryConfigOutput
func (SubscriptionBigqueryConfigPtrOutput) ElementType ¶ added in v6.34.0
func (SubscriptionBigqueryConfigPtrOutput) ElementType() reflect.Type
func (SubscriptionBigqueryConfigPtrOutput) Table ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigPtrOutput) Table() pulumi.StringPtrOutput
The name of the table to which to write data, of the form {projectId}:{datasetId}.{tableId}
func (SubscriptionBigqueryConfigPtrOutput) ToSubscriptionBigqueryConfigPtrOutput ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigPtrOutput) ToSubscriptionBigqueryConfigPtrOutput() SubscriptionBigqueryConfigPtrOutput
func (SubscriptionBigqueryConfigPtrOutput) ToSubscriptionBigqueryConfigPtrOutputWithContext ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigPtrOutput) ToSubscriptionBigqueryConfigPtrOutputWithContext(ctx context.Context) SubscriptionBigqueryConfigPtrOutput
func (SubscriptionBigqueryConfigPtrOutput) UseTopicSchema ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigPtrOutput) UseTopicSchema() pulumi.BoolPtrOutput
When true, use the topic's schema as the columns to write to in BigQuery, if it exists.
func (SubscriptionBigqueryConfigPtrOutput) WriteMetadata ¶ added in v6.34.0
func (o SubscriptionBigqueryConfigPtrOutput) WriteMetadata() pulumi.BoolPtrOutput
When true, write the subscription name, messageId, publishTime, attributes, and orderingKey to additional columns in the table. The subscription name, messageId, and publishTime fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.
type SubscriptionDeadLetterPolicy ¶
type SubscriptionDeadLetterPolicy struct { // The name of the topic to which dead letter messages should be published. // Format is `projects/{project}/topics/{topic}`. // The Cloud Pub/Sub service account associated with the enclosing subscription's // parent project (i.e., // service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have // permission to Publish() to this topic. // The operation will fail if the topic does not exist. // Users should ensure that there is a subscription attached to this topic // since messages published to a topic with no subscriptions are lost. DeadLetterTopic *string `pulumi:"deadLetterTopic"` // The maximum number of delivery attempts for any message. The value must be // between 5 and 100. // The number of delivery attempts is defined as 1 + (the sum of number of // NACKs and number of times the acknowledgement deadline has been exceeded for the message). // A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that // client libraries may automatically extend ack_deadlines. // This field will be honored on a best effort basis. // If this parameter is 0, a default value of 5 is used. MaxDeliveryAttempts *int `pulumi:"maxDeliveryAttempts"` }
type SubscriptionDeadLetterPolicyArgs ¶
type SubscriptionDeadLetterPolicyArgs struct { // The name of the topic to which dead letter messages should be published. // Format is `projects/{project}/topics/{topic}`. // The Cloud Pub/Sub service account associated with the enclosing subscription's // parent project (i.e., // service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have // permission to Publish() to this topic. // The operation will fail if the topic does not exist. // Users should ensure that there is a subscription attached to this topic // since messages published to a topic with no subscriptions are lost. DeadLetterTopic pulumi.StringPtrInput `pulumi:"deadLetterTopic"` // The maximum number of delivery attempts for any message. The value must be // between 5 and 100. // The number of delivery attempts is defined as 1 + (the sum of number of // NACKs and number of times the acknowledgement deadline has been exceeded for the message). // A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that // client libraries may automatically extend ack_deadlines. // This field will be honored on a best effort basis. // If this parameter is 0, a default value of 5 is used. MaxDeliveryAttempts pulumi.IntPtrInput `pulumi:"maxDeliveryAttempts"` }
func (SubscriptionDeadLetterPolicyArgs) ElementType ¶
func (SubscriptionDeadLetterPolicyArgs) ElementType() reflect.Type
func (SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyOutput ¶
func (i SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyOutput() SubscriptionDeadLetterPolicyOutput
func (SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyOutputWithContext ¶
func (i SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyOutput
func (SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyPtrOutput ¶
func (i SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyPtrOutput() SubscriptionDeadLetterPolicyPtrOutput
func (SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyPtrOutputWithContext ¶
func (i SubscriptionDeadLetterPolicyArgs) ToSubscriptionDeadLetterPolicyPtrOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyPtrOutput
type SubscriptionDeadLetterPolicyInput ¶
type SubscriptionDeadLetterPolicyInput interface { pulumi.Input ToSubscriptionDeadLetterPolicyOutput() SubscriptionDeadLetterPolicyOutput ToSubscriptionDeadLetterPolicyOutputWithContext(context.Context) SubscriptionDeadLetterPolicyOutput }
SubscriptionDeadLetterPolicyInput is an input type that accepts SubscriptionDeadLetterPolicyArgs and SubscriptionDeadLetterPolicyOutput values. You can construct a concrete instance of `SubscriptionDeadLetterPolicyInput` via:
SubscriptionDeadLetterPolicyArgs{...}
type SubscriptionDeadLetterPolicyOutput ¶
type SubscriptionDeadLetterPolicyOutput struct{ *pulumi.OutputState }
func (SubscriptionDeadLetterPolicyOutput) DeadLetterTopic ¶
func (o SubscriptionDeadLetterPolicyOutput) DeadLetterTopic() pulumi.StringPtrOutput
The name of the topic to which dead letter messages should be published. Format is `projects/{project}/topics/{topic}`. The Cloud Pub/Sub service account associated with the enclosing subscription's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Publish() to this topic. The operation will fail if the topic does not exist. Users should ensure that there is a subscription attached to this topic since messages published to a topic with no subscriptions are lost.
func (SubscriptionDeadLetterPolicyOutput) ElementType ¶
func (SubscriptionDeadLetterPolicyOutput) ElementType() reflect.Type
func (SubscriptionDeadLetterPolicyOutput) MaxDeliveryAttempts ¶
func (o SubscriptionDeadLetterPolicyOutput) MaxDeliveryAttempts() pulumi.IntPtrOutput
The maximum number of delivery attempts for any message. The value must be between 5 and 100. The number of delivery attempts is defined as 1 + (the sum of number of NACKs and number of times the acknowledgement deadline has been exceeded for the message). A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that client libraries may automatically extend ack_deadlines. This field will be honored on a best effort basis. If this parameter is 0, a default value of 5 is used.
func (SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyOutput ¶
func (o SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyOutput() SubscriptionDeadLetterPolicyOutput
func (SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyOutputWithContext ¶
func (o SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyOutput
func (SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyPtrOutput ¶
func (o SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyPtrOutput() SubscriptionDeadLetterPolicyPtrOutput
func (SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyPtrOutputWithContext ¶
func (o SubscriptionDeadLetterPolicyOutput) ToSubscriptionDeadLetterPolicyPtrOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyPtrOutput
type SubscriptionDeadLetterPolicyPtrInput ¶
type SubscriptionDeadLetterPolicyPtrInput interface { pulumi.Input ToSubscriptionDeadLetterPolicyPtrOutput() SubscriptionDeadLetterPolicyPtrOutput ToSubscriptionDeadLetterPolicyPtrOutputWithContext(context.Context) SubscriptionDeadLetterPolicyPtrOutput }
SubscriptionDeadLetterPolicyPtrInput is an input type that accepts SubscriptionDeadLetterPolicyArgs, SubscriptionDeadLetterPolicyPtr and SubscriptionDeadLetterPolicyPtrOutput values. You can construct a concrete instance of `SubscriptionDeadLetterPolicyPtrInput` via:
SubscriptionDeadLetterPolicyArgs{...} or: nil
func SubscriptionDeadLetterPolicyPtr ¶
func SubscriptionDeadLetterPolicyPtr(v *SubscriptionDeadLetterPolicyArgs) SubscriptionDeadLetterPolicyPtrInput
type SubscriptionDeadLetterPolicyPtrOutput ¶
type SubscriptionDeadLetterPolicyPtrOutput struct{ *pulumi.OutputState }
func (SubscriptionDeadLetterPolicyPtrOutput) DeadLetterTopic ¶
func (o SubscriptionDeadLetterPolicyPtrOutput) DeadLetterTopic() pulumi.StringPtrOutput
The name of the topic to which dead letter messages should be published. Format is `projects/{project}/topics/{topic}`. The Cloud Pub/Sub service account associated with the enclosing subscription's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Publish() to this topic. The operation will fail if the topic does not exist. Users should ensure that there is a subscription attached to this topic since messages published to a topic with no subscriptions are lost.
func (SubscriptionDeadLetterPolicyPtrOutput) ElementType ¶
func (SubscriptionDeadLetterPolicyPtrOutput) ElementType() reflect.Type
func (SubscriptionDeadLetterPolicyPtrOutput) MaxDeliveryAttempts ¶
func (o SubscriptionDeadLetterPolicyPtrOutput) MaxDeliveryAttempts() pulumi.IntPtrOutput
The maximum number of delivery attempts for any message. The value must be between 5 and 100. The number of delivery attempts is defined as 1 + (the sum of number of NACKs and number of times the acknowledgement deadline has been exceeded for the message). A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that client libraries may automatically extend ack_deadlines. This field will be honored on a best effort basis. If this parameter is 0, a default value of 5 is used.
func (SubscriptionDeadLetterPolicyPtrOutput) ToSubscriptionDeadLetterPolicyPtrOutput ¶
func (o SubscriptionDeadLetterPolicyPtrOutput) ToSubscriptionDeadLetterPolicyPtrOutput() SubscriptionDeadLetterPolicyPtrOutput
func (SubscriptionDeadLetterPolicyPtrOutput) ToSubscriptionDeadLetterPolicyPtrOutputWithContext ¶
func (o SubscriptionDeadLetterPolicyPtrOutput) ToSubscriptionDeadLetterPolicyPtrOutputWithContext(ctx context.Context) SubscriptionDeadLetterPolicyPtrOutput
type SubscriptionExpirationPolicy ¶
type SubscriptionExpirationPolicy struct { // Specifies the "time-to-live" duration for an associated resource. The // resource expires if it is not active for a period of ttl. // If ttl is not set, the associated resource never expires. // A duration in seconds with up to nine fractional digits, terminated by 's'. // Example - "3.5s". Ttl string `pulumi:"ttl"` }
type SubscriptionExpirationPolicyArgs ¶
type SubscriptionExpirationPolicyArgs struct { // Specifies the "time-to-live" duration for an associated resource. The // resource expires if it is not active for a period of ttl. // If ttl is not set, the associated resource never expires. // A duration in seconds with up to nine fractional digits, terminated by 's'. // Example - "3.5s". Ttl pulumi.StringInput `pulumi:"ttl"` }
func (SubscriptionExpirationPolicyArgs) ElementType ¶
func (SubscriptionExpirationPolicyArgs) ElementType() reflect.Type
func (SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyOutput ¶
func (i SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyOutput() SubscriptionExpirationPolicyOutput
func (SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyOutputWithContext ¶
func (i SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyOutput
func (SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyPtrOutput ¶
func (i SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyPtrOutput() SubscriptionExpirationPolicyPtrOutput
func (SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyPtrOutputWithContext ¶
func (i SubscriptionExpirationPolicyArgs) ToSubscriptionExpirationPolicyPtrOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyPtrOutput
type SubscriptionExpirationPolicyInput ¶
type SubscriptionExpirationPolicyInput interface { pulumi.Input ToSubscriptionExpirationPolicyOutput() SubscriptionExpirationPolicyOutput ToSubscriptionExpirationPolicyOutputWithContext(context.Context) SubscriptionExpirationPolicyOutput }
SubscriptionExpirationPolicyInput is an input type that accepts SubscriptionExpirationPolicyArgs and SubscriptionExpirationPolicyOutput values. You can construct a concrete instance of `SubscriptionExpirationPolicyInput` via:
SubscriptionExpirationPolicyArgs{...}
type SubscriptionExpirationPolicyOutput ¶
type SubscriptionExpirationPolicyOutput struct{ *pulumi.OutputState }
func (SubscriptionExpirationPolicyOutput) ElementType ¶
func (SubscriptionExpirationPolicyOutput) ElementType() reflect.Type
func (SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyOutput ¶
func (o SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyOutput() SubscriptionExpirationPolicyOutput
func (SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyOutputWithContext ¶
func (o SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyOutput
func (SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyPtrOutput ¶
func (o SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyPtrOutput() SubscriptionExpirationPolicyPtrOutput
func (SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyPtrOutputWithContext ¶
func (o SubscriptionExpirationPolicyOutput) ToSubscriptionExpirationPolicyPtrOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyPtrOutput
func (SubscriptionExpirationPolicyOutput) Ttl ¶
func (o SubscriptionExpirationPolicyOutput) Ttl() pulumi.StringOutput
Specifies the "time-to-live" duration for an associated resource. The resource expires if it is not active for a period of ttl. If ttl is not set, the associated resource never expires. A duration in seconds with up to nine fractional digits, terminated by 's'. Example - "3.5s".
type SubscriptionExpirationPolicyPtrInput ¶
type SubscriptionExpirationPolicyPtrInput interface { pulumi.Input ToSubscriptionExpirationPolicyPtrOutput() SubscriptionExpirationPolicyPtrOutput ToSubscriptionExpirationPolicyPtrOutputWithContext(context.Context) SubscriptionExpirationPolicyPtrOutput }
SubscriptionExpirationPolicyPtrInput is an input type that accepts SubscriptionExpirationPolicyArgs, SubscriptionExpirationPolicyPtr and SubscriptionExpirationPolicyPtrOutput values. You can construct a concrete instance of `SubscriptionExpirationPolicyPtrInput` via:
SubscriptionExpirationPolicyArgs{...} or: nil
func SubscriptionExpirationPolicyPtr ¶
func SubscriptionExpirationPolicyPtr(v *SubscriptionExpirationPolicyArgs) SubscriptionExpirationPolicyPtrInput
type SubscriptionExpirationPolicyPtrOutput ¶
type SubscriptionExpirationPolicyPtrOutput struct{ *pulumi.OutputState }
func (SubscriptionExpirationPolicyPtrOutput) ElementType ¶
func (SubscriptionExpirationPolicyPtrOutput) ElementType() reflect.Type
func (SubscriptionExpirationPolicyPtrOutput) ToSubscriptionExpirationPolicyPtrOutput ¶
func (o SubscriptionExpirationPolicyPtrOutput) ToSubscriptionExpirationPolicyPtrOutput() SubscriptionExpirationPolicyPtrOutput
func (SubscriptionExpirationPolicyPtrOutput) ToSubscriptionExpirationPolicyPtrOutputWithContext ¶
func (o SubscriptionExpirationPolicyPtrOutput) ToSubscriptionExpirationPolicyPtrOutputWithContext(ctx context.Context) SubscriptionExpirationPolicyPtrOutput
func (SubscriptionExpirationPolicyPtrOutput) Ttl ¶
func (o SubscriptionExpirationPolicyPtrOutput) Ttl() pulumi.StringPtrOutput
Specifies the "time-to-live" duration for an associated resource. The resource expires if it is not active for a period of ttl. If ttl is not set, the associated resource never expires. A duration in seconds with up to nine fractional digits, terminated by 's'. Example - "3.5s".
type SubscriptionIAMBinding ¶
type SubscriptionIAMBinding struct { pulumi.CustomResourceState Condition SubscriptionIAMBindingConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the subscription's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` Members pulumi.StringArrayOutput `pulumi:"members"` // 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 // `pubsub.SubscriptionIAMBinding` 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"` // The subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringOutput `pulumi:"subscription"` }
Three different resources help you manage your IAM policy for pubsub subscription. Each of these resources serves a different use case:
* `pubsub.SubscriptionIAMPolicy`: Authoritative. Sets the IAM policy for the subscription and replaces any existing policy already attached. * `pubsub.SubscriptionIAMBinding`: 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 subscription are preserved. * `pubsub.SubscriptionIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the subscription are preserved.
> **Note:** `pubsub.SubscriptionIAMPolicy` **cannot** be used in conjunction with `pubsub.SubscriptionIAMBinding` and `pubsub.SubscriptionIAMMember` or they will fight over what your policy should be.
> **Note:** `pubsub.SubscriptionIAMBinding` resources **can be** used in conjunction with `pubsub.SubscriptionIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_pubsub\_subscription\_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/pubsub" "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 = pubsub.NewSubscriptionIAMPolicy(ctx, "editor", &pubsub.SubscriptionIAMPolicyArgs{ Subscription: pulumi.String("your-subscription-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_subscription\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewSubscriptionIAMBinding(ctx, "editor", &pubsub.SubscriptionIAMBindingArgs{ Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/editor"), Subscription: pulumi.String("your-subscription-name"), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_subscription\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewSubscriptionIAMMember(ctx, "editor", &pubsub.SubscriptionIAMMemberArgs{ Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/editor"), Subscription: pulumi.String("your-subscription-name"), }) if err != nil { return err } return nil }) }
```
## Import
Pubsub subscription IAM resources can be imported using the project, subscription name, role and member.
```sh
$ pulumi import gcp:pubsub/subscriptionIAMBinding:SubscriptionIAMBinding editor projects/{your-project-id}/subscriptions/{your-subscription-name}
```
```sh
$ pulumi import gcp:pubsub/subscriptionIAMBinding:SubscriptionIAMBinding editor "projects/{your-project-id}/subscriptions/{your-subscription-name} roles/editor"
```
```sh
$ pulumi import gcp:pubsub/subscriptionIAMBinding:SubscriptionIAMBinding editor "projects/{your-project-id}/subscriptions/{your-subscription-name} roles/editor jane@example.com"
```
-> **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 GetSubscriptionIAMBinding ¶
func GetSubscriptionIAMBinding(ctx *pulumi.Context, name string, id pulumi.IDInput, state *SubscriptionIAMBindingState, opts ...pulumi.ResourceOption) (*SubscriptionIAMBinding, error)
GetSubscriptionIAMBinding gets an existing SubscriptionIAMBinding 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 NewSubscriptionIAMBinding ¶
func NewSubscriptionIAMBinding(ctx *pulumi.Context, name string, args *SubscriptionIAMBindingArgs, opts ...pulumi.ResourceOption) (*SubscriptionIAMBinding, error)
NewSubscriptionIAMBinding registers a new resource with the given unique name, arguments, and options.
func (*SubscriptionIAMBinding) ElementType ¶
func (*SubscriptionIAMBinding) ElementType() reflect.Type
func (*SubscriptionIAMBinding) ToSubscriptionIAMBindingOutput ¶
func (i *SubscriptionIAMBinding) ToSubscriptionIAMBindingOutput() SubscriptionIAMBindingOutput
func (*SubscriptionIAMBinding) ToSubscriptionIAMBindingOutputWithContext ¶
func (i *SubscriptionIAMBinding) ToSubscriptionIAMBindingOutputWithContext(ctx context.Context) SubscriptionIAMBindingOutput
type SubscriptionIAMBindingArgs ¶
type SubscriptionIAMBindingArgs struct { Condition SubscriptionIAMBindingConditionPtrInput Members pulumi.StringArrayInput // 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 // `pubsub.SubscriptionIAMBinding` 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 subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringInput }
The set of arguments for constructing a SubscriptionIAMBinding resource.
func (SubscriptionIAMBindingArgs) ElementType ¶
func (SubscriptionIAMBindingArgs) ElementType() reflect.Type
type SubscriptionIAMBindingArray ¶
type SubscriptionIAMBindingArray []SubscriptionIAMBindingInput
func (SubscriptionIAMBindingArray) ElementType ¶
func (SubscriptionIAMBindingArray) ElementType() reflect.Type
func (SubscriptionIAMBindingArray) ToSubscriptionIAMBindingArrayOutput ¶
func (i SubscriptionIAMBindingArray) ToSubscriptionIAMBindingArrayOutput() SubscriptionIAMBindingArrayOutput
func (SubscriptionIAMBindingArray) ToSubscriptionIAMBindingArrayOutputWithContext ¶
func (i SubscriptionIAMBindingArray) ToSubscriptionIAMBindingArrayOutputWithContext(ctx context.Context) SubscriptionIAMBindingArrayOutput
type SubscriptionIAMBindingArrayInput ¶
type SubscriptionIAMBindingArrayInput interface { pulumi.Input ToSubscriptionIAMBindingArrayOutput() SubscriptionIAMBindingArrayOutput ToSubscriptionIAMBindingArrayOutputWithContext(context.Context) SubscriptionIAMBindingArrayOutput }
SubscriptionIAMBindingArrayInput is an input type that accepts SubscriptionIAMBindingArray and SubscriptionIAMBindingArrayOutput values. You can construct a concrete instance of `SubscriptionIAMBindingArrayInput` via:
SubscriptionIAMBindingArray{ SubscriptionIAMBindingArgs{...} }
type SubscriptionIAMBindingArrayOutput ¶
type SubscriptionIAMBindingArrayOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMBindingArrayOutput) ElementType ¶
func (SubscriptionIAMBindingArrayOutput) ElementType() reflect.Type
func (SubscriptionIAMBindingArrayOutput) Index ¶
func (o SubscriptionIAMBindingArrayOutput) Index(i pulumi.IntInput) SubscriptionIAMBindingOutput
func (SubscriptionIAMBindingArrayOutput) ToSubscriptionIAMBindingArrayOutput ¶
func (o SubscriptionIAMBindingArrayOutput) ToSubscriptionIAMBindingArrayOutput() SubscriptionIAMBindingArrayOutput
func (SubscriptionIAMBindingArrayOutput) ToSubscriptionIAMBindingArrayOutputWithContext ¶
func (o SubscriptionIAMBindingArrayOutput) ToSubscriptionIAMBindingArrayOutputWithContext(ctx context.Context) SubscriptionIAMBindingArrayOutput
type SubscriptionIAMBindingConditionArgs ¶
type SubscriptionIAMBindingConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (SubscriptionIAMBindingConditionArgs) ElementType ¶
func (SubscriptionIAMBindingConditionArgs) ElementType() reflect.Type
func (SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionOutput ¶
func (i SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionOutput() SubscriptionIAMBindingConditionOutput
func (SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionOutputWithContext ¶
func (i SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionOutput
func (SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionPtrOutput ¶
func (i SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionPtrOutput() SubscriptionIAMBindingConditionPtrOutput
func (SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionPtrOutputWithContext ¶
func (i SubscriptionIAMBindingConditionArgs) ToSubscriptionIAMBindingConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionPtrOutput
type SubscriptionIAMBindingConditionInput ¶
type SubscriptionIAMBindingConditionInput interface { pulumi.Input ToSubscriptionIAMBindingConditionOutput() SubscriptionIAMBindingConditionOutput ToSubscriptionIAMBindingConditionOutputWithContext(context.Context) SubscriptionIAMBindingConditionOutput }
SubscriptionIAMBindingConditionInput is an input type that accepts SubscriptionIAMBindingConditionArgs and SubscriptionIAMBindingConditionOutput values. You can construct a concrete instance of `SubscriptionIAMBindingConditionInput` via:
SubscriptionIAMBindingConditionArgs{...}
type SubscriptionIAMBindingConditionOutput ¶
type SubscriptionIAMBindingConditionOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMBindingConditionOutput) Description ¶
func (o SubscriptionIAMBindingConditionOutput) Description() pulumi.StringPtrOutput
func (SubscriptionIAMBindingConditionOutput) ElementType ¶
func (SubscriptionIAMBindingConditionOutput) ElementType() reflect.Type
func (SubscriptionIAMBindingConditionOutput) Expression ¶
func (o SubscriptionIAMBindingConditionOutput) Expression() pulumi.StringOutput
func (SubscriptionIAMBindingConditionOutput) Title ¶
func (o SubscriptionIAMBindingConditionOutput) Title() pulumi.StringOutput
func (SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionOutput ¶
func (o SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionOutput() SubscriptionIAMBindingConditionOutput
func (SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionOutputWithContext ¶
func (o SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionOutput
func (SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionPtrOutput ¶
func (o SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionPtrOutput() SubscriptionIAMBindingConditionPtrOutput
func (SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionPtrOutputWithContext ¶
func (o SubscriptionIAMBindingConditionOutput) ToSubscriptionIAMBindingConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionPtrOutput
type SubscriptionIAMBindingConditionPtrInput ¶
type SubscriptionIAMBindingConditionPtrInput interface { pulumi.Input ToSubscriptionIAMBindingConditionPtrOutput() SubscriptionIAMBindingConditionPtrOutput ToSubscriptionIAMBindingConditionPtrOutputWithContext(context.Context) SubscriptionIAMBindingConditionPtrOutput }
SubscriptionIAMBindingConditionPtrInput is an input type that accepts SubscriptionIAMBindingConditionArgs, SubscriptionIAMBindingConditionPtr and SubscriptionIAMBindingConditionPtrOutput values. You can construct a concrete instance of `SubscriptionIAMBindingConditionPtrInput` via:
SubscriptionIAMBindingConditionArgs{...} or: nil
func SubscriptionIAMBindingConditionPtr ¶
func SubscriptionIAMBindingConditionPtr(v *SubscriptionIAMBindingConditionArgs) SubscriptionIAMBindingConditionPtrInput
type SubscriptionIAMBindingConditionPtrOutput ¶
type SubscriptionIAMBindingConditionPtrOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMBindingConditionPtrOutput) Description ¶
func (o SubscriptionIAMBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
func (SubscriptionIAMBindingConditionPtrOutput) ElementType ¶
func (SubscriptionIAMBindingConditionPtrOutput) ElementType() reflect.Type
func (SubscriptionIAMBindingConditionPtrOutput) Expression ¶
func (o SubscriptionIAMBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (SubscriptionIAMBindingConditionPtrOutput) Title ¶
func (o SubscriptionIAMBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
func (SubscriptionIAMBindingConditionPtrOutput) ToSubscriptionIAMBindingConditionPtrOutput ¶
func (o SubscriptionIAMBindingConditionPtrOutput) ToSubscriptionIAMBindingConditionPtrOutput() SubscriptionIAMBindingConditionPtrOutput
func (SubscriptionIAMBindingConditionPtrOutput) ToSubscriptionIAMBindingConditionPtrOutputWithContext ¶
func (o SubscriptionIAMBindingConditionPtrOutput) ToSubscriptionIAMBindingConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMBindingConditionPtrOutput
type SubscriptionIAMBindingInput ¶
type SubscriptionIAMBindingInput interface { pulumi.Input ToSubscriptionIAMBindingOutput() SubscriptionIAMBindingOutput ToSubscriptionIAMBindingOutputWithContext(ctx context.Context) SubscriptionIAMBindingOutput }
type SubscriptionIAMBindingMap ¶
type SubscriptionIAMBindingMap map[string]SubscriptionIAMBindingInput
func (SubscriptionIAMBindingMap) ElementType ¶
func (SubscriptionIAMBindingMap) ElementType() reflect.Type
func (SubscriptionIAMBindingMap) ToSubscriptionIAMBindingMapOutput ¶
func (i SubscriptionIAMBindingMap) ToSubscriptionIAMBindingMapOutput() SubscriptionIAMBindingMapOutput
func (SubscriptionIAMBindingMap) ToSubscriptionIAMBindingMapOutputWithContext ¶
func (i SubscriptionIAMBindingMap) ToSubscriptionIAMBindingMapOutputWithContext(ctx context.Context) SubscriptionIAMBindingMapOutput
type SubscriptionIAMBindingMapInput ¶
type SubscriptionIAMBindingMapInput interface { pulumi.Input ToSubscriptionIAMBindingMapOutput() SubscriptionIAMBindingMapOutput ToSubscriptionIAMBindingMapOutputWithContext(context.Context) SubscriptionIAMBindingMapOutput }
SubscriptionIAMBindingMapInput is an input type that accepts SubscriptionIAMBindingMap and SubscriptionIAMBindingMapOutput values. You can construct a concrete instance of `SubscriptionIAMBindingMapInput` via:
SubscriptionIAMBindingMap{ "key": SubscriptionIAMBindingArgs{...} }
type SubscriptionIAMBindingMapOutput ¶
type SubscriptionIAMBindingMapOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMBindingMapOutput) ElementType ¶
func (SubscriptionIAMBindingMapOutput) ElementType() reflect.Type
func (SubscriptionIAMBindingMapOutput) MapIndex ¶
func (o SubscriptionIAMBindingMapOutput) MapIndex(k pulumi.StringInput) SubscriptionIAMBindingOutput
func (SubscriptionIAMBindingMapOutput) ToSubscriptionIAMBindingMapOutput ¶
func (o SubscriptionIAMBindingMapOutput) ToSubscriptionIAMBindingMapOutput() SubscriptionIAMBindingMapOutput
func (SubscriptionIAMBindingMapOutput) ToSubscriptionIAMBindingMapOutputWithContext ¶
func (o SubscriptionIAMBindingMapOutput) ToSubscriptionIAMBindingMapOutputWithContext(ctx context.Context) SubscriptionIAMBindingMapOutput
type SubscriptionIAMBindingOutput ¶
type SubscriptionIAMBindingOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMBindingOutput) Condition ¶ added in v6.23.0
func (o SubscriptionIAMBindingOutput) Condition() SubscriptionIAMBindingConditionPtrOutput
func (SubscriptionIAMBindingOutput) ElementType ¶
func (SubscriptionIAMBindingOutput) ElementType() reflect.Type
func (SubscriptionIAMBindingOutput) Etag ¶ added in v6.23.0
func (o SubscriptionIAMBindingOutput) Etag() pulumi.StringOutput
(Computed) The etag of the subscription's IAM policy.
func (SubscriptionIAMBindingOutput) Members ¶ added in v6.23.0
func (o SubscriptionIAMBindingOutput) Members() pulumi.StringArrayOutput
func (SubscriptionIAMBindingOutput) Project ¶ added in v6.23.0
func (o SubscriptionIAMBindingOutput) Project() pulumi.StringOutput
The project in which the resource belongs. If it is not provided, the provider project is used.
func (SubscriptionIAMBindingOutput) Role ¶ added in v6.23.0
func (o SubscriptionIAMBindingOutput) Role() pulumi.StringOutput
The role that should be applied. Only one `pubsub.SubscriptionIAMBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.
func (SubscriptionIAMBindingOutput) Subscription ¶ added in v6.23.0
func (o SubscriptionIAMBindingOutput) Subscription() pulumi.StringOutput
The subscription name or id to bind to attach IAM policy to.
func (SubscriptionIAMBindingOutput) ToSubscriptionIAMBindingOutput ¶
func (o SubscriptionIAMBindingOutput) ToSubscriptionIAMBindingOutput() SubscriptionIAMBindingOutput
func (SubscriptionIAMBindingOutput) ToSubscriptionIAMBindingOutputWithContext ¶
func (o SubscriptionIAMBindingOutput) ToSubscriptionIAMBindingOutputWithContext(ctx context.Context) SubscriptionIAMBindingOutput
type SubscriptionIAMBindingState ¶
type SubscriptionIAMBindingState struct { Condition SubscriptionIAMBindingConditionPtrInput // (Computed) The etag of the subscription's IAM policy. Etag pulumi.StringPtrInput Members pulumi.StringArrayInput // 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 // `pubsub.SubscriptionIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringPtrInput // The subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringPtrInput }
func (SubscriptionIAMBindingState) ElementType ¶
func (SubscriptionIAMBindingState) ElementType() reflect.Type
type SubscriptionIAMMember ¶
type SubscriptionIAMMember struct { pulumi.CustomResourceState Condition SubscriptionIAMMemberConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the subscription's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` Member pulumi.StringOutput `pulumi:"member"` // 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 // `pubsub.SubscriptionIAMBinding` 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"` // The subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringOutput `pulumi:"subscription"` }
Three different resources help you manage your IAM policy for pubsub subscription. Each of these resources serves a different use case:
* `pubsub.SubscriptionIAMPolicy`: Authoritative. Sets the IAM policy for the subscription and replaces any existing policy already attached. * `pubsub.SubscriptionIAMBinding`: 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 subscription are preserved. * `pubsub.SubscriptionIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the subscription are preserved.
> **Note:** `pubsub.SubscriptionIAMPolicy` **cannot** be used in conjunction with `pubsub.SubscriptionIAMBinding` and `pubsub.SubscriptionIAMMember` or they will fight over what your policy should be.
> **Note:** `pubsub.SubscriptionIAMBinding` resources **can be** used in conjunction with `pubsub.SubscriptionIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_pubsub\_subscription\_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/pubsub" "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 = pubsub.NewSubscriptionIAMPolicy(ctx, "editor", &pubsub.SubscriptionIAMPolicyArgs{ Subscription: pulumi.String("your-subscription-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_subscription\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewSubscriptionIAMBinding(ctx, "editor", &pubsub.SubscriptionIAMBindingArgs{ Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/editor"), Subscription: pulumi.String("your-subscription-name"), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_subscription\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewSubscriptionIAMMember(ctx, "editor", &pubsub.SubscriptionIAMMemberArgs{ Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/editor"), Subscription: pulumi.String("your-subscription-name"), }) if err != nil { return err } return nil }) }
```
## Import
Pubsub subscription IAM resources can be imported using the project, subscription name, role and member.
```sh
$ pulumi import gcp:pubsub/subscriptionIAMMember:SubscriptionIAMMember editor projects/{your-project-id}/subscriptions/{your-subscription-name}
```
```sh
$ pulumi import gcp:pubsub/subscriptionIAMMember:SubscriptionIAMMember editor "projects/{your-project-id}/subscriptions/{your-subscription-name} roles/editor"
```
```sh
$ pulumi import gcp:pubsub/subscriptionIAMMember:SubscriptionIAMMember editor "projects/{your-project-id}/subscriptions/{your-subscription-name} roles/editor jane@example.com"
```
-> **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 GetSubscriptionIAMMember ¶
func GetSubscriptionIAMMember(ctx *pulumi.Context, name string, id pulumi.IDInput, state *SubscriptionIAMMemberState, opts ...pulumi.ResourceOption) (*SubscriptionIAMMember, error)
GetSubscriptionIAMMember gets an existing SubscriptionIAMMember 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 NewSubscriptionIAMMember ¶
func NewSubscriptionIAMMember(ctx *pulumi.Context, name string, args *SubscriptionIAMMemberArgs, opts ...pulumi.ResourceOption) (*SubscriptionIAMMember, error)
NewSubscriptionIAMMember registers a new resource with the given unique name, arguments, and options.
func (*SubscriptionIAMMember) ElementType ¶
func (*SubscriptionIAMMember) ElementType() reflect.Type
func (*SubscriptionIAMMember) ToSubscriptionIAMMemberOutput ¶
func (i *SubscriptionIAMMember) ToSubscriptionIAMMemberOutput() SubscriptionIAMMemberOutput
func (*SubscriptionIAMMember) ToSubscriptionIAMMemberOutputWithContext ¶
func (i *SubscriptionIAMMember) ToSubscriptionIAMMemberOutputWithContext(ctx context.Context) SubscriptionIAMMemberOutput
type SubscriptionIAMMemberArgs ¶
type SubscriptionIAMMemberArgs struct { Condition SubscriptionIAMMemberConditionPtrInput Member pulumi.StringInput // 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 // `pubsub.SubscriptionIAMBinding` 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 subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringInput }
The set of arguments for constructing a SubscriptionIAMMember resource.
func (SubscriptionIAMMemberArgs) ElementType ¶
func (SubscriptionIAMMemberArgs) ElementType() reflect.Type
type SubscriptionIAMMemberArray ¶
type SubscriptionIAMMemberArray []SubscriptionIAMMemberInput
func (SubscriptionIAMMemberArray) ElementType ¶
func (SubscriptionIAMMemberArray) ElementType() reflect.Type
func (SubscriptionIAMMemberArray) ToSubscriptionIAMMemberArrayOutput ¶
func (i SubscriptionIAMMemberArray) ToSubscriptionIAMMemberArrayOutput() SubscriptionIAMMemberArrayOutput
func (SubscriptionIAMMemberArray) ToSubscriptionIAMMemberArrayOutputWithContext ¶
func (i SubscriptionIAMMemberArray) ToSubscriptionIAMMemberArrayOutputWithContext(ctx context.Context) SubscriptionIAMMemberArrayOutput
type SubscriptionIAMMemberArrayInput ¶
type SubscriptionIAMMemberArrayInput interface { pulumi.Input ToSubscriptionIAMMemberArrayOutput() SubscriptionIAMMemberArrayOutput ToSubscriptionIAMMemberArrayOutputWithContext(context.Context) SubscriptionIAMMemberArrayOutput }
SubscriptionIAMMemberArrayInput is an input type that accepts SubscriptionIAMMemberArray and SubscriptionIAMMemberArrayOutput values. You can construct a concrete instance of `SubscriptionIAMMemberArrayInput` via:
SubscriptionIAMMemberArray{ SubscriptionIAMMemberArgs{...} }
type SubscriptionIAMMemberArrayOutput ¶
type SubscriptionIAMMemberArrayOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMMemberArrayOutput) ElementType ¶
func (SubscriptionIAMMemberArrayOutput) ElementType() reflect.Type
func (SubscriptionIAMMemberArrayOutput) Index ¶
func (o SubscriptionIAMMemberArrayOutput) Index(i pulumi.IntInput) SubscriptionIAMMemberOutput
func (SubscriptionIAMMemberArrayOutput) ToSubscriptionIAMMemberArrayOutput ¶
func (o SubscriptionIAMMemberArrayOutput) ToSubscriptionIAMMemberArrayOutput() SubscriptionIAMMemberArrayOutput
func (SubscriptionIAMMemberArrayOutput) ToSubscriptionIAMMemberArrayOutputWithContext ¶
func (o SubscriptionIAMMemberArrayOutput) ToSubscriptionIAMMemberArrayOutputWithContext(ctx context.Context) SubscriptionIAMMemberArrayOutput
type SubscriptionIAMMemberConditionArgs ¶
type SubscriptionIAMMemberConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (SubscriptionIAMMemberConditionArgs) ElementType ¶
func (SubscriptionIAMMemberConditionArgs) ElementType() reflect.Type
func (SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionOutput ¶
func (i SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionOutput() SubscriptionIAMMemberConditionOutput
func (SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionOutputWithContext ¶
func (i SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionOutput
func (SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionPtrOutput ¶
func (i SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionPtrOutput() SubscriptionIAMMemberConditionPtrOutput
func (SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionPtrOutputWithContext ¶
func (i SubscriptionIAMMemberConditionArgs) ToSubscriptionIAMMemberConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionPtrOutput
type SubscriptionIAMMemberConditionInput ¶
type SubscriptionIAMMemberConditionInput interface { pulumi.Input ToSubscriptionIAMMemberConditionOutput() SubscriptionIAMMemberConditionOutput ToSubscriptionIAMMemberConditionOutputWithContext(context.Context) SubscriptionIAMMemberConditionOutput }
SubscriptionIAMMemberConditionInput is an input type that accepts SubscriptionIAMMemberConditionArgs and SubscriptionIAMMemberConditionOutput values. You can construct a concrete instance of `SubscriptionIAMMemberConditionInput` via:
SubscriptionIAMMemberConditionArgs{...}
type SubscriptionIAMMemberConditionOutput ¶
type SubscriptionIAMMemberConditionOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMMemberConditionOutput) Description ¶
func (o SubscriptionIAMMemberConditionOutput) Description() pulumi.StringPtrOutput
func (SubscriptionIAMMemberConditionOutput) ElementType ¶
func (SubscriptionIAMMemberConditionOutput) ElementType() reflect.Type
func (SubscriptionIAMMemberConditionOutput) Expression ¶
func (o SubscriptionIAMMemberConditionOutput) Expression() pulumi.StringOutput
func (SubscriptionIAMMemberConditionOutput) Title ¶
func (o SubscriptionIAMMemberConditionOutput) Title() pulumi.StringOutput
func (SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionOutput ¶
func (o SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionOutput() SubscriptionIAMMemberConditionOutput
func (SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionOutputWithContext ¶
func (o SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionOutput
func (SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionPtrOutput ¶
func (o SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionPtrOutput() SubscriptionIAMMemberConditionPtrOutput
func (SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionPtrOutputWithContext ¶
func (o SubscriptionIAMMemberConditionOutput) ToSubscriptionIAMMemberConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionPtrOutput
type SubscriptionIAMMemberConditionPtrInput ¶
type SubscriptionIAMMemberConditionPtrInput interface { pulumi.Input ToSubscriptionIAMMemberConditionPtrOutput() SubscriptionIAMMemberConditionPtrOutput ToSubscriptionIAMMemberConditionPtrOutputWithContext(context.Context) SubscriptionIAMMemberConditionPtrOutput }
SubscriptionIAMMemberConditionPtrInput is an input type that accepts SubscriptionIAMMemberConditionArgs, SubscriptionIAMMemberConditionPtr and SubscriptionIAMMemberConditionPtrOutput values. You can construct a concrete instance of `SubscriptionIAMMemberConditionPtrInput` via:
SubscriptionIAMMemberConditionArgs{...} or: nil
func SubscriptionIAMMemberConditionPtr ¶
func SubscriptionIAMMemberConditionPtr(v *SubscriptionIAMMemberConditionArgs) SubscriptionIAMMemberConditionPtrInput
type SubscriptionIAMMemberConditionPtrOutput ¶
type SubscriptionIAMMemberConditionPtrOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMMemberConditionPtrOutput) Description ¶
func (o SubscriptionIAMMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
func (SubscriptionIAMMemberConditionPtrOutput) ElementType ¶
func (SubscriptionIAMMemberConditionPtrOutput) ElementType() reflect.Type
func (SubscriptionIAMMemberConditionPtrOutput) Expression ¶
func (o SubscriptionIAMMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (SubscriptionIAMMemberConditionPtrOutput) Title ¶
func (o SubscriptionIAMMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
func (SubscriptionIAMMemberConditionPtrOutput) ToSubscriptionIAMMemberConditionPtrOutput ¶
func (o SubscriptionIAMMemberConditionPtrOutput) ToSubscriptionIAMMemberConditionPtrOutput() SubscriptionIAMMemberConditionPtrOutput
func (SubscriptionIAMMemberConditionPtrOutput) ToSubscriptionIAMMemberConditionPtrOutputWithContext ¶
func (o SubscriptionIAMMemberConditionPtrOutput) ToSubscriptionIAMMemberConditionPtrOutputWithContext(ctx context.Context) SubscriptionIAMMemberConditionPtrOutput
type SubscriptionIAMMemberInput ¶
type SubscriptionIAMMemberInput interface { pulumi.Input ToSubscriptionIAMMemberOutput() SubscriptionIAMMemberOutput ToSubscriptionIAMMemberOutputWithContext(ctx context.Context) SubscriptionIAMMemberOutput }
type SubscriptionIAMMemberMap ¶
type SubscriptionIAMMemberMap map[string]SubscriptionIAMMemberInput
func (SubscriptionIAMMemberMap) ElementType ¶
func (SubscriptionIAMMemberMap) ElementType() reflect.Type
func (SubscriptionIAMMemberMap) ToSubscriptionIAMMemberMapOutput ¶
func (i SubscriptionIAMMemberMap) ToSubscriptionIAMMemberMapOutput() SubscriptionIAMMemberMapOutput
func (SubscriptionIAMMemberMap) ToSubscriptionIAMMemberMapOutputWithContext ¶
func (i SubscriptionIAMMemberMap) ToSubscriptionIAMMemberMapOutputWithContext(ctx context.Context) SubscriptionIAMMemberMapOutput
type SubscriptionIAMMemberMapInput ¶
type SubscriptionIAMMemberMapInput interface { pulumi.Input ToSubscriptionIAMMemberMapOutput() SubscriptionIAMMemberMapOutput ToSubscriptionIAMMemberMapOutputWithContext(context.Context) SubscriptionIAMMemberMapOutput }
SubscriptionIAMMemberMapInput is an input type that accepts SubscriptionIAMMemberMap and SubscriptionIAMMemberMapOutput values. You can construct a concrete instance of `SubscriptionIAMMemberMapInput` via:
SubscriptionIAMMemberMap{ "key": SubscriptionIAMMemberArgs{...} }
type SubscriptionIAMMemberMapOutput ¶
type SubscriptionIAMMemberMapOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMMemberMapOutput) ElementType ¶
func (SubscriptionIAMMemberMapOutput) ElementType() reflect.Type
func (SubscriptionIAMMemberMapOutput) MapIndex ¶
func (o SubscriptionIAMMemberMapOutput) MapIndex(k pulumi.StringInput) SubscriptionIAMMemberOutput
func (SubscriptionIAMMemberMapOutput) ToSubscriptionIAMMemberMapOutput ¶
func (o SubscriptionIAMMemberMapOutput) ToSubscriptionIAMMemberMapOutput() SubscriptionIAMMemberMapOutput
func (SubscriptionIAMMemberMapOutput) ToSubscriptionIAMMemberMapOutputWithContext ¶
func (o SubscriptionIAMMemberMapOutput) ToSubscriptionIAMMemberMapOutputWithContext(ctx context.Context) SubscriptionIAMMemberMapOutput
type SubscriptionIAMMemberOutput ¶
type SubscriptionIAMMemberOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMMemberOutput) Condition ¶ added in v6.23.0
func (o SubscriptionIAMMemberOutput) Condition() SubscriptionIAMMemberConditionPtrOutput
func (SubscriptionIAMMemberOutput) ElementType ¶
func (SubscriptionIAMMemberOutput) ElementType() reflect.Type
func (SubscriptionIAMMemberOutput) Etag ¶ added in v6.23.0
func (o SubscriptionIAMMemberOutput) Etag() pulumi.StringOutput
(Computed) The etag of the subscription's IAM policy.
func (SubscriptionIAMMemberOutput) Member ¶ added in v6.23.0
func (o SubscriptionIAMMemberOutput) Member() pulumi.StringOutput
func (SubscriptionIAMMemberOutput) Project ¶ added in v6.23.0
func (o SubscriptionIAMMemberOutput) Project() pulumi.StringOutput
The project in which the resource belongs. If it is not provided, the provider project is used.
func (SubscriptionIAMMemberOutput) Role ¶ added in v6.23.0
func (o SubscriptionIAMMemberOutput) Role() pulumi.StringOutput
The role that should be applied. Only one `pubsub.SubscriptionIAMBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.
func (SubscriptionIAMMemberOutput) Subscription ¶ added in v6.23.0
func (o SubscriptionIAMMemberOutput) Subscription() pulumi.StringOutput
The subscription name or id to bind to attach IAM policy to.
func (SubscriptionIAMMemberOutput) ToSubscriptionIAMMemberOutput ¶
func (o SubscriptionIAMMemberOutput) ToSubscriptionIAMMemberOutput() SubscriptionIAMMemberOutput
func (SubscriptionIAMMemberOutput) ToSubscriptionIAMMemberOutputWithContext ¶
func (o SubscriptionIAMMemberOutput) ToSubscriptionIAMMemberOutputWithContext(ctx context.Context) SubscriptionIAMMemberOutput
type SubscriptionIAMMemberState ¶
type SubscriptionIAMMemberState struct { Condition SubscriptionIAMMemberConditionPtrInput // (Computed) The etag of the subscription's IAM policy. Etag pulumi.StringPtrInput Member pulumi.StringPtrInput // 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 // `pubsub.SubscriptionIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringPtrInput // The subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringPtrInput }
func (SubscriptionIAMMemberState) ElementType ¶
func (SubscriptionIAMMemberState) ElementType() reflect.Type
type SubscriptionIAMPolicy ¶
type SubscriptionIAMPolicy struct { pulumi.CustomResourceState // (Computed) The etag of the subscription's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringOutput `pulumi:"policyData"` // The project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // The subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringOutput `pulumi:"subscription"` }
Three different resources help you manage your IAM policy for pubsub subscription. Each of these resources serves a different use case:
* `pubsub.SubscriptionIAMPolicy`: Authoritative. Sets the IAM policy for the subscription and replaces any existing policy already attached. * `pubsub.SubscriptionIAMBinding`: 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 subscription are preserved. * `pubsub.SubscriptionIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the subscription are preserved.
> **Note:** `pubsub.SubscriptionIAMPolicy` **cannot** be used in conjunction with `pubsub.SubscriptionIAMBinding` and `pubsub.SubscriptionIAMMember` or they will fight over what your policy should be.
> **Note:** `pubsub.SubscriptionIAMBinding` resources **can be** used in conjunction with `pubsub.SubscriptionIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_pubsub\_subscription\_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/pubsub" "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 = pubsub.NewSubscriptionIAMPolicy(ctx, "editor", &pubsub.SubscriptionIAMPolicyArgs{ Subscription: pulumi.String("your-subscription-name"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_subscription\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewSubscriptionIAMBinding(ctx, "editor", &pubsub.SubscriptionIAMBindingArgs{ Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, Role: pulumi.String("roles/editor"), Subscription: pulumi.String("your-subscription-name"), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_subscription\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewSubscriptionIAMMember(ctx, "editor", &pubsub.SubscriptionIAMMemberArgs{ Member: pulumi.String("user:jane@example.com"), Role: pulumi.String("roles/editor"), Subscription: pulumi.String("your-subscription-name"), }) if err != nil { return err } return nil }) }
```
## Import
Pubsub subscription IAM resources can be imported using the project, subscription name, role and member.
```sh
$ pulumi import gcp:pubsub/subscriptionIAMPolicy:SubscriptionIAMPolicy editor projects/{your-project-id}/subscriptions/{your-subscription-name}
```
```sh
$ pulumi import gcp:pubsub/subscriptionIAMPolicy:SubscriptionIAMPolicy editor "projects/{your-project-id}/subscriptions/{your-subscription-name} roles/editor"
```
```sh
$ pulumi import gcp:pubsub/subscriptionIAMPolicy:SubscriptionIAMPolicy editor "projects/{your-project-id}/subscriptions/{your-subscription-name} roles/editor jane@example.com"
```
-> **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 GetSubscriptionIAMPolicy ¶
func GetSubscriptionIAMPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *SubscriptionIAMPolicyState, opts ...pulumi.ResourceOption) (*SubscriptionIAMPolicy, error)
GetSubscriptionIAMPolicy gets an existing SubscriptionIAMPolicy 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 NewSubscriptionIAMPolicy ¶
func NewSubscriptionIAMPolicy(ctx *pulumi.Context, name string, args *SubscriptionIAMPolicyArgs, opts ...pulumi.ResourceOption) (*SubscriptionIAMPolicy, error)
NewSubscriptionIAMPolicy registers a new resource with the given unique name, arguments, and options.
func (*SubscriptionIAMPolicy) ElementType ¶
func (*SubscriptionIAMPolicy) ElementType() reflect.Type
func (*SubscriptionIAMPolicy) ToSubscriptionIAMPolicyOutput ¶
func (i *SubscriptionIAMPolicy) ToSubscriptionIAMPolicyOutput() SubscriptionIAMPolicyOutput
func (*SubscriptionIAMPolicy) ToSubscriptionIAMPolicyOutputWithContext ¶
func (i *SubscriptionIAMPolicy) ToSubscriptionIAMPolicyOutputWithContext(ctx context.Context) SubscriptionIAMPolicyOutput
type SubscriptionIAMPolicyArgs ¶
type SubscriptionIAMPolicyArgs struct { // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringInput // The project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringInput }
The set of arguments for constructing a SubscriptionIAMPolicy resource.
func (SubscriptionIAMPolicyArgs) ElementType ¶
func (SubscriptionIAMPolicyArgs) ElementType() reflect.Type
type SubscriptionIAMPolicyArray ¶
type SubscriptionIAMPolicyArray []SubscriptionIAMPolicyInput
func (SubscriptionIAMPolicyArray) ElementType ¶
func (SubscriptionIAMPolicyArray) ElementType() reflect.Type
func (SubscriptionIAMPolicyArray) ToSubscriptionIAMPolicyArrayOutput ¶
func (i SubscriptionIAMPolicyArray) ToSubscriptionIAMPolicyArrayOutput() SubscriptionIAMPolicyArrayOutput
func (SubscriptionIAMPolicyArray) ToSubscriptionIAMPolicyArrayOutputWithContext ¶
func (i SubscriptionIAMPolicyArray) ToSubscriptionIAMPolicyArrayOutputWithContext(ctx context.Context) SubscriptionIAMPolicyArrayOutput
type SubscriptionIAMPolicyArrayInput ¶
type SubscriptionIAMPolicyArrayInput interface { pulumi.Input ToSubscriptionIAMPolicyArrayOutput() SubscriptionIAMPolicyArrayOutput ToSubscriptionIAMPolicyArrayOutputWithContext(context.Context) SubscriptionIAMPolicyArrayOutput }
SubscriptionIAMPolicyArrayInput is an input type that accepts SubscriptionIAMPolicyArray and SubscriptionIAMPolicyArrayOutput values. You can construct a concrete instance of `SubscriptionIAMPolicyArrayInput` via:
SubscriptionIAMPolicyArray{ SubscriptionIAMPolicyArgs{...} }
type SubscriptionIAMPolicyArrayOutput ¶
type SubscriptionIAMPolicyArrayOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMPolicyArrayOutput) ElementType ¶
func (SubscriptionIAMPolicyArrayOutput) ElementType() reflect.Type
func (SubscriptionIAMPolicyArrayOutput) Index ¶
func (o SubscriptionIAMPolicyArrayOutput) Index(i pulumi.IntInput) SubscriptionIAMPolicyOutput
func (SubscriptionIAMPolicyArrayOutput) ToSubscriptionIAMPolicyArrayOutput ¶
func (o SubscriptionIAMPolicyArrayOutput) ToSubscriptionIAMPolicyArrayOutput() SubscriptionIAMPolicyArrayOutput
func (SubscriptionIAMPolicyArrayOutput) ToSubscriptionIAMPolicyArrayOutputWithContext ¶
func (o SubscriptionIAMPolicyArrayOutput) ToSubscriptionIAMPolicyArrayOutputWithContext(ctx context.Context) SubscriptionIAMPolicyArrayOutput
type SubscriptionIAMPolicyInput ¶
type SubscriptionIAMPolicyInput interface { pulumi.Input ToSubscriptionIAMPolicyOutput() SubscriptionIAMPolicyOutput ToSubscriptionIAMPolicyOutputWithContext(ctx context.Context) SubscriptionIAMPolicyOutput }
type SubscriptionIAMPolicyMap ¶
type SubscriptionIAMPolicyMap map[string]SubscriptionIAMPolicyInput
func (SubscriptionIAMPolicyMap) ElementType ¶
func (SubscriptionIAMPolicyMap) ElementType() reflect.Type
func (SubscriptionIAMPolicyMap) ToSubscriptionIAMPolicyMapOutput ¶
func (i SubscriptionIAMPolicyMap) ToSubscriptionIAMPolicyMapOutput() SubscriptionIAMPolicyMapOutput
func (SubscriptionIAMPolicyMap) ToSubscriptionIAMPolicyMapOutputWithContext ¶
func (i SubscriptionIAMPolicyMap) ToSubscriptionIAMPolicyMapOutputWithContext(ctx context.Context) SubscriptionIAMPolicyMapOutput
type SubscriptionIAMPolicyMapInput ¶
type SubscriptionIAMPolicyMapInput interface { pulumi.Input ToSubscriptionIAMPolicyMapOutput() SubscriptionIAMPolicyMapOutput ToSubscriptionIAMPolicyMapOutputWithContext(context.Context) SubscriptionIAMPolicyMapOutput }
SubscriptionIAMPolicyMapInput is an input type that accepts SubscriptionIAMPolicyMap and SubscriptionIAMPolicyMapOutput values. You can construct a concrete instance of `SubscriptionIAMPolicyMapInput` via:
SubscriptionIAMPolicyMap{ "key": SubscriptionIAMPolicyArgs{...} }
type SubscriptionIAMPolicyMapOutput ¶
type SubscriptionIAMPolicyMapOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMPolicyMapOutput) ElementType ¶
func (SubscriptionIAMPolicyMapOutput) ElementType() reflect.Type
func (SubscriptionIAMPolicyMapOutput) MapIndex ¶
func (o SubscriptionIAMPolicyMapOutput) MapIndex(k pulumi.StringInput) SubscriptionIAMPolicyOutput
func (SubscriptionIAMPolicyMapOutput) ToSubscriptionIAMPolicyMapOutput ¶
func (o SubscriptionIAMPolicyMapOutput) ToSubscriptionIAMPolicyMapOutput() SubscriptionIAMPolicyMapOutput
func (SubscriptionIAMPolicyMapOutput) ToSubscriptionIAMPolicyMapOutputWithContext ¶
func (o SubscriptionIAMPolicyMapOutput) ToSubscriptionIAMPolicyMapOutputWithContext(ctx context.Context) SubscriptionIAMPolicyMapOutput
type SubscriptionIAMPolicyOutput ¶
type SubscriptionIAMPolicyOutput struct{ *pulumi.OutputState }
func (SubscriptionIAMPolicyOutput) ElementType ¶
func (SubscriptionIAMPolicyOutput) ElementType() reflect.Type
func (SubscriptionIAMPolicyOutput) Etag ¶ added in v6.23.0
func (o SubscriptionIAMPolicyOutput) Etag() pulumi.StringOutput
(Computed) The etag of the subscription's IAM policy.
func (SubscriptionIAMPolicyOutput) PolicyData ¶ added in v6.23.0
func (o SubscriptionIAMPolicyOutput) PolicyData() pulumi.StringOutput
The policy data generated by a `organizations.getIAMPolicy` data source.
func (SubscriptionIAMPolicyOutput) Project ¶ added in v6.23.0
func (o SubscriptionIAMPolicyOutput) Project() pulumi.StringOutput
The project in which the resource belongs. If it is not provided, the provider project is used.
func (SubscriptionIAMPolicyOutput) Subscription ¶ added in v6.23.0
func (o SubscriptionIAMPolicyOutput) Subscription() pulumi.StringOutput
The subscription name or id to bind to attach IAM policy to.
func (SubscriptionIAMPolicyOutput) ToSubscriptionIAMPolicyOutput ¶
func (o SubscriptionIAMPolicyOutput) ToSubscriptionIAMPolicyOutput() SubscriptionIAMPolicyOutput
func (SubscriptionIAMPolicyOutput) ToSubscriptionIAMPolicyOutputWithContext ¶
func (o SubscriptionIAMPolicyOutput) ToSubscriptionIAMPolicyOutputWithContext(ctx context.Context) SubscriptionIAMPolicyOutput
type SubscriptionIAMPolicyState ¶
type SubscriptionIAMPolicyState struct { // (Computed) The etag of the subscription's IAM policy. Etag pulumi.StringPtrInput // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringPtrInput // The project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // The subscription name or id to bind to attach IAM policy to. Subscription pulumi.StringPtrInput }
func (SubscriptionIAMPolicyState) ElementType ¶
func (SubscriptionIAMPolicyState) ElementType() reflect.Type
type SubscriptionInput ¶
type SubscriptionInput interface { pulumi.Input ToSubscriptionOutput() SubscriptionOutput ToSubscriptionOutputWithContext(ctx context.Context) SubscriptionOutput }
type SubscriptionMap ¶
type SubscriptionMap map[string]SubscriptionInput
func (SubscriptionMap) ElementType ¶
func (SubscriptionMap) ElementType() reflect.Type
func (SubscriptionMap) ToSubscriptionMapOutput ¶
func (i SubscriptionMap) ToSubscriptionMapOutput() SubscriptionMapOutput
func (SubscriptionMap) ToSubscriptionMapOutputWithContext ¶
func (i SubscriptionMap) ToSubscriptionMapOutputWithContext(ctx context.Context) SubscriptionMapOutput
type SubscriptionMapInput ¶
type SubscriptionMapInput interface { pulumi.Input ToSubscriptionMapOutput() SubscriptionMapOutput ToSubscriptionMapOutputWithContext(context.Context) SubscriptionMapOutput }
SubscriptionMapInput is an input type that accepts SubscriptionMap and SubscriptionMapOutput values. You can construct a concrete instance of `SubscriptionMapInput` via:
SubscriptionMap{ "key": SubscriptionArgs{...} }
type SubscriptionMapOutput ¶
type SubscriptionMapOutput struct{ *pulumi.OutputState }
func (SubscriptionMapOutput) ElementType ¶
func (SubscriptionMapOutput) ElementType() reflect.Type
func (SubscriptionMapOutput) MapIndex ¶
func (o SubscriptionMapOutput) MapIndex(k pulumi.StringInput) SubscriptionOutput
func (SubscriptionMapOutput) ToSubscriptionMapOutput ¶
func (o SubscriptionMapOutput) ToSubscriptionMapOutput() SubscriptionMapOutput
func (SubscriptionMapOutput) ToSubscriptionMapOutputWithContext ¶
func (o SubscriptionMapOutput) ToSubscriptionMapOutputWithContext(ctx context.Context) SubscriptionMapOutput
type SubscriptionOutput ¶
type SubscriptionOutput struct{ *pulumi.OutputState }
func (SubscriptionOutput) AckDeadlineSeconds ¶ added in v6.23.0
func (o SubscriptionOutput) AckDeadlineSeconds() pulumi.IntOutput
This value is the maximum time after a subscriber receives a message before the subscriber should acknowledge the message. After message delivery but before the ack deadline expires and before the message is acknowledged, it is an outstanding message and will not be delivered again during that time (on a best-effort basis). For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call subscriptions.modifyAckDeadline with the corresponding ackId if using pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used. For push delivery, this value is also used to set the request timeout for the call to the push endpoint. If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.
func (SubscriptionOutput) BigqueryConfig ¶ added in v6.34.0
func (o SubscriptionOutput) BigqueryConfig() SubscriptionBigqueryConfigPtrOutput
If delivery to BigQuery is used with this subscription, this field is used to configure it. Either pushConfig or bigQueryConfig can be set, but not both. If both are empty, then the subscriber will pull and ack messages using API methods. Structure is documented below.
func (SubscriptionOutput) DeadLetterPolicy ¶ added in v6.23.0
func (o SubscriptionOutput) DeadLetterPolicy() SubscriptionDeadLetterPolicyPtrOutput
A policy that specifies the conditions for dead lettering messages in this subscription. If deadLetterPolicy is not set, dead lettering is disabled. The Cloud Pub/Sub service account associated with this subscription's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Acknowledge() messages on this subscription. Structure is documented below.
func (SubscriptionOutput) ElementType ¶
func (SubscriptionOutput) ElementType() reflect.Type
func (SubscriptionOutput) EnableExactlyOnceDelivery ¶ added in v6.23.0
func (o SubscriptionOutput) EnableExactlyOnceDelivery() pulumi.BoolPtrOutput
If `true`, Pub/Sub provides the following guarantees for the delivery of a message with a given value of messageId on this Subscriptions':
- The message sent to a subscriber is guaranteed not to be resent before the message's acknowledgement deadline expires.
- An acknowledged message will not be resent to a subscriber. Note that subscribers may still receive multiple copies of a message when `enableExactlyOnceDelivery` is true if the message was published multiple times by a publisher client. These copies are considered distinct by Pub/Sub and have distinct messageId values
func (SubscriptionOutput) EnableMessageOrdering ¶ added in v6.23.0
func (o SubscriptionOutput) EnableMessageOrdering() pulumi.BoolPtrOutput
If `true`, messages published with the same orderingKey in PubsubMessage will be delivered to the subscribers in the order in which they are received by the Pub/Sub system. Otherwise, they may be delivered in any order.
func (SubscriptionOutput) ExpirationPolicy ¶ added in v6.23.0
func (o SubscriptionOutput) ExpirationPolicy() SubscriptionExpirationPolicyOutput
A policy that specifies the conditions for this subscription's expiration. A subscription is considered active as long as any connected subscriber is successfully consuming messages from the subscription or is issuing operations on the subscription. If expirationPolicy is not set, a default policy with ttl of 31 days will be used. If it is set but ttl is "", the resource never expires. The minimum allowed value for expirationPolicy.ttl is 1 day. Structure is documented below.
func (SubscriptionOutput) Filter ¶ added in v6.23.0
func (o SubscriptionOutput) Filter() pulumi.StringPtrOutput
The subscription only delivers the messages that match the filter. Pub/Sub automatically acknowledges the messages that don't match the filter. You can filter messages by their attributes. The maximum length of a filter is 256 bytes. After creating the subscription, you can't modify the filter.
func (SubscriptionOutput) Labels ¶ added in v6.23.0
func (o SubscriptionOutput) Labels() pulumi.StringMapOutput
A set of key/value label pairs to assign to this Subscription.
func (SubscriptionOutput) MessageRetentionDuration ¶ added in v6.23.0
func (o SubscriptionOutput) MessageRetentionDuration() pulumi.StringPtrOutput
How long to retain unacknowledged messages in the subscription's backlog, from the moment a message is published. If retainAckedMessages is true, then this also configures the retention of acknowledged messages, and thus configures how far back in time a subscriptions.seek can be done. Defaults to 7 days. Cannot be more than 7 days (`"604800s"`) or less than 10 minutes (`"600s"`). A duration in seconds with up to nine fractional digits, terminated by 's'. Example: `"600.5s"`.
func (SubscriptionOutput) Name ¶ added in v6.23.0
func (o SubscriptionOutput) Name() pulumi.StringOutput
Name of the subscription.
func (SubscriptionOutput) Project ¶ added in v6.23.0
func (o SubscriptionOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (SubscriptionOutput) PushConfig ¶ added in v6.23.0
func (o SubscriptionOutput) PushConfig() SubscriptionPushConfigPtrOutput
If push delivery is used with this subscription, this field is used to configure it. An empty pushConfig signifies that the subscriber will pull and ack messages using API methods. Structure is documented below.
func (SubscriptionOutput) RetainAckedMessages ¶ added in v6.23.0
func (o SubscriptionOutput) RetainAckedMessages() pulumi.BoolPtrOutput
Indicates whether to retain acknowledged messages. If `true`, then messages are not expunged from the subscription's backlog, even if they are acknowledged, until they fall out of the messageRetentionDuration window.
func (SubscriptionOutput) RetryPolicy ¶ added in v6.23.0
func (o SubscriptionOutput) RetryPolicy() SubscriptionRetryPolicyPtrOutput
A policy that specifies how Pub/Sub retries message delivery for this subscription. If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers. RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message Structure is documented below.
func (SubscriptionOutput) ToSubscriptionOutput ¶
func (o SubscriptionOutput) ToSubscriptionOutput() SubscriptionOutput
func (SubscriptionOutput) ToSubscriptionOutputWithContext ¶
func (o SubscriptionOutput) ToSubscriptionOutputWithContext(ctx context.Context) SubscriptionOutput
func (SubscriptionOutput) Topic ¶ added in v6.23.0
func (o SubscriptionOutput) Topic() pulumi.StringOutput
A reference to a Topic resource.
type SubscriptionPushConfig ¶
type SubscriptionPushConfig struct { // Endpoint configuration attributes. // Every endpoint has a set of API supported attributes that can // be used to control different aspects of the message delivery. // The currently supported attribute is x-goog-version, which you // can use to change the format of the pushed message. This // attribute indicates the version of the data expected by // the endpoint. This controls the shape of the pushed message // (i.e., its fields and metadata). The endpoint version is // based on the version of the Pub/Sub API. // If not present during the subscriptions.create call, // it will default to the version of the API used to make // such call. If not present during a subscriptions.modifyPushConfig // call, its value will not be changed. subscriptions.get // calls will always return a valid version, even if the // subscription was created without this attribute. // The possible values for this attribute are: // - v1beta1: uses the push format defined in the v1beta1 Pub/Sub API. // - v1 or v1beta2: uses the push format defined in the v1 Pub/Sub API. Attributes map[string]string `pulumi:"attributes"` // If specified, Pub/Sub will generate and attach an OIDC JWT token as // an Authorization header in the HTTP request for every pushed message. // Structure is documented below. OidcToken *SubscriptionPushConfigOidcToken `pulumi:"oidcToken"` // A URL locating the endpoint to which messages should be pushed. // For example, a Webhook endpoint might use // "https://example.com/push". PushEndpoint string `pulumi:"pushEndpoint"` }
type SubscriptionPushConfigArgs ¶
type SubscriptionPushConfigArgs struct { // Endpoint configuration attributes. // Every endpoint has a set of API supported attributes that can // be used to control different aspects of the message delivery. // The currently supported attribute is x-goog-version, which you // can use to change the format of the pushed message. This // attribute indicates the version of the data expected by // the endpoint. This controls the shape of the pushed message // (i.e., its fields and metadata). The endpoint version is // based on the version of the Pub/Sub API. // If not present during the subscriptions.create call, // it will default to the version of the API used to make // such call. If not present during a subscriptions.modifyPushConfig // call, its value will not be changed. subscriptions.get // calls will always return a valid version, even if the // subscription was created without this attribute. // The possible values for this attribute are: // - v1beta1: uses the push format defined in the v1beta1 Pub/Sub API. // - v1 or v1beta2: uses the push format defined in the v1 Pub/Sub API. Attributes pulumi.StringMapInput `pulumi:"attributes"` // If specified, Pub/Sub will generate and attach an OIDC JWT token as // an Authorization header in the HTTP request for every pushed message. // Structure is documented below. OidcToken SubscriptionPushConfigOidcTokenPtrInput `pulumi:"oidcToken"` // A URL locating the endpoint to which messages should be pushed. // For example, a Webhook endpoint might use // "https://example.com/push". PushEndpoint pulumi.StringInput `pulumi:"pushEndpoint"` }
func (SubscriptionPushConfigArgs) ElementType ¶
func (SubscriptionPushConfigArgs) ElementType() reflect.Type
func (SubscriptionPushConfigArgs) ToSubscriptionPushConfigOutput ¶
func (i SubscriptionPushConfigArgs) ToSubscriptionPushConfigOutput() SubscriptionPushConfigOutput
func (SubscriptionPushConfigArgs) ToSubscriptionPushConfigOutputWithContext ¶
func (i SubscriptionPushConfigArgs) ToSubscriptionPushConfigOutputWithContext(ctx context.Context) SubscriptionPushConfigOutput
func (SubscriptionPushConfigArgs) ToSubscriptionPushConfigPtrOutput ¶
func (i SubscriptionPushConfigArgs) ToSubscriptionPushConfigPtrOutput() SubscriptionPushConfigPtrOutput
func (SubscriptionPushConfigArgs) ToSubscriptionPushConfigPtrOutputWithContext ¶
func (i SubscriptionPushConfigArgs) ToSubscriptionPushConfigPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigPtrOutput
type SubscriptionPushConfigInput ¶
type SubscriptionPushConfigInput interface { pulumi.Input ToSubscriptionPushConfigOutput() SubscriptionPushConfigOutput ToSubscriptionPushConfigOutputWithContext(context.Context) SubscriptionPushConfigOutput }
SubscriptionPushConfigInput is an input type that accepts SubscriptionPushConfigArgs and SubscriptionPushConfigOutput values. You can construct a concrete instance of `SubscriptionPushConfigInput` via:
SubscriptionPushConfigArgs{...}
type SubscriptionPushConfigOidcToken ¶
type SubscriptionPushConfigOidcToken struct { // Audience to be used when generating OIDC token. The audience claim // identifies the recipients that the JWT is intended for. The audience // value is a single case-sensitive string. Having multiple values (array) // for the audience field is not supported. More info about the OIDC JWT // token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3 // Note: if not specified, the Push endpoint URL will be used. Audience *string `pulumi:"audience"` // Service account email to be used for generating the OIDC token. // The caller (for subscriptions.create, subscriptions.patch, and // subscriptions.modifyPushConfig RPCs) must have the // iam.serviceAccounts.actAs permission for the service account. ServiceAccountEmail string `pulumi:"serviceAccountEmail"` }
type SubscriptionPushConfigOidcTokenArgs ¶
type SubscriptionPushConfigOidcTokenArgs struct { // Audience to be used when generating OIDC token. The audience claim // identifies the recipients that the JWT is intended for. The audience // value is a single case-sensitive string. Having multiple values (array) // for the audience field is not supported. More info about the OIDC JWT // token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3 // Note: if not specified, the Push endpoint URL will be used. Audience pulumi.StringPtrInput `pulumi:"audience"` // Service account email to be used for generating the OIDC token. // The caller (for subscriptions.create, subscriptions.patch, and // subscriptions.modifyPushConfig RPCs) must have the // iam.serviceAccounts.actAs permission for the service account. ServiceAccountEmail pulumi.StringInput `pulumi:"serviceAccountEmail"` }
func (SubscriptionPushConfigOidcTokenArgs) ElementType ¶
func (SubscriptionPushConfigOidcTokenArgs) ElementType() reflect.Type
func (SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenOutput ¶
func (i SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenOutput() SubscriptionPushConfigOidcTokenOutput
func (SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenOutputWithContext ¶
func (i SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenOutput
func (SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenPtrOutput ¶
func (i SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenPtrOutput() SubscriptionPushConfigOidcTokenPtrOutput
func (SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext ¶
func (i SubscriptionPushConfigOidcTokenArgs) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenPtrOutput
type SubscriptionPushConfigOidcTokenInput ¶
type SubscriptionPushConfigOidcTokenInput interface { pulumi.Input ToSubscriptionPushConfigOidcTokenOutput() SubscriptionPushConfigOidcTokenOutput ToSubscriptionPushConfigOidcTokenOutputWithContext(context.Context) SubscriptionPushConfigOidcTokenOutput }
SubscriptionPushConfigOidcTokenInput is an input type that accepts SubscriptionPushConfigOidcTokenArgs and SubscriptionPushConfigOidcTokenOutput values. You can construct a concrete instance of `SubscriptionPushConfigOidcTokenInput` via:
SubscriptionPushConfigOidcTokenArgs{...}
type SubscriptionPushConfigOidcTokenOutput ¶
type SubscriptionPushConfigOidcTokenOutput struct{ *pulumi.OutputState }
func (SubscriptionPushConfigOidcTokenOutput) Audience ¶
func (o SubscriptionPushConfigOidcTokenOutput) Audience() pulumi.StringPtrOutput
Audience to be used when generating OIDC token. The audience claim identifies the recipients that the JWT is intended for. The audience value is a single case-sensitive string. Having multiple values (array) for the audience field is not supported. More info about the OIDC JWT token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3 Note: if not specified, the Push endpoint URL will be used.
func (SubscriptionPushConfigOidcTokenOutput) ElementType ¶
func (SubscriptionPushConfigOidcTokenOutput) ElementType() reflect.Type
func (SubscriptionPushConfigOidcTokenOutput) ServiceAccountEmail ¶
func (o SubscriptionPushConfigOidcTokenOutput) ServiceAccountEmail() pulumi.StringOutput
Service account email to be used for generating the OIDC token. The caller (for subscriptions.create, subscriptions.patch, and subscriptions.modifyPushConfig RPCs) must have the iam.serviceAccounts.actAs permission for the service account.
func (SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenOutput ¶
func (o SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenOutput() SubscriptionPushConfigOidcTokenOutput
func (SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenOutputWithContext ¶
func (o SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenOutput
func (SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenPtrOutput ¶
func (o SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenPtrOutput() SubscriptionPushConfigOidcTokenPtrOutput
func (SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext ¶
func (o SubscriptionPushConfigOidcTokenOutput) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenPtrOutput
type SubscriptionPushConfigOidcTokenPtrInput ¶
type SubscriptionPushConfigOidcTokenPtrInput interface { pulumi.Input ToSubscriptionPushConfigOidcTokenPtrOutput() SubscriptionPushConfigOidcTokenPtrOutput ToSubscriptionPushConfigOidcTokenPtrOutputWithContext(context.Context) SubscriptionPushConfigOidcTokenPtrOutput }
SubscriptionPushConfigOidcTokenPtrInput is an input type that accepts SubscriptionPushConfigOidcTokenArgs, SubscriptionPushConfigOidcTokenPtr and SubscriptionPushConfigOidcTokenPtrOutput values. You can construct a concrete instance of `SubscriptionPushConfigOidcTokenPtrInput` via:
SubscriptionPushConfigOidcTokenArgs{...} or: nil
func SubscriptionPushConfigOidcTokenPtr ¶
func SubscriptionPushConfigOidcTokenPtr(v *SubscriptionPushConfigOidcTokenArgs) SubscriptionPushConfigOidcTokenPtrInput
type SubscriptionPushConfigOidcTokenPtrOutput ¶
type SubscriptionPushConfigOidcTokenPtrOutput struct{ *pulumi.OutputState }
func (SubscriptionPushConfigOidcTokenPtrOutput) Audience ¶
func (o SubscriptionPushConfigOidcTokenPtrOutput) Audience() pulumi.StringPtrOutput
Audience to be used when generating OIDC token. The audience claim identifies the recipients that the JWT is intended for. The audience value is a single case-sensitive string. Having multiple values (array) for the audience field is not supported. More info about the OIDC JWT token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3 Note: if not specified, the Push endpoint URL will be used.
func (SubscriptionPushConfigOidcTokenPtrOutput) ElementType ¶
func (SubscriptionPushConfigOidcTokenPtrOutput) ElementType() reflect.Type
func (SubscriptionPushConfigOidcTokenPtrOutput) ServiceAccountEmail ¶
func (o SubscriptionPushConfigOidcTokenPtrOutput) ServiceAccountEmail() pulumi.StringPtrOutput
Service account email to be used for generating the OIDC token. The caller (for subscriptions.create, subscriptions.patch, and subscriptions.modifyPushConfig RPCs) must have the iam.serviceAccounts.actAs permission for the service account.
func (SubscriptionPushConfigOidcTokenPtrOutput) ToSubscriptionPushConfigOidcTokenPtrOutput ¶
func (o SubscriptionPushConfigOidcTokenPtrOutput) ToSubscriptionPushConfigOidcTokenPtrOutput() SubscriptionPushConfigOidcTokenPtrOutput
func (SubscriptionPushConfigOidcTokenPtrOutput) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext ¶
func (o SubscriptionPushConfigOidcTokenPtrOutput) ToSubscriptionPushConfigOidcTokenPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigOidcTokenPtrOutput
type SubscriptionPushConfigOutput ¶
type SubscriptionPushConfigOutput struct{ *pulumi.OutputState }
func (SubscriptionPushConfigOutput) Attributes ¶
func (o SubscriptionPushConfigOutput) Attributes() pulumi.StringMapOutput
Endpoint configuration attributes. Every endpoint has a set of API supported attributes that can be used to control different aspects of the message delivery. The currently supported attribute is x-goog-version, which you can use to change the format of the pushed message. This attribute indicates the version of the data expected by the endpoint. This controls the shape of the pushed message (i.e., its fields and metadata). The endpoint version is based on the version of the Pub/Sub API. If not present during the subscriptions.create call, it will default to the version of the API used to make such call. If not present during a subscriptions.modifyPushConfig call, its value will not be changed. subscriptions.get calls will always return a valid version, even if the subscription was created without this attribute. The possible values for this attribute are: - v1beta1: uses the push format defined in the v1beta1 Pub/Sub API. - v1 or v1beta2: uses the push format defined in the v1 Pub/Sub API.
func (SubscriptionPushConfigOutput) ElementType ¶
func (SubscriptionPushConfigOutput) ElementType() reflect.Type
func (SubscriptionPushConfigOutput) OidcToken ¶
func (o SubscriptionPushConfigOutput) OidcToken() SubscriptionPushConfigOidcTokenPtrOutput
If specified, Pub/Sub will generate and attach an OIDC JWT token as an Authorization header in the HTTP request for every pushed message. Structure is documented below.
func (SubscriptionPushConfigOutput) PushEndpoint ¶
func (o SubscriptionPushConfigOutput) PushEndpoint() pulumi.StringOutput
A URL locating the endpoint to which messages should be pushed. For example, a Webhook endpoint might use "https://example.com/push".
func (SubscriptionPushConfigOutput) ToSubscriptionPushConfigOutput ¶
func (o SubscriptionPushConfigOutput) ToSubscriptionPushConfigOutput() SubscriptionPushConfigOutput
func (SubscriptionPushConfigOutput) ToSubscriptionPushConfigOutputWithContext ¶
func (o SubscriptionPushConfigOutput) ToSubscriptionPushConfigOutputWithContext(ctx context.Context) SubscriptionPushConfigOutput
func (SubscriptionPushConfigOutput) ToSubscriptionPushConfigPtrOutput ¶
func (o SubscriptionPushConfigOutput) ToSubscriptionPushConfigPtrOutput() SubscriptionPushConfigPtrOutput
func (SubscriptionPushConfigOutput) ToSubscriptionPushConfigPtrOutputWithContext ¶
func (o SubscriptionPushConfigOutput) ToSubscriptionPushConfigPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigPtrOutput
type SubscriptionPushConfigPtrInput ¶
type SubscriptionPushConfigPtrInput interface { pulumi.Input ToSubscriptionPushConfigPtrOutput() SubscriptionPushConfigPtrOutput ToSubscriptionPushConfigPtrOutputWithContext(context.Context) SubscriptionPushConfigPtrOutput }
SubscriptionPushConfigPtrInput is an input type that accepts SubscriptionPushConfigArgs, SubscriptionPushConfigPtr and SubscriptionPushConfigPtrOutput values. You can construct a concrete instance of `SubscriptionPushConfigPtrInput` via:
SubscriptionPushConfigArgs{...} or: nil
func SubscriptionPushConfigPtr ¶
func SubscriptionPushConfigPtr(v *SubscriptionPushConfigArgs) SubscriptionPushConfigPtrInput
type SubscriptionPushConfigPtrOutput ¶
type SubscriptionPushConfigPtrOutput struct{ *pulumi.OutputState }
func (SubscriptionPushConfigPtrOutput) Attributes ¶
func (o SubscriptionPushConfigPtrOutput) Attributes() pulumi.StringMapOutput
Endpoint configuration attributes. Every endpoint has a set of API supported attributes that can be used to control different aspects of the message delivery. The currently supported attribute is x-goog-version, which you can use to change the format of the pushed message. This attribute indicates the version of the data expected by the endpoint. This controls the shape of the pushed message (i.e., its fields and metadata). The endpoint version is based on the version of the Pub/Sub API. If not present during the subscriptions.create call, it will default to the version of the API used to make such call. If not present during a subscriptions.modifyPushConfig call, its value will not be changed. subscriptions.get calls will always return a valid version, even if the subscription was created without this attribute. The possible values for this attribute are: - v1beta1: uses the push format defined in the v1beta1 Pub/Sub API. - v1 or v1beta2: uses the push format defined in the v1 Pub/Sub API.
func (SubscriptionPushConfigPtrOutput) Elem ¶
func (o SubscriptionPushConfigPtrOutput) Elem() SubscriptionPushConfigOutput
func (SubscriptionPushConfigPtrOutput) ElementType ¶
func (SubscriptionPushConfigPtrOutput) ElementType() reflect.Type
func (SubscriptionPushConfigPtrOutput) OidcToken ¶
func (o SubscriptionPushConfigPtrOutput) OidcToken() SubscriptionPushConfigOidcTokenPtrOutput
If specified, Pub/Sub will generate and attach an OIDC JWT token as an Authorization header in the HTTP request for every pushed message. Structure is documented below.
func (SubscriptionPushConfigPtrOutput) PushEndpoint ¶
func (o SubscriptionPushConfigPtrOutput) PushEndpoint() pulumi.StringPtrOutput
A URL locating the endpoint to which messages should be pushed. For example, a Webhook endpoint might use "https://example.com/push".
func (SubscriptionPushConfigPtrOutput) ToSubscriptionPushConfigPtrOutput ¶
func (o SubscriptionPushConfigPtrOutput) ToSubscriptionPushConfigPtrOutput() SubscriptionPushConfigPtrOutput
func (SubscriptionPushConfigPtrOutput) ToSubscriptionPushConfigPtrOutputWithContext ¶
func (o SubscriptionPushConfigPtrOutput) ToSubscriptionPushConfigPtrOutputWithContext(ctx context.Context) SubscriptionPushConfigPtrOutput
type SubscriptionRetryPolicy ¶
type SubscriptionRetryPolicy struct { // The maximum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 600 seconds. // A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". MaximumBackoff *string `pulumi:"maximumBackoff"` // The minimum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 10 seconds. // A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". MinimumBackoff *string `pulumi:"minimumBackoff"` }
type SubscriptionRetryPolicyArgs ¶
type SubscriptionRetryPolicyArgs struct { // The maximum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 600 seconds. // A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". MaximumBackoff pulumi.StringPtrInput `pulumi:"maximumBackoff"` // The minimum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 10 seconds. // A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". MinimumBackoff pulumi.StringPtrInput `pulumi:"minimumBackoff"` }
func (SubscriptionRetryPolicyArgs) ElementType ¶
func (SubscriptionRetryPolicyArgs) ElementType() reflect.Type
func (SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyOutput ¶
func (i SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyOutput() SubscriptionRetryPolicyOutput
func (SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyOutputWithContext ¶
func (i SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyOutputWithContext(ctx context.Context) SubscriptionRetryPolicyOutput
func (SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyPtrOutput ¶
func (i SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyPtrOutput() SubscriptionRetryPolicyPtrOutput
func (SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyPtrOutputWithContext ¶
func (i SubscriptionRetryPolicyArgs) ToSubscriptionRetryPolicyPtrOutputWithContext(ctx context.Context) SubscriptionRetryPolicyPtrOutput
type SubscriptionRetryPolicyInput ¶
type SubscriptionRetryPolicyInput interface { pulumi.Input ToSubscriptionRetryPolicyOutput() SubscriptionRetryPolicyOutput ToSubscriptionRetryPolicyOutputWithContext(context.Context) SubscriptionRetryPolicyOutput }
SubscriptionRetryPolicyInput is an input type that accepts SubscriptionRetryPolicyArgs and SubscriptionRetryPolicyOutput values. You can construct a concrete instance of `SubscriptionRetryPolicyInput` via:
SubscriptionRetryPolicyArgs{...}
type SubscriptionRetryPolicyOutput ¶
type SubscriptionRetryPolicyOutput struct{ *pulumi.OutputState }
func (SubscriptionRetryPolicyOutput) ElementType ¶
func (SubscriptionRetryPolicyOutput) ElementType() reflect.Type
func (SubscriptionRetryPolicyOutput) MaximumBackoff ¶
func (o SubscriptionRetryPolicyOutput) MaximumBackoff() pulumi.StringPtrOutput
The maximum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 600 seconds. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
func (SubscriptionRetryPolicyOutput) MinimumBackoff ¶
func (o SubscriptionRetryPolicyOutput) MinimumBackoff() pulumi.StringPtrOutput
The minimum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 10 seconds. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
func (SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyOutput ¶
func (o SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyOutput() SubscriptionRetryPolicyOutput
func (SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyOutputWithContext ¶
func (o SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyOutputWithContext(ctx context.Context) SubscriptionRetryPolicyOutput
func (SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyPtrOutput ¶
func (o SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyPtrOutput() SubscriptionRetryPolicyPtrOutput
func (SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyPtrOutputWithContext ¶
func (o SubscriptionRetryPolicyOutput) ToSubscriptionRetryPolicyPtrOutputWithContext(ctx context.Context) SubscriptionRetryPolicyPtrOutput
type SubscriptionRetryPolicyPtrInput ¶
type SubscriptionRetryPolicyPtrInput interface { pulumi.Input ToSubscriptionRetryPolicyPtrOutput() SubscriptionRetryPolicyPtrOutput ToSubscriptionRetryPolicyPtrOutputWithContext(context.Context) SubscriptionRetryPolicyPtrOutput }
SubscriptionRetryPolicyPtrInput is an input type that accepts SubscriptionRetryPolicyArgs, SubscriptionRetryPolicyPtr and SubscriptionRetryPolicyPtrOutput values. You can construct a concrete instance of `SubscriptionRetryPolicyPtrInput` via:
SubscriptionRetryPolicyArgs{...} or: nil
func SubscriptionRetryPolicyPtr ¶
func SubscriptionRetryPolicyPtr(v *SubscriptionRetryPolicyArgs) SubscriptionRetryPolicyPtrInput
type SubscriptionRetryPolicyPtrOutput ¶
type SubscriptionRetryPolicyPtrOutput struct{ *pulumi.OutputState }
func (SubscriptionRetryPolicyPtrOutput) Elem ¶
func (o SubscriptionRetryPolicyPtrOutput) Elem() SubscriptionRetryPolicyOutput
func (SubscriptionRetryPolicyPtrOutput) ElementType ¶
func (SubscriptionRetryPolicyPtrOutput) ElementType() reflect.Type
func (SubscriptionRetryPolicyPtrOutput) MaximumBackoff ¶
func (o SubscriptionRetryPolicyPtrOutput) MaximumBackoff() pulumi.StringPtrOutput
The maximum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 600 seconds. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
func (SubscriptionRetryPolicyPtrOutput) MinimumBackoff ¶
func (o SubscriptionRetryPolicyPtrOutput) MinimumBackoff() pulumi.StringPtrOutput
The minimum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 10 seconds. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
func (SubscriptionRetryPolicyPtrOutput) ToSubscriptionRetryPolicyPtrOutput ¶
func (o SubscriptionRetryPolicyPtrOutput) ToSubscriptionRetryPolicyPtrOutput() SubscriptionRetryPolicyPtrOutput
func (SubscriptionRetryPolicyPtrOutput) ToSubscriptionRetryPolicyPtrOutputWithContext ¶
func (o SubscriptionRetryPolicyPtrOutput) ToSubscriptionRetryPolicyPtrOutputWithContext(ctx context.Context) SubscriptionRetryPolicyPtrOutput
type SubscriptionState ¶
type SubscriptionState struct { // This value is the maximum time after a subscriber receives a message // before the subscriber should acknowledge the message. After message // delivery but before the ack deadline expires and before the message is // acknowledged, it is an outstanding message and will not be delivered // again during that time (on a best-effort basis). // For pull subscriptions, this value is used as the initial value for // the ack deadline. To override this value for a given message, call // subscriptions.modifyAckDeadline with the corresponding ackId if using // pull. The minimum custom deadline you can specify is 10 seconds. The // maximum custom deadline you can specify is 600 seconds (10 minutes). // If this parameter is 0, a default value of 10 seconds is used. // For push delivery, this value is also used to set the request timeout // for the call to the push endpoint. // If the subscriber never acknowledges the message, the Pub/Sub system // will eventually redeliver the message. AckDeadlineSeconds pulumi.IntPtrInput // If delivery to BigQuery is used with this subscription, this field is used to configure it. // Either pushConfig or bigQueryConfig can be set, but not both. // If both are empty, then the subscriber will pull and ack messages using API methods. // Structure is documented below. BigqueryConfig SubscriptionBigqueryConfigPtrInput // A policy that specifies the conditions for dead lettering messages in // this subscription. If deadLetterPolicy is not set, dead lettering // is disabled. // The Cloud Pub/Sub service account associated with this subscription's // parent project (i.e., // service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have // permission to Acknowledge() messages on this subscription. // Structure is documented below. DeadLetterPolicy SubscriptionDeadLetterPolicyPtrInput // If `true`, Pub/Sub provides the following guarantees for the delivery // of a message with a given value of messageId on this Subscriptions': // - The message sent to a subscriber is guaranteed not to be resent before the message's acknowledgement deadline expires. // - An acknowledged message will not be resent to a subscriber. // Note that subscribers may still receive multiple copies of a message when `enableExactlyOnceDelivery` // is true if the message was published multiple times by a publisher client. These copies are considered distinct by Pub/Sub and have distinct messageId values EnableExactlyOnceDelivery pulumi.BoolPtrInput // If `true`, messages published with the same orderingKey in PubsubMessage will be delivered to // the subscribers in the order in which they are received by the Pub/Sub system. Otherwise, they // may be delivered in any order. EnableMessageOrdering pulumi.BoolPtrInput // A policy that specifies the conditions for this subscription's expiration. // A subscription is considered active as long as any connected subscriber // is successfully consuming messages from the subscription or is issuing // operations on the subscription. If expirationPolicy is not set, a default // policy with ttl of 31 days will be used. If it is set but ttl is "", the // resource never expires. The minimum allowed value for expirationPolicy.ttl // is 1 day. // Structure is documented below. ExpirationPolicy SubscriptionExpirationPolicyPtrInput // The subscription only delivers the messages that match the filter. // Pub/Sub automatically acknowledges the messages that don't match the filter. You can filter messages // by their attributes. The maximum length of a filter is 256 bytes. After creating the subscription, // you can't modify the filter. Filter pulumi.StringPtrInput // A set of key/value label pairs to assign to this Subscription. Labels pulumi.StringMapInput // How long to retain unacknowledged messages in the subscription's // backlog, from the moment a message is published. If // retainAckedMessages is true, then this also configures the retention // of acknowledged messages, and thus configures how far back in time a // subscriptions.seek can be done. Defaults to 7 days. Cannot be more // than 7 days (`"604800s"`) or less than 10 minutes (`"600s"`). // A duration in seconds with up to nine fractional digits, terminated // by 's'. Example: `"600.5s"`. MessageRetentionDuration pulumi.StringPtrInput // Name of the subscription. 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 // If push delivery is used with this subscription, this field is used to // configure it. An empty pushConfig signifies that the subscriber will // pull and ack messages using API methods. // Structure is documented below. PushConfig SubscriptionPushConfigPtrInput // Indicates whether to retain acknowledged messages. If `true`, then // messages are not expunged from the subscription's backlog, even if // they are acknowledged, until they fall out of the // messageRetentionDuration window. RetainAckedMessages pulumi.BoolPtrInput // A policy that specifies how Pub/Sub retries message delivery for this subscription. // If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers. // RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message // Structure is documented below. RetryPolicy SubscriptionRetryPolicyPtrInput // A reference to a Topic resource. Topic pulumi.StringPtrInput }
func (SubscriptionState) ElementType ¶
func (SubscriptionState) ElementType() reflect.Type
type Topic ¶
type Topic struct { pulumi.CustomResourceState // 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/*` KmsKeyName pulumi.StringPtrOutput `pulumi:"kmsKeyName"` // A set of key/value label pairs to assign to this Topic. Labels pulumi.StringMapOutput `pulumi:"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. MessageRetentionDuration pulumi.StringPtrOutput `pulumi:"messageRetentionDuration"` // Policy constraining the set of Google Cloud Platform regions where // messages published to the topic may be stored. If not present, then no // constraints are in effect. // Structure is documented below. MessageStoragePolicy TopicMessageStoragePolicyOutput `pulumi:"messageStoragePolicy"` // Name of the topic. 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"` // Settings for validating messages published against a schema. // Structure is documented below. SchemaSettings TopicSchemaSettingsOutput `pulumi:"schemaSettings"` }
A named resource to which messages are sent by publishers.
To get more information about Topic, see:
* [API documentation](https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.topics) * How-to Guides
- [Managing Topics](https://cloud.google.com/pubsub/docs/admin#managing_topics)
> **Note:** You can retrieve the email of the Google Managed Pub/Sub Service Account used for forwarding by using the `projects.ServiceIdentity` resource.
## Example Usage ### Pubsub Topic Basic
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewTopic(ctx, "example", &pubsub.TopicArgs{ Labels: pulumi.StringMap{ "foo": pulumi.String("bar"), }, MessageRetentionDuration: pulumi.String("86600s"), }) if err != nil { return err } return nil }) }
``` ### Pubsub Topic Cmek
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/kms" "github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { keyRing, err := kms.NewKeyRing(ctx, "keyRing", &kms.KeyRingArgs{ Location: pulumi.String("global"), }) if err != nil { return err } cryptoKey, err := kms.NewCryptoKey(ctx, "cryptoKey", &kms.CryptoKeyArgs{ KeyRing: keyRing.ID(), }) if err != nil { return err } _, err = pubsub.NewTopic(ctx, "example", &pubsub.TopicArgs{ KmsKeyName: cryptoKey.ID(), }) if err != nil { return err } return nil }) }
``` ### Pubsub Topic Geo Restricted
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewTopic(ctx, "example", &pubsub.TopicArgs{ MessageStoragePolicy: &pubsub.TopicMessageStoragePolicyArgs{ AllowedPersistenceRegions: pulumi.StringArray{ pulumi.String("europe-west3"), }, }, }) if err != nil { return err } return nil }) }
``` ### Pubsub Topic Schema Settings
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { exampleSchema, err := pubsub.NewSchema(ctx, "exampleSchema", &pubsub.SchemaArgs{ Type: pulumi.String("AVRO"), Definition: pulumi.String("{\n \"type\" : \"record\",\n \"name\" : \"Avro\",\n \"fields\" : [\n {\n \"name\" : \"StringField\",\n \"type\" : \"string\"\n },\n {\n \"name\" : \"IntField\",\n \"type\" : \"int\"\n }\n ]\n}\n"), }) if err != nil { return err } _, err = pubsub.NewTopic(ctx, "exampleTopic", &pubsub.TopicArgs{ SchemaSettings: &pubsub.TopicSchemaSettingsArgs{ Schema: pulumi.String("projects/my-project-name/schemas/example"), Encoding: pulumi.String("JSON"), }, }, pulumi.DependsOn([]pulumi.Resource{ exampleSchema, })) if err != nil { return err } return nil }) }
```
## Import
Topic can be imported using any of these accepted formats ¶
```sh
$ pulumi import gcp:pubsub/topic:Topic default projects/{{project}}/topics/{{name}}
```
```sh
$ pulumi import gcp:pubsub/topic:Topic default {{project}}/{{name}}
```
```sh
$ pulumi import gcp:pubsub/topic:Topic default {{name}}
```
func GetTopic ¶
func GetTopic(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TopicState, opts ...pulumi.ResourceOption) (*Topic, error)
GetTopic gets an existing Topic 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 NewTopic ¶
func NewTopic(ctx *pulumi.Context, name string, args *TopicArgs, opts ...pulumi.ResourceOption) (*Topic, error)
NewTopic registers a new resource with the given unique name, arguments, and options.
func (*Topic) ElementType ¶
func (*Topic) ToTopicOutput ¶
func (i *Topic) ToTopicOutput() TopicOutput
func (*Topic) ToTopicOutputWithContext ¶
func (i *Topic) ToTopicOutputWithContext(ctx context.Context) TopicOutput
type TopicArgs ¶
type TopicArgs struct { // 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/*` KmsKeyName pulumi.StringPtrInput // A set of key/value label pairs to assign to this Topic. Labels pulumi.StringMapInput // 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. MessageRetentionDuration pulumi.StringPtrInput // Policy constraining the set of Google Cloud Platform regions where // messages published to the topic may be stored. If not present, then no // constraints are in effect. // Structure is documented below. MessageStoragePolicy TopicMessageStoragePolicyPtrInput // Name of the topic. 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 // Settings for validating messages published against a schema. // Structure is documented below. SchemaSettings TopicSchemaSettingsPtrInput }
The set of arguments for constructing a Topic resource.
func (TopicArgs) ElementType ¶
type TopicArray ¶
type TopicArray []TopicInput
func (TopicArray) ElementType ¶
func (TopicArray) ElementType() reflect.Type
func (TopicArray) ToTopicArrayOutput ¶
func (i TopicArray) ToTopicArrayOutput() TopicArrayOutput
func (TopicArray) ToTopicArrayOutputWithContext ¶
func (i TopicArray) ToTopicArrayOutputWithContext(ctx context.Context) TopicArrayOutput
type TopicArrayInput ¶
type TopicArrayInput interface { pulumi.Input ToTopicArrayOutput() TopicArrayOutput ToTopicArrayOutputWithContext(context.Context) TopicArrayOutput }
TopicArrayInput is an input type that accepts TopicArray and TopicArrayOutput values. You can construct a concrete instance of `TopicArrayInput` via:
TopicArray{ TopicArgs{...} }
type TopicArrayOutput ¶
type TopicArrayOutput struct{ *pulumi.OutputState }
func (TopicArrayOutput) ElementType ¶
func (TopicArrayOutput) ElementType() reflect.Type
func (TopicArrayOutput) Index ¶
func (o TopicArrayOutput) Index(i pulumi.IntInput) TopicOutput
func (TopicArrayOutput) ToTopicArrayOutput ¶
func (o TopicArrayOutput) ToTopicArrayOutput() TopicArrayOutput
func (TopicArrayOutput) ToTopicArrayOutputWithContext ¶
func (o TopicArrayOutput) ToTopicArrayOutputWithContext(ctx context.Context) TopicArrayOutput
type TopicIAMBinding ¶
type TopicIAMBinding struct { pulumi.CustomResourceState Condition TopicIAMBindingConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` Members pulumi.StringArrayOutput `pulumi:"members"` // The ID of the project in which the resource belongs. // If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `pubsub.TopicIAMBinding` 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"` // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringOutput `pulumi:"topic"` }
Three different resources help you manage your IAM policy for Cloud Pub/Sub Topic. Each of these resources serves a different use case:
* `pubsub.TopicIAMPolicy`: Authoritative. Sets the IAM policy for the topic and replaces any existing policy already attached. * `pubsub.TopicIAMBinding`: 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 topic are preserved. * `pubsub.TopicIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the topic are preserved.
> **Note:** `pubsub.TopicIAMPolicy` **cannot** be used in conjunction with `pubsub.TopicIAMBinding` and `pubsub.TopicIAMMember` or they will fight over what your policy should be.
> **Note:** `pubsub.TopicIAMBinding` resources **can be** used in conjunction with `pubsub.TopicIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_pubsub\_topic\_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/pubsub" "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/viewer", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = pubsub.NewTopicIAMPolicy(ctx, "policy", &pubsub.TopicIAMPolicyArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_topic\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewTopicIAMBinding(ctx, "binding", &pubsub.TopicIAMBindingArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), Role: pulumi.String("roles/viewer"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_topic\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewTopicIAMMember(ctx, "member", &pubsub.TopicIAMMemberArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), Role: pulumi.String("roles/viewer"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/topics/{{name}} * {{project}}/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Pub/Sub topic IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMBinding:TopicIAMBinding editor "projects/{{project}}/topics/{{topic}} roles/viewer user:jane@example.com"
```
IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMBinding:TopicIAMBinding editor "projects/{{project}}/topics/{{topic}} roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMBinding:TopicIAMBinding editor projects/{{project}}/topics/{{topic}}
```
-> **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 GetTopicIAMBinding ¶
func GetTopicIAMBinding(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TopicIAMBindingState, opts ...pulumi.ResourceOption) (*TopicIAMBinding, error)
GetTopicIAMBinding gets an existing TopicIAMBinding 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 NewTopicIAMBinding ¶
func NewTopicIAMBinding(ctx *pulumi.Context, name string, args *TopicIAMBindingArgs, opts ...pulumi.ResourceOption) (*TopicIAMBinding, error)
NewTopicIAMBinding registers a new resource with the given unique name, arguments, and options.
func (*TopicIAMBinding) ElementType ¶
func (*TopicIAMBinding) ElementType() reflect.Type
func (*TopicIAMBinding) ToTopicIAMBindingOutput ¶
func (i *TopicIAMBinding) ToTopicIAMBindingOutput() TopicIAMBindingOutput
func (*TopicIAMBinding) ToTopicIAMBindingOutputWithContext ¶
func (i *TopicIAMBinding) ToTopicIAMBindingOutputWithContext(ctx context.Context) TopicIAMBindingOutput
type TopicIAMBindingArgs ¶
type TopicIAMBindingArgs struct { Condition TopicIAMBindingConditionPtrInput Members pulumi.StringArrayInput // The ID of the project in which the resource belongs. // If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringInput // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringInput }
The set of arguments for constructing a TopicIAMBinding resource.
func (TopicIAMBindingArgs) ElementType ¶
func (TopicIAMBindingArgs) ElementType() reflect.Type
type TopicIAMBindingArray ¶
type TopicIAMBindingArray []TopicIAMBindingInput
func (TopicIAMBindingArray) ElementType ¶
func (TopicIAMBindingArray) ElementType() reflect.Type
func (TopicIAMBindingArray) ToTopicIAMBindingArrayOutput ¶
func (i TopicIAMBindingArray) ToTopicIAMBindingArrayOutput() TopicIAMBindingArrayOutput
func (TopicIAMBindingArray) ToTopicIAMBindingArrayOutputWithContext ¶
func (i TopicIAMBindingArray) ToTopicIAMBindingArrayOutputWithContext(ctx context.Context) TopicIAMBindingArrayOutput
type TopicIAMBindingArrayInput ¶
type TopicIAMBindingArrayInput interface { pulumi.Input ToTopicIAMBindingArrayOutput() TopicIAMBindingArrayOutput ToTopicIAMBindingArrayOutputWithContext(context.Context) TopicIAMBindingArrayOutput }
TopicIAMBindingArrayInput is an input type that accepts TopicIAMBindingArray and TopicIAMBindingArrayOutput values. You can construct a concrete instance of `TopicIAMBindingArrayInput` via:
TopicIAMBindingArray{ TopicIAMBindingArgs{...} }
type TopicIAMBindingArrayOutput ¶
type TopicIAMBindingArrayOutput struct{ *pulumi.OutputState }
func (TopicIAMBindingArrayOutput) ElementType ¶
func (TopicIAMBindingArrayOutput) ElementType() reflect.Type
func (TopicIAMBindingArrayOutput) Index ¶
func (o TopicIAMBindingArrayOutput) Index(i pulumi.IntInput) TopicIAMBindingOutput
func (TopicIAMBindingArrayOutput) ToTopicIAMBindingArrayOutput ¶
func (o TopicIAMBindingArrayOutput) ToTopicIAMBindingArrayOutput() TopicIAMBindingArrayOutput
func (TopicIAMBindingArrayOutput) ToTopicIAMBindingArrayOutputWithContext ¶
func (o TopicIAMBindingArrayOutput) ToTopicIAMBindingArrayOutputWithContext(ctx context.Context) TopicIAMBindingArrayOutput
type TopicIAMBindingConditionArgs ¶
type TopicIAMBindingConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (TopicIAMBindingConditionArgs) ElementType ¶
func (TopicIAMBindingConditionArgs) ElementType() reflect.Type
func (TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionOutput ¶
func (i TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionOutput() TopicIAMBindingConditionOutput
func (TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionOutputWithContext ¶
func (i TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionOutputWithContext(ctx context.Context) TopicIAMBindingConditionOutput
func (TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionPtrOutput ¶
func (i TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionPtrOutput() TopicIAMBindingConditionPtrOutput
func (TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionPtrOutputWithContext ¶
func (i TopicIAMBindingConditionArgs) ToTopicIAMBindingConditionPtrOutputWithContext(ctx context.Context) TopicIAMBindingConditionPtrOutput
type TopicIAMBindingConditionInput ¶
type TopicIAMBindingConditionInput interface { pulumi.Input ToTopicIAMBindingConditionOutput() TopicIAMBindingConditionOutput ToTopicIAMBindingConditionOutputWithContext(context.Context) TopicIAMBindingConditionOutput }
TopicIAMBindingConditionInput is an input type that accepts TopicIAMBindingConditionArgs and TopicIAMBindingConditionOutput values. You can construct a concrete instance of `TopicIAMBindingConditionInput` via:
TopicIAMBindingConditionArgs{...}
type TopicIAMBindingConditionOutput ¶
type TopicIAMBindingConditionOutput struct{ *pulumi.OutputState }
func (TopicIAMBindingConditionOutput) Description ¶
func (o TopicIAMBindingConditionOutput) Description() pulumi.StringPtrOutput
func (TopicIAMBindingConditionOutput) ElementType ¶
func (TopicIAMBindingConditionOutput) ElementType() reflect.Type
func (TopicIAMBindingConditionOutput) Expression ¶
func (o TopicIAMBindingConditionOutput) Expression() pulumi.StringOutput
func (TopicIAMBindingConditionOutput) Title ¶
func (o TopicIAMBindingConditionOutput) Title() pulumi.StringOutput
func (TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionOutput ¶
func (o TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionOutput() TopicIAMBindingConditionOutput
func (TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionOutputWithContext ¶
func (o TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionOutputWithContext(ctx context.Context) TopicIAMBindingConditionOutput
func (TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionPtrOutput ¶
func (o TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionPtrOutput() TopicIAMBindingConditionPtrOutput
func (TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionPtrOutputWithContext ¶
func (o TopicIAMBindingConditionOutput) ToTopicIAMBindingConditionPtrOutputWithContext(ctx context.Context) TopicIAMBindingConditionPtrOutput
type TopicIAMBindingConditionPtrInput ¶
type TopicIAMBindingConditionPtrInput interface { pulumi.Input ToTopicIAMBindingConditionPtrOutput() TopicIAMBindingConditionPtrOutput ToTopicIAMBindingConditionPtrOutputWithContext(context.Context) TopicIAMBindingConditionPtrOutput }
TopicIAMBindingConditionPtrInput is an input type that accepts TopicIAMBindingConditionArgs, TopicIAMBindingConditionPtr and TopicIAMBindingConditionPtrOutput values. You can construct a concrete instance of `TopicIAMBindingConditionPtrInput` via:
TopicIAMBindingConditionArgs{...} or: nil
func TopicIAMBindingConditionPtr ¶
func TopicIAMBindingConditionPtr(v *TopicIAMBindingConditionArgs) TopicIAMBindingConditionPtrInput
type TopicIAMBindingConditionPtrOutput ¶
type TopicIAMBindingConditionPtrOutput struct{ *pulumi.OutputState }
func (TopicIAMBindingConditionPtrOutput) Description ¶
func (o TopicIAMBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
func (TopicIAMBindingConditionPtrOutput) Elem ¶
func (o TopicIAMBindingConditionPtrOutput) Elem() TopicIAMBindingConditionOutput
func (TopicIAMBindingConditionPtrOutput) ElementType ¶
func (TopicIAMBindingConditionPtrOutput) ElementType() reflect.Type
func (TopicIAMBindingConditionPtrOutput) Expression ¶
func (o TopicIAMBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (TopicIAMBindingConditionPtrOutput) Title ¶
func (o TopicIAMBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
func (TopicIAMBindingConditionPtrOutput) ToTopicIAMBindingConditionPtrOutput ¶
func (o TopicIAMBindingConditionPtrOutput) ToTopicIAMBindingConditionPtrOutput() TopicIAMBindingConditionPtrOutput
func (TopicIAMBindingConditionPtrOutput) ToTopicIAMBindingConditionPtrOutputWithContext ¶
func (o TopicIAMBindingConditionPtrOutput) ToTopicIAMBindingConditionPtrOutputWithContext(ctx context.Context) TopicIAMBindingConditionPtrOutput
type TopicIAMBindingInput ¶
type TopicIAMBindingInput interface { pulumi.Input ToTopicIAMBindingOutput() TopicIAMBindingOutput ToTopicIAMBindingOutputWithContext(ctx context.Context) TopicIAMBindingOutput }
type TopicIAMBindingMap ¶
type TopicIAMBindingMap map[string]TopicIAMBindingInput
func (TopicIAMBindingMap) ElementType ¶
func (TopicIAMBindingMap) ElementType() reflect.Type
func (TopicIAMBindingMap) ToTopicIAMBindingMapOutput ¶
func (i TopicIAMBindingMap) ToTopicIAMBindingMapOutput() TopicIAMBindingMapOutput
func (TopicIAMBindingMap) ToTopicIAMBindingMapOutputWithContext ¶
func (i TopicIAMBindingMap) ToTopicIAMBindingMapOutputWithContext(ctx context.Context) TopicIAMBindingMapOutput
type TopicIAMBindingMapInput ¶
type TopicIAMBindingMapInput interface { pulumi.Input ToTopicIAMBindingMapOutput() TopicIAMBindingMapOutput ToTopicIAMBindingMapOutputWithContext(context.Context) TopicIAMBindingMapOutput }
TopicIAMBindingMapInput is an input type that accepts TopicIAMBindingMap and TopicIAMBindingMapOutput values. You can construct a concrete instance of `TopicIAMBindingMapInput` via:
TopicIAMBindingMap{ "key": TopicIAMBindingArgs{...} }
type TopicIAMBindingMapOutput ¶
type TopicIAMBindingMapOutput struct{ *pulumi.OutputState }
func (TopicIAMBindingMapOutput) ElementType ¶
func (TopicIAMBindingMapOutput) ElementType() reflect.Type
func (TopicIAMBindingMapOutput) MapIndex ¶
func (o TopicIAMBindingMapOutput) MapIndex(k pulumi.StringInput) TopicIAMBindingOutput
func (TopicIAMBindingMapOutput) ToTopicIAMBindingMapOutput ¶
func (o TopicIAMBindingMapOutput) ToTopicIAMBindingMapOutput() TopicIAMBindingMapOutput
func (TopicIAMBindingMapOutput) ToTopicIAMBindingMapOutputWithContext ¶
func (o TopicIAMBindingMapOutput) ToTopicIAMBindingMapOutputWithContext(ctx context.Context) TopicIAMBindingMapOutput
type TopicIAMBindingOutput ¶
type TopicIAMBindingOutput struct{ *pulumi.OutputState }
func (TopicIAMBindingOutput) Condition ¶ added in v6.23.0
func (o TopicIAMBindingOutput) Condition() TopicIAMBindingConditionPtrOutput
func (TopicIAMBindingOutput) ElementType ¶
func (TopicIAMBindingOutput) ElementType() reflect.Type
func (TopicIAMBindingOutput) Etag ¶ added in v6.23.0
func (o TopicIAMBindingOutput) Etag() pulumi.StringOutput
(Computed) The etag of the IAM policy.
func (TopicIAMBindingOutput) Members ¶ added in v6.23.0
func (o TopicIAMBindingOutput) Members() pulumi.StringArrayOutput
func (TopicIAMBindingOutput) Project ¶ added in v6.23.0
func (o TopicIAMBindingOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
func (TopicIAMBindingOutput) Role ¶ added in v6.23.0
func (o TopicIAMBindingOutput) Role() pulumi.StringOutput
The role that should be applied. Only one `pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.
func (TopicIAMBindingOutput) ToTopicIAMBindingOutput ¶
func (o TopicIAMBindingOutput) ToTopicIAMBindingOutput() TopicIAMBindingOutput
func (TopicIAMBindingOutput) ToTopicIAMBindingOutputWithContext ¶
func (o TopicIAMBindingOutput) ToTopicIAMBindingOutputWithContext(ctx context.Context) TopicIAMBindingOutput
func (TopicIAMBindingOutput) Topic ¶ added in v6.23.0
func (o TopicIAMBindingOutput) Topic() pulumi.StringOutput
Used to find the parent resource to bind the IAM policy to
type TopicIAMBindingState ¶
type TopicIAMBindingState struct { Condition TopicIAMBindingConditionPtrInput // (Computed) The etag of the IAM policy. Etag pulumi.StringPtrInput Members pulumi.StringArrayInput // The ID of the project in which the resource belongs. // If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringPtrInput // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringPtrInput }
func (TopicIAMBindingState) ElementType ¶
func (TopicIAMBindingState) ElementType() reflect.Type
type TopicIAMMember ¶
type TopicIAMMember struct { pulumi.CustomResourceState Condition TopicIAMMemberConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` Member pulumi.StringOutput `pulumi:"member"` // The ID of the project in which the resource belongs. // If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `pubsub.TopicIAMBinding` 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"` // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringOutput `pulumi:"topic"` }
Three different resources help you manage your IAM policy for Cloud Pub/Sub Topic. Each of these resources serves a different use case:
* `pubsub.TopicIAMPolicy`: Authoritative. Sets the IAM policy for the topic and replaces any existing policy already attached. * `pubsub.TopicIAMBinding`: 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 topic are preserved. * `pubsub.TopicIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the topic are preserved.
> **Note:** `pubsub.TopicIAMPolicy` **cannot** be used in conjunction with `pubsub.TopicIAMBinding` and `pubsub.TopicIAMMember` or they will fight over what your policy should be.
> **Note:** `pubsub.TopicIAMBinding` resources **can be** used in conjunction with `pubsub.TopicIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_pubsub\_topic\_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/pubsub" "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/viewer", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = pubsub.NewTopicIAMPolicy(ctx, "policy", &pubsub.TopicIAMPolicyArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_topic\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewTopicIAMBinding(ctx, "binding", &pubsub.TopicIAMBindingArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), Role: pulumi.String("roles/viewer"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_topic\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewTopicIAMMember(ctx, "member", &pubsub.TopicIAMMemberArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), Role: pulumi.String("roles/viewer"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/topics/{{name}} * {{project}}/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Pub/Sub topic IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMMember:TopicIAMMember editor "projects/{{project}}/topics/{{topic}} roles/viewer user:jane@example.com"
```
IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMMember:TopicIAMMember editor "projects/{{project}}/topics/{{topic}} roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMMember:TopicIAMMember editor projects/{{project}}/topics/{{topic}}
```
-> **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 GetTopicIAMMember ¶
func GetTopicIAMMember(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TopicIAMMemberState, opts ...pulumi.ResourceOption) (*TopicIAMMember, error)
GetTopicIAMMember gets an existing TopicIAMMember 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 NewTopicIAMMember ¶
func NewTopicIAMMember(ctx *pulumi.Context, name string, args *TopicIAMMemberArgs, opts ...pulumi.ResourceOption) (*TopicIAMMember, error)
NewTopicIAMMember registers a new resource with the given unique name, arguments, and options.
func (*TopicIAMMember) ElementType ¶
func (*TopicIAMMember) ElementType() reflect.Type
func (*TopicIAMMember) ToTopicIAMMemberOutput ¶
func (i *TopicIAMMember) ToTopicIAMMemberOutput() TopicIAMMemberOutput
func (*TopicIAMMember) ToTopicIAMMemberOutputWithContext ¶
func (i *TopicIAMMember) ToTopicIAMMemberOutputWithContext(ctx context.Context) TopicIAMMemberOutput
type TopicIAMMemberArgs ¶
type TopicIAMMemberArgs struct { Condition TopicIAMMemberConditionPtrInput Member pulumi.StringInput // The ID of the project in which the resource belongs. // If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringInput // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringInput }
The set of arguments for constructing a TopicIAMMember resource.
func (TopicIAMMemberArgs) ElementType ¶
func (TopicIAMMemberArgs) ElementType() reflect.Type
type TopicIAMMemberArray ¶
type TopicIAMMemberArray []TopicIAMMemberInput
func (TopicIAMMemberArray) ElementType ¶
func (TopicIAMMemberArray) ElementType() reflect.Type
func (TopicIAMMemberArray) ToTopicIAMMemberArrayOutput ¶
func (i TopicIAMMemberArray) ToTopicIAMMemberArrayOutput() TopicIAMMemberArrayOutput
func (TopicIAMMemberArray) ToTopicIAMMemberArrayOutputWithContext ¶
func (i TopicIAMMemberArray) ToTopicIAMMemberArrayOutputWithContext(ctx context.Context) TopicIAMMemberArrayOutput
type TopicIAMMemberArrayInput ¶
type TopicIAMMemberArrayInput interface { pulumi.Input ToTopicIAMMemberArrayOutput() TopicIAMMemberArrayOutput ToTopicIAMMemberArrayOutputWithContext(context.Context) TopicIAMMemberArrayOutput }
TopicIAMMemberArrayInput is an input type that accepts TopicIAMMemberArray and TopicIAMMemberArrayOutput values. You can construct a concrete instance of `TopicIAMMemberArrayInput` via:
TopicIAMMemberArray{ TopicIAMMemberArgs{...} }
type TopicIAMMemberArrayOutput ¶
type TopicIAMMemberArrayOutput struct{ *pulumi.OutputState }
func (TopicIAMMemberArrayOutput) ElementType ¶
func (TopicIAMMemberArrayOutput) ElementType() reflect.Type
func (TopicIAMMemberArrayOutput) Index ¶
func (o TopicIAMMemberArrayOutput) Index(i pulumi.IntInput) TopicIAMMemberOutput
func (TopicIAMMemberArrayOutput) ToTopicIAMMemberArrayOutput ¶
func (o TopicIAMMemberArrayOutput) ToTopicIAMMemberArrayOutput() TopicIAMMemberArrayOutput
func (TopicIAMMemberArrayOutput) ToTopicIAMMemberArrayOutputWithContext ¶
func (o TopicIAMMemberArrayOutput) ToTopicIAMMemberArrayOutputWithContext(ctx context.Context) TopicIAMMemberArrayOutput
type TopicIAMMemberCondition ¶
type TopicIAMMemberConditionArgs ¶
type TopicIAMMemberConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (TopicIAMMemberConditionArgs) ElementType ¶
func (TopicIAMMemberConditionArgs) ElementType() reflect.Type
func (TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionOutput ¶
func (i TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionOutput() TopicIAMMemberConditionOutput
func (TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionOutputWithContext ¶
func (i TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionOutputWithContext(ctx context.Context) TopicIAMMemberConditionOutput
func (TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionPtrOutput ¶
func (i TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionPtrOutput() TopicIAMMemberConditionPtrOutput
func (TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionPtrOutputWithContext ¶
func (i TopicIAMMemberConditionArgs) ToTopicIAMMemberConditionPtrOutputWithContext(ctx context.Context) TopicIAMMemberConditionPtrOutput
type TopicIAMMemberConditionInput ¶
type TopicIAMMemberConditionInput interface { pulumi.Input ToTopicIAMMemberConditionOutput() TopicIAMMemberConditionOutput ToTopicIAMMemberConditionOutputWithContext(context.Context) TopicIAMMemberConditionOutput }
TopicIAMMemberConditionInput is an input type that accepts TopicIAMMemberConditionArgs and TopicIAMMemberConditionOutput values. You can construct a concrete instance of `TopicIAMMemberConditionInput` via:
TopicIAMMemberConditionArgs{...}
type TopicIAMMemberConditionOutput ¶
type TopicIAMMemberConditionOutput struct{ *pulumi.OutputState }
func (TopicIAMMemberConditionOutput) Description ¶
func (o TopicIAMMemberConditionOutput) Description() pulumi.StringPtrOutput
func (TopicIAMMemberConditionOutput) ElementType ¶
func (TopicIAMMemberConditionOutput) ElementType() reflect.Type
func (TopicIAMMemberConditionOutput) Expression ¶
func (o TopicIAMMemberConditionOutput) Expression() pulumi.StringOutput
func (TopicIAMMemberConditionOutput) Title ¶
func (o TopicIAMMemberConditionOutput) Title() pulumi.StringOutput
func (TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionOutput ¶
func (o TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionOutput() TopicIAMMemberConditionOutput
func (TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionOutputWithContext ¶
func (o TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionOutputWithContext(ctx context.Context) TopicIAMMemberConditionOutput
func (TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionPtrOutput ¶
func (o TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionPtrOutput() TopicIAMMemberConditionPtrOutput
func (TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionPtrOutputWithContext ¶
func (o TopicIAMMemberConditionOutput) ToTopicIAMMemberConditionPtrOutputWithContext(ctx context.Context) TopicIAMMemberConditionPtrOutput
type TopicIAMMemberConditionPtrInput ¶
type TopicIAMMemberConditionPtrInput interface { pulumi.Input ToTopicIAMMemberConditionPtrOutput() TopicIAMMemberConditionPtrOutput ToTopicIAMMemberConditionPtrOutputWithContext(context.Context) TopicIAMMemberConditionPtrOutput }
TopicIAMMemberConditionPtrInput is an input type that accepts TopicIAMMemberConditionArgs, TopicIAMMemberConditionPtr and TopicIAMMemberConditionPtrOutput values. You can construct a concrete instance of `TopicIAMMemberConditionPtrInput` via:
TopicIAMMemberConditionArgs{...} or: nil
func TopicIAMMemberConditionPtr ¶
func TopicIAMMemberConditionPtr(v *TopicIAMMemberConditionArgs) TopicIAMMemberConditionPtrInput
type TopicIAMMemberConditionPtrOutput ¶
type TopicIAMMemberConditionPtrOutput struct{ *pulumi.OutputState }
func (TopicIAMMemberConditionPtrOutput) Description ¶
func (o TopicIAMMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
func (TopicIAMMemberConditionPtrOutput) Elem ¶
func (o TopicIAMMemberConditionPtrOutput) Elem() TopicIAMMemberConditionOutput
func (TopicIAMMemberConditionPtrOutput) ElementType ¶
func (TopicIAMMemberConditionPtrOutput) ElementType() reflect.Type
func (TopicIAMMemberConditionPtrOutput) Expression ¶
func (o TopicIAMMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (TopicIAMMemberConditionPtrOutput) Title ¶
func (o TopicIAMMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
func (TopicIAMMemberConditionPtrOutput) ToTopicIAMMemberConditionPtrOutput ¶
func (o TopicIAMMemberConditionPtrOutput) ToTopicIAMMemberConditionPtrOutput() TopicIAMMemberConditionPtrOutput
func (TopicIAMMemberConditionPtrOutput) ToTopicIAMMemberConditionPtrOutputWithContext ¶
func (o TopicIAMMemberConditionPtrOutput) ToTopicIAMMemberConditionPtrOutputWithContext(ctx context.Context) TopicIAMMemberConditionPtrOutput
type TopicIAMMemberInput ¶
type TopicIAMMemberInput interface { pulumi.Input ToTopicIAMMemberOutput() TopicIAMMemberOutput ToTopicIAMMemberOutputWithContext(ctx context.Context) TopicIAMMemberOutput }
type TopicIAMMemberMap ¶
type TopicIAMMemberMap map[string]TopicIAMMemberInput
func (TopicIAMMemberMap) ElementType ¶
func (TopicIAMMemberMap) ElementType() reflect.Type
func (TopicIAMMemberMap) ToTopicIAMMemberMapOutput ¶
func (i TopicIAMMemberMap) ToTopicIAMMemberMapOutput() TopicIAMMemberMapOutput
func (TopicIAMMemberMap) ToTopicIAMMemberMapOutputWithContext ¶
func (i TopicIAMMemberMap) ToTopicIAMMemberMapOutputWithContext(ctx context.Context) TopicIAMMemberMapOutput
type TopicIAMMemberMapInput ¶
type TopicIAMMemberMapInput interface { pulumi.Input ToTopicIAMMemberMapOutput() TopicIAMMemberMapOutput ToTopicIAMMemberMapOutputWithContext(context.Context) TopicIAMMemberMapOutput }
TopicIAMMemberMapInput is an input type that accepts TopicIAMMemberMap and TopicIAMMemberMapOutput values. You can construct a concrete instance of `TopicIAMMemberMapInput` via:
TopicIAMMemberMap{ "key": TopicIAMMemberArgs{...} }
type TopicIAMMemberMapOutput ¶
type TopicIAMMemberMapOutput struct{ *pulumi.OutputState }
func (TopicIAMMemberMapOutput) ElementType ¶
func (TopicIAMMemberMapOutput) ElementType() reflect.Type
func (TopicIAMMemberMapOutput) MapIndex ¶
func (o TopicIAMMemberMapOutput) MapIndex(k pulumi.StringInput) TopicIAMMemberOutput
func (TopicIAMMemberMapOutput) ToTopicIAMMemberMapOutput ¶
func (o TopicIAMMemberMapOutput) ToTopicIAMMemberMapOutput() TopicIAMMemberMapOutput
func (TopicIAMMemberMapOutput) ToTopicIAMMemberMapOutputWithContext ¶
func (o TopicIAMMemberMapOutput) ToTopicIAMMemberMapOutputWithContext(ctx context.Context) TopicIAMMemberMapOutput
type TopicIAMMemberOutput ¶
type TopicIAMMemberOutput struct{ *pulumi.OutputState }
func (TopicIAMMemberOutput) Condition ¶ added in v6.23.0
func (o TopicIAMMemberOutput) Condition() TopicIAMMemberConditionPtrOutput
func (TopicIAMMemberOutput) ElementType ¶
func (TopicIAMMemberOutput) ElementType() reflect.Type
func (TopicIAMMemberOutput) Etag ¶ added in v6.23.0
func (o TopicIAMMemberOutput) Etag() pulumi.StringOutput
(Computed) The etag of the IAM policy.
func (TopicIAMMemberOutput) Member ¶ added in v6.23.0
func (o TopicIAMMemberOutput) Member() pulumi.StringOutput
func (TopicIAMMemberOutput) Project ¶ added in v6.23.0
func (o TopicIAMMemberOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
func (TopicIAMMemberOutput) Role ¶ added in v6.23.0
func (o TopicIAMMemberOutput) Role() pulumi.StringOutput
The role that should be applied. Only one `pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.
func (TopicIAMMemberOutput) ToTopicIAMMemberOutput ¶
func (o TopicIAMMemberOutput) ToTopicIAMMemberOutput() TopicIAMMemberOutput
func (TopicIAMMemberOutput) ToTopicIAMMemberOutputWithContext ¶
func (o TopicIAMMemberOutput) ToTopicIAMMemberOutputWithContext(ctx context.Context) TopicIAMMemberOutput
func (TopicIAMMemberOutput) Topic ¶ added in v6.23.0
func (o TopicIAMMemberOutput) Topic() pulumi.StringOutput
Used to find the parent resource to bind the IAM policy to
type TopicIAMMemberState ¶
type TopicIAMMemberState struct { Condition TopicIAMMemberConditionPtrInput // (Computed) The etag of the IAM policy. Etag pulumi.StringPtrInput Member pulumi.StringPtrInput // The ID of the project in which the resource belongs. // If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringPtrInput // The role that should be applied. Only one // `pubsub.TopicIAMBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Role pulumi.StringPtrInput // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringPtrInput }
func (TopicIAMMemberState) ElementType ¶
func (TopicIAMMemberState) ElementType() reflect.Type
type TopicIAMPolicy ¶
type TopicIAMPolicy struct { pulumi.CustomResourceState // (Computed) The etag of the IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The policy data generated by // a `organizations.getIAMPolicy` data source. PolicyData pulumi.StringOutput `pulumi:"policyData"` // The ID of the project in which the resource belongs. // If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringOutput `pulumi:"topic"` }
Three different resources help you manage your IAM policy for Cloud Pub/Sub Topic. Each of these resources serves a different use case:
* `pubsub.TopicIAMPolicy`: Authoritative. Sets the IAM policy for the topic and replaces any existing policy already attached. * `pubsub.TopicIAMBinding`: 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 topic are preserved. * `pubsub.TopicIAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the topic are preserved.
> **Note:** `pubsub.TopicIAMPolicy` **cannot** be used in conjunction with `pubsub.TopicIAMBinding` and `pubsub.TopicIAMMember` or they will fight over what your policy should be.
> **Note:** `pubsub.TopicIAMBinding` resources **can be** used in conjunction with `pubsub.TopicIAMMember` resources **only if** they do not grant privilege to the same role.
## google\_pubsub\_topic\_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/pubsub" "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/viewer", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = pubsub.NewTopicIAMPolicy(ctx, "policy", &pubsub.TopicIAMPolicyArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_topic\_iam\_binding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewTopicIAMBinding(ctx, "binding", &pubsub.TopicIAMBindingArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), Role: pulumi.String("roles/viewer"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## google\_pubsub\_topic\_iam\_member
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/pubsub" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := pubsub.NewTopicIAMMember(ctx, "member", &pubsub.TopicIAMMemberArgs{ Project: pulumi.Any(google_pubsub_topic.Example.Project), Topic: pulumi.Any(google_pubsub_topic.Example.Name), Role: pulumi.String("roles/viewer"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/topics/{{name}} * {{project}}/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Pub/Sub topic IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMPolicy:TopicIAMPolicy editor "projects/{{project}}/topics/{{topic}} roles/viewer user:jane@example.com"
```
IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMPolicy:TopicIAMPolicy editor "projects/{{project}}/topics/{{topic}} roles/viewer"
```
IAM policy imports use the identifier of the resource in question, e.g.
```sh
$ pulumi import gcp:pubsub/topicIAMPolicy:TopicIAMPolicy editor projects/{{project}}/topics/{{topic}}
```
-> **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 GetTopicIAMPolicy ¶
func GetTopicIAMPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TopicIAMPolicyState, opts ...pulumi.ResourceOption) (*TopicIAMPolicy, error)
GetTopicIAMPolicy gets an existing TopicIAMPolicy 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 NewTopicIAMPolicy ¶
func NewTopicIAMPolicy(ctx *pulumi.Context, name string, args *TopicIAMPolicyArgs, opts ...pulumi.ResourceOption) (*TopicIAMPolicy, error)
NewTopicIAMPolicy registers a new resource with the given unique name, arguments, and options.
func (*TopicIAMPolicy) ElementType ¶
func (*TopicIAMPolicy) ElementType() reflect.Type
func (*TopicIAMPolicy) ToTopicIAMPolicyOutput ¶
func (i *TopicIAMPolicy) ToTopicIAMPolicyOutput() TopicIAMPolicyOutput
func (*TopicIAMPolicy) ToTopicIAMPolicyOutputWithContext ¶
func (i *TopicIAMPolicy) ToTopicIAMPolicyOutputWithContext(ctx context.Context) TopicIAMPolicyOutput
type TopicIAMPolicyArgs ¶
type TopicIAMPolicyArgs struct { // 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 project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringPtrInput // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringInput }
The set of arguments for constructing a TopicIAMPolicy resource.
func (TopicIAMPolicyArgs) ElementType ¶
func (TopicIAMPolicyArgs) ElementType() reflect.Type
type TopicIAMPolicyArray ¶
type TopicIAMPolicyArray []TopicIAMPolicyInput
func (TopicIAMPolicyArray) ElementType ¶
func (TopicIAMPolicyArray) ElementType() reflect.Type
func (TopicIAMPolicyArray) ToTopicIAMPolicyArrayOutput ¶
func (i TopicIAMPolicyArray) ToTopicIAMPolicyArrayOutput() TopicIAMPolicyArrayOutput
func (TopicIAMPolicyArray) ToTopicIAMPolicyArrayOutputWithContext ¶
func (i TopicIAMPolicyArray) ToTopicIAMPolicyArrayOutputWithContext(ctx context.Context) TopicIAMPolicyArrayOutput
type TopicIAMPolicyArrayInput ¶
type TopicIAMPolicyArrayInput interface { pulumi.Input ToTopicIAMPolicyArrayOutput() TopicIAMPolicyArrayOutput ToTopicIAMPolicyArrayOutputWithContext(context.Context) TopicIAMPolicyArrayOutput }
TopicIAMPolicyArrayInput is an input type that accepts TopicIAMPolicyArray and TopicIAMPolicyArrayOutput values. You can construct a concrete instance of `TopicIAMPolicyArrayInput` via:
TopicIAMPolicyArray{ TopicIAMPolicyArgs{...} }
type TopicIAMPolicyArrayOutput ¶
type TopicIAMPolicyArrayOutput struct{ *pulumi.OutputState }
func (TopicIAMPolicyArrayOutput) ElementType ¶
func (TopicIAMPolicyArrayOutput) ElementType() reflect.Type
func (TopicIAMPolicyArrayOutput) Index ¶
func (o TopicIAMPolicyArrayOutput) Index(i pulumi.IntInput) TopicIAMPolicyOutput
func (TopicIAMPolicyArrayOutput) ToTopicIAMPolicyArrayOutput ¶
func (o TopicIAMPolicyArrayOutput) ToTopicIAMPolicyArrayOutput() TopicIAMPolicyArrayOutput
func (TopicIAMPolicyArrayOutput) ToTopicIAMPolicyArrayOutputWithContext ¶
func (o TopicIAMPolicyArrayOutput) ToTopicIAMPolicyArrayOutputWithContext(ctx context.Context) TopicIAMPolicyArrayOutput
type TopicIAMPolicyInput ¶
type TopicIAMPolicyInput interface { pulumi.Input ToTopicIAMPolicyOutput() TopicIAMPolicyOutput ToTopicIAMPolicyOutputWithContext(ctx context.Context) TopicIAMPolicyOutput }
type TopicIAMPolicyMap ¶
type TopicIAMPolicyMap map[string]TopicIAMPolicyInput
func (TopicIAMPolicyMap) ElementType ¶
func (TopicIAMPolicyMap) ElementType() reflect.Type
func (TopicIAMPolicyMap) ToTopicIAMPolicyMapOutput ¶
func (i TopicIAMPolicyMap) ToTopicIAMPolicyMapOutput() TopicIAMPolicyMapOutput
func (TopicIAMPolicyMap) ToTopicIAMPolicyMapOutputWithContext ¶
func (i TopicIAMPolicyMap) ToTopicIAMPolicyMapOutputWithContext(ctx context.Context) TopicIAMPolicyMapOutput
type TopicIAMPolicyMapInput ¶
type TopicIAMPolicyMapInput interface { pulumi.Input ToTopicIAMPolicyMapOutput() TopicIAMPolicyMapOutput ToTopicIAMPolicyMapOutputWithContext(context.Context) TopicIAMPolicyMapOutput }
TopicIAMPolicyMapInput is an input type that accepts TopicIAMPolicyMap and TopicIAMPolicyMapOutput values. You can construct a concrete instance of `TopicIAMPolicyMapInput` via:
TopicIAMPolicyMap{ "key": TopicIAMPolicyArgs{...} }
type TopicIAMPolicyMapOutput ¶
type TopicIAMPolicyMapOutput struct{ *pulumi.OutputState }
func (TopicIAMPolicyMapOutput) ElementType ¶
func (TopicIAMPolicyMapOutput) ElementType() reflect.Type
func (TopicIAMPolicyMapOutput) MapIndex ¶
func (o TopicIAMPolicyMapOutput) MapIndex(k pulumi.StringInput) TopicIAMPolicyOutput
func (TopicIAMPolicyMapOutput) ToTopicIAMPolicyMapOutput ¶
func (o TopicIAMPolicyMapOutput) ToTopicIAMPolicyMapOutput() TopicIAMPolicyMapOutput
func (TopicIAMPolicyMapOutput) ToTopicIAMPolicyMapOutputWithContext ¶
func (o TopicIAMPolicyMapOutput) ToTopicIAMPolicyMapOutputWithContext(ctx context.Context) TopicIAMPolicyMapOutput
type TopicIAMPolicyOutput ¶
type TopicIAMPolicyOutput struct{ *pulumi.OutputState }
func (TopicIAMPolicyOutput) ElementType ¶
func (TopicIAMPolicyOutput) ElementType() reflect.Type
func (TopicIAMPolicyOutput) Etag ¶ added in v6.23.0
func (o TopicIAMPolicyOutput) Etag() pulumi.StringOutput
(Computed) The etag of the IAM policy.
func (TopicIAMPolicyOutput) PolicyData ¶ added in v6.23.0
func (o TopicIAMPolicyOutput) PolicyData() pulumi.StringOutput
The policy data generated by a `organizations.getIAMPolicy` data source.
func (TopicIAMPolicyOutput) Project ¶ added in v6.23.0
func (o TopicIAMPolicyOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
func (TopicIAMPolicyOutput) ToTopicIAMPolicyOutput ¶
func (o TopicIAMPolicyOutput) ToTopicIAMPolicyOutput() TopicIAMPolicyOutput
func (TopicIAMPolicyOutput) ToTopicIAMPolicyOutputWithContext ¶
func (o TopicIAMPolicyOutput) ToTopicIAMPolicyOutputWithContext(ctx context.Context) TopicIAMPolicyOutput
func (TopicIAMPolicyOutput) Topic ¶ added in v6.23.0
func (o TopicIAMPolicyOutput) Topic() pulumi.StringOutput
Used to find the parent resource to bind the IAM policy to
type TopicIAMPolicyState ¶
type TopicIAMPolicyState struct { // (Computed) The etag of the IAM policy. Etag 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 project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used. Project pulumi.StringPtrInput // Used to find the parent resource to bind the IAM policy to Topic pulumi.StringPtrInput }
func (TopicIAMPolicyState) ElementType ¶
func (TopicIAMPolicyState) ElementType() reflect.Type
type TopicInput ¶
type TopicInput interface { pulumi.Input ToTopicOutput() TopicOutput ToTopicOutputWithContext(ctx context.Context) TopicOutput }
type TopicMap ¶
type TopicMap map[string]TopicInput
func (TopicMap) ElementType ¶
func (TopicMap) ToTopicMapOutput ¶
func (i TopicMap) ToTopicMapOutput() TopicMapOutput
func (TopicMap) ToTopicMapOutputWithContext ¶
func (i TopicMap) ToTopicMapOutputWithContext(ctx context.Context) TopicMapOutput
type TopicMapInput ¶
type TopicMapInput interface { pulumi.Input ToTopicMapOutput() TopicMapOutput ToTopicMapOutputWithContext(context.Context) TopicMapOutput }
TopicMapInput is an input type that accepts TopicMap and TopicMapOutput values. You can construct a concrete instance of `TopicMapInput` via:
TopicMap{ "key": TopicArgs{...} }
type TopicMapOutput ¶
type TopicMapOutput struct{ *pulumi.OutputState }
func (TopicMapOutput) ElementType ¶
func (TopicMapOutput) ElementType() reflect.Type
func (TopicMapOutput) MapIndex ¶
func (o TopicMapOutput) MapIndex(k pulumi.StringInput) TopicOutput
func (TopicMapOutput) ToTopicMapOutput ¶
func (o TopicMapOutput) ToTopicMapOutput() TopicMapOutput
func (TopicMapOutput) ToTopicMapOutputWithContext ¶
func (o TopicMapOutput) ToTopicMapOutputWithContext(ctx context.Context) TopicMapOutput
type TopicMessageStoragePolicy ¶
type TopicMessageStoragePolicy 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. AllowedPersistenceRegions []string `pulumi:"allowedPersistenceRegions"` }
type TopicMessageStoragePolicyArgs ¶
type TopicMessageStoragePolicyArgs 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. AllowedPersistenceRegions pulumi.StringArrayInput `pulumi:"allowedPersistenceRegions"` }
func (TopicMessageStoragePolicyArgs) ElementType ¶
func (TopicMessageStoragePolicyArgs) ElementType() reflect.Type
func (TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyOutput ¶
func (i TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyOutput() TopicMessageStoragePolicyOutput
func (TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyOutputWithContext ¶
func (i TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyOutputWithContext(ctx context.Context) TopicMessageStoragePolicyOutput
func (TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyPtrOutput ¶
func (i TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyPtrOutput() TopicMessageStoragePolicyPtrOutput
func (TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyPtrOutputWithContext ¶
func (i TopicMessageStoragePolicyArgs) ToTopicMessageStoragePolicyPtrOutputWithContext(ctx context.Context) TopicMessageStoragePolicyPtrOutput
type TopicMessageStoragePolicyInput ¶
type TopicMessageStoragePolicyInput interface { pulumi.Input ToTopicMessageStoragePolicyOutput() TopicMessageStoragePolicyOutput ToTopicMessageStoragePolicyOutputWithContext(context.Context) TopicMessageStoragePolicyOutput }
TopicMessageStoragePolicyInput is an input type that accepts TopicMessageStoragePolicyArgs and TopicMessageStoragePolicyOutput values. You can construct a concrete instance of `TopicMessageStoragePolicyInput` via:
TopicMessageStoragePolicyArgs{...}
type TopicMessageStoragePolicyOutput ¶
type TopicMessageStoragePolicyOutput struct{ *pulumi.OutputState }
func (TopicMessageStoragePolicyOutput) AllowedPersistenceRegions ¶
func (o TopicMessageStoragePolicyOutput) AllowedPersistenceRegions() pulumi.StringArrayOutput
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.
func (TopicMessageStoragePolicyOutput) ElementType ¶
func (TopicMessageStoragePolicyOutput) ElementType() reflect.Type
func (TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyOutput ¶
func (o TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyOutput() TopicMessageStoragePolicyOutput
func (TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyOutputWithContext ¶
func (o TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyOutputWithContext(ctx context.Context) TopicMessageStoragePolicyOutput
func (TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyPtrOutput ¶
func (o TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyPtrOutput() TopicMessageStoragePolicyPtrOutput
func (TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyPtrOutputWithContext ¶
func (o TopicMessageStoragePolicyOutput) ToTopicMessageStoragePolicyPtrOutputWithContext(ctx context.Context) TopicMessageStoragePolicyPtrOutput
type TopicMessageStoragePolicyPtrInput ¶
type TopicMessageStoragePolicyPtrInput interface { pulumi.Input ToTopicMessageStoragePolicyPtrOutput() TopicMessageStoragePolicyPtrOutput ToTopicMessageStoragePolicyPtrOutputWithContext(context.Context) TopicMessageStoragePolicyPtrOutput }
TopicMessageStoragePolicyPtrInput is an input type that accepts TopicMessageStoragePolicyArgs, TopicMessageStoragePolicyPtr and TopicMessageStoragePolicyPtrOutput values. You can construct a concrete instance of `TopicMessageStoragePolicyPtrInput` via:
TopicMessageStoragePolicyArgs{...} or: nil
func TopicMessageStoragePolicyPtr ¶
func TopicMessageStoragePolicyPtr(v *TopicMessageStoragePolicyArgs) TopicMessageStoragePolicyPtrInput
type TopicMessageStoragePolicyPtrOutput ¶
type TopicMessageStoragePolicyPtrOutput struct{ *pulumi.OutputState }
func (TopicMessageStoragePolicyPtrOutput) AllowedPersistenceRegions ¶
func (o TopicMessageStoragePolicyPtrOutput) AllowedPersistenceRegions() pulumi.StringArrayOutput
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.
func (TopicMessageStoragePolicyPtrOutput) Elem ¶
func (o TopicMessageStoragePolicyPtrOutput) Elem() TopicMessageStoragePolicyOutput
func (TopicMessageStoragePolicyPtrOutput) ElementType ¶
func (TopicMessageStoragePolicyPtrOutput) ElementType() reflect.Type
func (TopicMessageStoragePolicyPtrOutput) ToTopicMessageStoragePolicyPtrOutput ¶
func (o TopicMessageStoragePolicyPtrOutput) ToTopicMessageStoragePolicyPtrOutput() TopicMessageStoragePolicyPtrOutput
func (TopicMessageStoragePolicyPtrOutput) ToTopicMessageStoragePolicyPtrOutputWithContext ¶
func (o TopicMessageStoragePolicyPtrOutput) ToTopicMessageStoragePolicyPtrOutputWithContext(ctx context.Context) TopicMessageStoragePolicyPtrOutput
type TopicOutput ¶
type TopicOutput struct{ *pulumi.OutputState }
func (TopicOutput) ElementType ¶
func (TopicOutput) ElementType() reflect.Type
func (TopicOutput) KmsKeyName ¶ added in v6.23.0
func (o TopicOutput) KmsKeyName() pulumi.StringPtrOutput
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/*`
func (TopicOutput) Labels ¶ added in v6.23.0
func (o TopicOutput) Labels() pulumi.StringMapOutput
A set of key/value label pairs to assign to this Topic.
func (TopicOutput) MessageRetentionDuration ¶ added in v6.23.0
func (o TopicOutput) MessageRetentionDuration() pulumi.StringPtrOutput
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.
func (TopicOutput) MessageStoragePolicy ¶ added in v6.23.0
func (o TopicOutput) MessageStoragePolicy() TopicMessageStoragePolicyOutput
Policy constraining the set of Google Cloud Platform regions where messages published to the topic may be stored. If not present, then no constraints are in effect. Structure is documented below.
func (TopicOutput) Name ¶ added in v6.23.0
func (o TopicOutput) Name() pulumi.StringOutput
Name of the topic.
func (TopicOutput) Project ¶ added in v6.23.0
func (o TopicOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (TopicOutput) SchemaSettings ¶ added in v6.23.0
func (o TopicOutput) SchemaSettings() TopicSchemaSettingsOutput
Settings for validating messages published against a schema. Structure is documented below.
func (TopicOutput) ToTopicOutput ¶
func (o TopicOutput) ToTopicOutput() TopicOutput
func (TopicOutput) ToTopicOutputWithContext ¶
func (o TopicOutput) ToTopicOutputWithContext(ctx context.Context) TopicOutput
type TopicSchemaSettings ¶
type TopicSchemaSettings struct { // The encoding of messages validated against schema. // Default value is `ENCODING_UNSPECIFIED`. // Possible values are `ENCODING_UNSPECIFIED`, `JSON`, and `BINARY`. Encoding *string `pulumi:"encoding"` // 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. Schema string `pulumi:"schema"` }
type TopicSchemaSettingsArgs ¶
type TopicSchemaSettingsArgs struct { // The encoding of messages validated against schema. // Default value is `ENCODING_UNSPECIFIED`. // Possible values are `ENCODING_UNSPECIFIED`, `JSON`, and `BINARY`. Encoding pulumi.StringPtrInput `pulumi:"encoding"` // 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. Schema pulumi.StringInput `pulumi:"schema"` }
func (TopicSchemaSettingsArgs) ElementType ¶
func (TopicSchemaSettingsArgs) ElementType() reflect.Type
func (TopicSchemaSettingsArgs) ToTopicSchemaSettingsOutput ¶
func (i TopicSchemaSettingsArgs) ToTopicSchemaSettingsOutput() TopicSchemaSettingsOutput
func (TopicSchemaSettingsArgs) ToTopicSchemaSettingsOutputWithContext ¶
func (i TopicSchemaSettingsArgs) ToTopicSchemaSettingsOutputWithContext(ctx context.Context) TopicSchemaSettingsOutput
func (TopicSchemaSettingsArgs) ToTopicSchemaSettingsPtrOutput ¶
func (i TopicSchemaSettingsArgs) ToTopicSchemaSettingsPtrOutput() TopicSchemaSettingsPtrOutput
func (TopicSchemaSettingsArgs) ToTopicSchemaSettingsPtrOutputWithContext ¶
func (i TopicSchemaSettingsArgs) ToTopicSchemaSettingsPtrOutputWithContext(ctx context.Context) TopicSchemaSettingsPtrOutput
type TopicSchemaSettingsInput ¶
type TopicSchemaSettingsInput interface { pulumi.Input ToTopicSchemaSettingsOutput() TopicSchemaSettingsOutput ToTopicSchemaSettingsOutputWithContext(context.Context) TopicSchemaSettingsOutput }
TopicSchemaSettingsInput is an input type that accepts TopicSchemaSettingsArgs and TopicSchemaSettingsOutput values. You can construct a concrete instance of `TopicSchemaSettingsInput` via:
TopicSchemaSettingsArgs{...}
type TopicSchemaSettingsOutput ¶
type TopicSchemaSettingsOutput struct{ *pulumi.OutputState }
func (TopicSchemaSettingsOutput) ElementType ¶
func (TopicSchemaSettingsOutput) ElementType() reflect.Type
func (TopicSchemaSettingsOutput) Encoding ¶
func (o TopicSchemaSettingsOutput) Encoding() pulumi.StringPtrOutput
The encoding of messages validated against schema. Default value is `ENCODING_UNSPECIFIED`. Possible values are `ENCODING_UNSPECIFIED`, `JSON`, and `BINARY`.
func (TopicSchemaSettingsOutput) Schema ¶
func (o TopicSchemaSettingsOutput) Schema() pulumi.StringOutput
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.
func (TopicSchemaSettingsOutput) ToTopicSchemaSettingsOutput ¶
func (o TopicSchemaSettingsOutput) ToTopicSchemaSettingsOutput() TopicSchemaSettingsOutput
func (TopicSchemaSettingsOutput) ToTopicSchemaSettingsOutputWithContext ¶
func (o TopicSchemaSettingsOutput) ToTopicSchemaSettingsOutputWithContext(ctx context.Context) TopicSchemaSettingsOutput
func (TopicSchemaSettingsOutput) ToTopicSchemaSettingsPtrOutput ¶
func (o TopicSchemaSettingsOutput) ToTopicSchemaSettingsPtrOutput() TopicSchemaSettingsPtrOutput
func (TopicSchemaSettingsOutput) ToTopicSchemaSettingsPtrOutputWithContext ¶
func (o TopicSchemaSettingsOutput) ToTopicSchemaSettingsPtrOutputWithContext(ctx context.Context) TopicSchemaSettingsPtrOutput
type TopicSchemaSettingsPtrInput ¶
type TopicSchemaSettingsPtrInput interface { pulumi.Input ToTopicSchemaSettingsPtrOutput() TopicSchemaSettingsPtrOutput ToTopicSchemaSettingsPtrOutputWithContext(context.Context) TopicSchemaSettingsPtrOutput }
TopicSchemaSettingsPtrInput is an input type that accepts TopicSchemaSettingsArgs, TopicSchemaSettingsPtr and TopicSchemaSettingsPtrOutput values. You can construct a concrete instance of `TopicSchemaSettingsPtrInput` via:
TopicSchemaSettingsArgs{...} or: nil
func TopicSchemaSettingsPtr ¶
func TopicSchemaSettingsPtr(v *TopicSchemaSettingsArgs) TopicSchemaSettingsPtrInput
type TopicSchemaSettingsPtrOutput ¶
type TopicSchemaSettingsPtrOutput struct{ *pulumi.OutputState }
func (TopicSchemaSettingsPtrOutput) Elem ¶
func (o TopicSchemaSettingsPtrOutput) Elem() TopicSchemaSettingsOutput
func (TopicSchemaSettingsPtrOutput) ElementType ¶
func (TopicSchemaSettingsPtrOutput) ElementType() reflect.Type
func (TopicSchemaSettingsPtrOutput) Encoding ¶
func (o TopicSchemaSettingsPtrOutput) Encoding() pulumi.StringPtrOutput
The encoding of messages validated against schema. Default value is `ENCODING_UNSPECIFIED`. Possible values are `ENCODING_UNSPECIFIED`, `JSON`, and `BINARY`.
func (TopicSchemaSettingsPtrOutput) Schema ¶
func (o TopicSchemaSettingsPtrOutput) Schema() pulumi.StringPtrOutput
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.
func (TopicSchemaSettingsPtrOutput) ToTopicSchemaSettingsPtrOutput ¶
func (o TopicSchemaSettingsPtrOutput) ToTopicSchemaSettingsPtrOutput() TopicSchemaSettingsPtrOutput
func (TopicSchemaSettingsPtrOutput) ToTopicSchemaSettingsPtrOutputWithContext ¶
func (o TopicSchemaSettingsPtrOutput) ToTopicSchemaSettingsPtrOutputWithContext(ctx context.Context) TopicSchemaSettingsPtrOutput
type TopicState ¶
type TopicState struct { // 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/*` KmsKeyName pulumi.StringPtrInput // A set of key/value label pairs to assign to this Topic. Labels pulumi.StringMapInput // 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. MessageRetentionDuration pulumi.StringPtrInput // Policy constraining the set of Google Cloud Platform regions where // messages published to the topic may be stored. If not present, then no // constraints are in effect. // Structure is documented below. MessageStoragePolicy TopicMessageStoragePolicyPtrInput // Name of the topic. 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 // Settings for validating messages published against a schema. // Structure is documented below. SchemaSettings TopicSchemaSettingsPtrInput }
func (TopicState) ElementType ¶
func (TopicState) ElementType() reflect.Type