Documentation ¶
Index ¶
- type AuthorizedView
- type AuthorizedViewArgs
- type AuthorizedViewArray
- type AuthorizedViewArrayInput
- type AuthorizedViewArrayOutput
- func (AuthorizedViewArrayOutput) ElementType() reflect.Type
- func (o AuthorizedViewArrayOutput) Index(i pulumi.IntInput) AuthorizedViewOutput
- func (o AuthorizedViewArrayOutput) ToAuthorizedViewArrayOutput() AuthorizedViewArrayOutput
- func (o AuthorizedViewArrayOutput) ToAuthorizedViewArrayOutputWithContext(ctx context.Context) AuthorizedViewArrayOutput
- type AuthorizedViewInput
- type AuthorizedViewMap
- type AuthorizedViewMapInput
- type AuthorizedViewMapOutput
- func (AuthorizedViewMapOutput) ElementType() reflect.Type
- func (o AuthorizedViewMapOutput) MapIndex(k pulumi.StringInput) AuthorizedViewOutput
- func (o AuthorizedViewMapOutput) ToAuthorizedViewMapOutput() AuthorizedViewMapOutput
- func (o AuthorizedViewMapOutput) ToAuthorizedViewMapOutputWithContext(ctx context.Context) AuthorizedViewMapOutput
- type AuthorizedViewOutput
- func (o AuthorizedViewOutput) DeletionProtection() pulumi.StringOutput
- func (AuthorizedViewOutput) ElementType() reflect.Type
- func (o AuthorizedViewOutput) InstanceName() pulumi.StringOutput
- func (o AuthorizedViewOutput) Name() pulumi.StringOutput
- func (o AuthorizedViewOutput) Project() pulumi.StringOutput
- func (o AuthorizedViewOutput) SubsetView() AuthorizedViewSubsetViewPtrOutput
- func (o AuthorizedViewOutput) TableName() pulumi.StringOutput
- func (o AuthorizedViewOutput) ToAuthorizedViewOutput() AuthorizedViewOutput
- func (o AuthorizedViewOutput) ToAuthorizedViewOutputWithContext(ctx context.Context) AuthorizedViewOutput
- type AuthorizedViewState
- type AuthorizedViewSubsetView
- type AuthorizedViewSubsetViewArgs
- func (AuthorizedViewSubsetViewArgs) ElementType() reflect.Type
- func (i AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewOutput() AuthorizedViewSubsetViewOutput
- func (i AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewOutput
- func (i AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewPtrOutput() AuthorizedViewSubsetViewPtrOutput
- func (i AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewPtrOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewPtrOutput
- type AuthorizedViewSubsetViewFamilySubset
- type AuthorizedViewSubsetViewFamilySubsetArgs
- func (AuthorizedViewSubsetViewFamilySubsetArgs) ElementType() reflect.Type
- func (i AuthorizedViewSubsetViewFamilySubsetArgs) ToAuthorizedViewSubsetViewFamilySubsetOutput() AuthorizedViewSubsetViewFamilySubsetOutput
- func (i AuthorizedViewSubsetViewFamilySubsetArgs) ToAuthorizedViewSubsetViewFamilySubsetOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewFamilySubsetOutput
- type AuthorizedViewSubsetViewFamilySubsetArray
- func (AuthorizedViewSubsetViewFamilySubsetArray) ElementType() reflect.Type
- func (i AuthorizedViewSubsetViewFamilySubsetArray) ToAuthorizedViewSubsetViewFamilySubsetArrayOutput() AuthorizedViewSubsetViewFamilySubsetArrayOutput
- func (i AuthorizedViewSubsetViewFamilySubsetArray) ToAuthorizedViewSubsetViewFamilySubsetArrayOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewFamilySubsetArrayOutput
- type AuthorizedViewSubsetViewFamilySubsetArrayInput
- type AuthorizedViewSubsetViewFamilySubsetArrayOutput
- func (AuthorizedViewSubsetViewFamilySubsetArrayOutput) ElementType() reflect.Type
- func (o AuthorizedViewSubsetViewFamilySubsetArrayOutput) Index(i pulumi.IntInput) AuthorizedViewSubsetViewFamilySubsetOutput
- func (o AuthorizedViewSubsetViewFamilySubsetArrayOutput) ToAuthorizedViewSubsetViewFamilySubsetArrayOutput() AuthorizedViewSubsetViewFamilySubsetArrayOutput
- func (o AuthorizedViewSubsetViewFamilySubsetArrayOutput) ToAuthorizedViewSubsetViewFamilySubsetArrayOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewFamilySubsetArrayOutput
- type AuthorizedViewSubsetViewFamilySubsetInput
- type AuthorizedViewSubsetViewFamilySubsetOutput
- func (AuthorizedViewSubsetViewFamilySubsetOutput) ElementType() reflect.Type
- func (o AuthorizedViewSubsetViewFamilySubsetOutput) FamilyName() pulumi.StringOutput
- func (o AuthorizedViewSubsetViewFamilySubsetOutput) QualifierPrefixes() pulumi.StringArrayOutput
- func (o AuthorizedViewSubsetViewFamilySubsetOutput) Qualifiers() pulumi.StringArrayOutput
- func (o AuthorizedViewSubsetViewFamilySubsetOutput) ToAuthorizedViewSubsetViewFamilySubsetOutput() AuthorizedViewSubsetViewFamilySubsetOutput
- func (o AuthorizedViewSubsetViewFamilySubsetOutput) ToAuthorizedViewSubsetViewFamilySubsetOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewFamilySubsetOutput
- type AuthorizedViewSubsetViewInput
- type AuthorizedViewSubsetViewOutput
- func (AuthorizedViewSubsetViewOutput) ElementType() reflect.Type
- func (o AuthorizedViewSubsetViewOutput) FamilySubsets() AuthorizedViewSubsetViewFamilySubsetArrayOutput
- func (o AuthorizedViewSubsetViewOutput) RowPrefixes() pulumi.StringArrayOutput
- func (o AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewOutput() AuthorizedViewSubsetViewOutput
- func (o AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewOutput
- func (o AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewPtrOutput() AuthorizedViewSubsetViewPtrOutput
- func (o AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewPtrOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewPtrOutput
- type AuthorizedViewSubsetViewPtrInput
- type AuthorizedViewSubsetViewPtrOutput
- func (o AuthorizedViewSubsetViewPtrOutput) Elem() AuthorizedViewSubsetViewOutput
- func (AuthorizedViewSubsetViewPtrOutput) ElementType() reflect.Type
- func (o AuthorizedViewSubsetViewPtrOutput) FamilySubsets() AuthorizedViewSubsetViewFamilySubsetArrayOutput
- func (o AuthorizedViewSubsetViewPtrOutput) RowPrefixes() pulumi.StringArrayOutput
- func (o AuthorizedViewSubsetViewPtrOutput) ToAuthorizedViewSubsetViewPtrOutput() AuthorizedViewSubsetViewPtrOutput
- func (o AuthorizedViewSubsetViewPtrOutput) ToAuthorizedViewSubsetViewPtrOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewPtrOutput
- type GCPolicy
- type GCPolicyArgs
- type GCPolicyArray
- type GCPolicyArrayInput
- type GCPolicyArrayOutput
- type GCPolicyInput
- type GCPolicyMap
- type GCPolicyMapInput
- type GCPolicyMapOutput
- type GCPolicyMaxAge
- type GCPolicyMaxAgeArgs
- func (GCPolicyMaxAgeArgs) ElementType() reflect.Type
- func (i GCPolicyMaxAgeArgs) ToGCPolicyMaxAgeOutput() GCPolicyMaxAgeOutput
- func (i GCPolicyMaxAgeArgs) ToGCPolicyMaxAgeOutputWithContext(ctx context.Context) GCPolicyMaxAgeOutput
- func (i GCPolicyMaxAgeArgs) ToGCPolicyMaxAgePtrOutput() GCPolicyMaxAgePtrOutput
- func (i GCPolicyMaxAgeArgs) ToGCPolicyMaxAgePtrOutputWithContext(ctx context.Context) GCPolicyMaxAgePtrOutput
- type GCPolicyMaxAgeInput
- type GCPolicyMaxAgeOutput
- func (o GCPolicyMaxAgeOutput) Days() pulumi.IntPtrOutputdeprecated
- func (o GCPolicyMaxAgeOutput) Duration() pulumi.StringPtrOutput
- func (GCPolicyMaxAgeOutput) ElementType() reflect.Type
- func (o GCPolicyMaxAgeOutput) ToGCPolicyMaxAgeOutput() GCPolicyMaxAgeOutput
- func (o GCPolicyMaxAgeOutput) ToGCPolicyMaxAgeOutputWithContext(ctx context.Context) GCPolicyMaxAgeOutput
- func (o GCPolicyMaxAgeOutput) ToGCPolicyMaxAgePtrOutput() GCPolicyMaxAgePtrOutput
- func (o GCPolicyMaxAgeOutput) ToGCPolicyMaxAgePtrOutputWithContext(ctx context.Context) GCPolicyMaxAgePtrOutput
- type GCPolicyMaxAgePtrInput
- type GCPolicyMaxAgePtrOutput
- func (o GCPolicyMaxAgePtrOutput) Days() pulumi.IntPtrOutputdeprecated
- func (o GCPolicyMaxAgePtrOutput) Duration() pulumi.StringPtrOutput
- func (o GCPolicyMaxAgePtrOutput) Elem() GCPolicyMaxAgeOutput
- func (GCPolicyMaxAgePtrOutput) ElementType() reflect.Type
- func (o GCPolicyMaxAgePtrOutput) ToGCPolicyMaxAgePtrOutput() GCPolicyMaxAgePtrOutput
- func (o GCPolicyMaxAgePtrOutput) ToGCPolicyMaxAgePtrOutputWithContext(ctx context.Context) GCPolicyMaxAgePtrOutput
- type GCPolicyMaxVersion
- type GCPolicyMaxVersionArgs
- type GCPolicyMaxVersionArray
- type GCPolicyMaxVersionArrayInput
- type GCPolicyMaxVersionArrayOutput
- func (GCPolicyMaxVersionArrayOutput) ElementType() reflect.Type
- func (o GCPolicyMaxVersionArrayOutput) Index(i pulumi.IntInput) GCPolicyMaxVersionOutput
- func (o GCPolicyMaxVersionArrayOutput) ToGCPolicyMaxVersionArrayOutput() GCPolicyMaxVersionArrayOutput
- func (o GCPolicyMaxVersionArrayOutput) ToGCPolicyMaxVersionArrayOutputWithContext(ctx context.Context) GCPolicyMaxVersionArrayOutput
- type GCPolicyMaxVersionInput
- type GCPolicyMaxVersionOutput
- func (GCPolicyMaxVersionOutput) ElementType() reflect.Type
- func (o GCPolicyMaxVersionOutput) Number() pulumi.IntOutput
- func (o GCPolicyMaxVersionOutput) ToGCPolicyMaxVersionOutput() GCPolicyMaxVersionOutput
- func (o GCPolicyMaxVersionOutput) ToGCPolicyMaxVersionOutputWithContext(ctx context.Context) GCPolicyMaxVersionOutput
- type GCPolicyOutput
- func (o GCPolicyOutput) ColumnFamily() pulumi.StringOutput
- func (o GCPolicyOutput) DeletionPolicy() pulumi.StringPtrOutput
- func (GCPolicyOutput) ElementType() reflect.Type
- func (o GCPolicyOutput) GcRules() pulumi.StringPtrOutput
- func (o GCPolicyOutput) IgnoreWarnings() pulumi.BoolPtrOutput
- func (o GCPolicyOutput) InstanceName() pulumi.StringOutput
- func (o GCPolicyOutput) MaxAge() GCPolicyMaxAgePtrOutput
- func (o GCPolicyOutput) MaxVersions() GCPolicyMaxVersionArrayOutput
- func (o GCPolicyOutput) Mode() pulumi.StringPtrOutput
- func (o GCPolicyOutput) Project() pulumi.StringOutput
- func (o GCPolicyOutput) Table() pulumi.StringOutput
- func (o GCPolicyOutput) ToGCPolicyOutput() GCPolicyOutput
- func (o GCPolicyOutput) ToGCPolicyOutputWithContext(ctx context.Context) GCPolicyOutput
- type GCPolicyState
- type Instance
- type InstanceArgs
- type InstanceArray
- type InstanceArrayInput
- type InstanceArrayOutput
- type InstanceCluster
- type InstanceClusterArgs
- type InstanceClusterArray
- type InstanceClusterArrayInput
- type InstanceClusterArrayOutput
- func (InstanceClusterArrayOutput) ElementType() reflect.Type
- func (o InstanceClusterArrayOutput) Index(i pulumi.IntInput) InstanceClusterOutput
- func (o InstanceClusterArrayOutput) ToInstanceClusterArrayOutput() InstanceClusterArrayOutput
- func (o InstanceClusterArrayOutput) ToInstanceClusterArrayOutputWithContext(ctx context.Context) InstanceClusterArrayOutput
- type InstanceClusterAutoscalingConfig
- type InstanceClusterAutoscalingConfigArgs
- func (InstanceClusterAutoscalingConfigArgs) ElementType() reflect.Type
- func (i InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigOutput() InstanceClusterAutoscalingConfigOutput
- func (i InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigOutput
- func (i InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigPtrOutput() InstanceClusterAutoscalingConfigPtrOutput
- func (i InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigPtrOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigPtrOutput
- type InstanceClusterAutoscalingConfigInput
- type InstanceClusterAutoscalingConfigOutput
- func (o InstanceClusterAutoscalingConfigOutput) CpuTarget() pulumi.IntOutput
- func (InstanceClusterAutoscalingConfigOutput) ElementType() reflect.Type
- func (o InstanceClusterAutoscalingConfigOutput) MaxNodes() pulumi.IntOutput
- func (o InstanceClusterAutoscalingConfigOutput) MinNodes() pulumi.IntOutput
- func (o InstanceClusterAutoscalingConfigOutput) StorageTarget() pulumi.IntPtrOutput
- func (o InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigOutput() InstanceClusterAutoscalingConfigOutput
- func (o InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigOutput
- func (o InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigPtrOutput() InstanceClusterAutoscalingConfigPtrOutput
- func (o InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigPtrOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigPtrOutput
- type InstanceClusterAutoscalingConfigPtrInput
- type InstanceClusterAutoscalingConfigPtrOutput
- func (o InstanceClusterAutoscalingConfigPtrOutput) CpuTarget() pulumi.IntPtrOutput
- func (o InstanceClusterAutoscalingConfigPtrOutput) Elem() InstanceClusterAutoscalingConfigOutput
- func (InstanceClusterAutoscalingConfigPtrOutput) ElementType() reflect.Type
- func (o InstanceClusterAutoscalingConfigPtrOutput) MaxNodes() pulumi.IntPtrOutput
- func (o InstanceClusterAutoscalingConfigPtrOutput) MinNodes() pulumi.IntPtrOutput
- func (o InstanceClusterAutoscalingConfigPtrOutput) StorageTarget() pulumi.IntPtrOutput
- func (o InstanceClusterAutoscalingConfigPtrOutput) ToInstanceClusterAutoscalingConfigPtrOutput() InstanceClusterAutoscalingConfigPtrOutput
- func (o InstanceClusterAutoscalingConfigPtrOutput) ToInstanceClusterAutoscalingConfigPtrOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigPtrOutput
- type InstanceClusterInput
- type InstanceClusterOutput
- func (o InstanceClusterOutput) AutoscalingConfig() InstanceClusterAutoscalingConfigPtrOutput
- func (o InstanceClusterOutput) ClusterId() pulumi.StringOutput
- func (InstanceClusterOutput) ElementType() reflect.Type
- func (o InstanceClusterOutput) KmsKeyName() pulumi.StringPtrOutput
- func (o InstanceClusterOutput) NumNodes() pulumi.IntPtrOutput
- func (o InstanceClusterOutput) State() pulumi.StringPtrOutput
- func (o InstanceClusterOutput) StorageType() pulumi.StringPtrOutput
- func (o InstanceClusterOutput) ToInstanceClusterOutput() InstanceClusterOutput
- func (o InstanceClusterOutput) ToInstanceClusterOutputWithContext(ctx context.Context) InstanceClusterOutput
- func (o InstanceClusterOutput) Zone() pulumi.StringPtrOutput
- type InstanceIamBinding
- type InstanceIamBindingArgs
- type InstanceIamBindingArray
- type InstanceIamBindingArrayInput
- type InstanceIamBindingArrayOutput
- func (InstanceIamBindingArrayOutput) ElementType() reflect.Type
- func (o InstanceIamBindingArrayOutput) Index(i pulumi.IntInput) InstanceIamBindingOutput
- func (o InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput
- func (o InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutputWithContext(ctx context.Context) InstanceIamBindingArrayOutput
- type InstanceIamBindingCondition
- type InstanceIamBindingConditionArgs
- func (InstanceIamBindingConditionArgs) ElementType() reflect.Type
- func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput
- func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutputWithContext(ctx context.Context) InstanceIamBindingConditionOutput
- func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput
- func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput
- type InstanceIamBindingConditionInput
- type InstanceIamBindingConditionOutput
- func (o InstanceIamBindingConditionOutput) Description() pulumi.StringPtrOutput
- func (InstanceIamBindingConditionOutput) ElementType() reflect.Type
- func (o InstanceIamBindingConditionOutput) Expression() pulumi.StringOutput
- func (o InstanceIamBindingConditionOutput) Title() pulumi.StringOutput
- func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput
- func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutputWithContext(ctx context.Context) InstanceIamBindingConditionOutput
- func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput
- func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput
- type InstanceIamBindingConditionPtrInput
- type InstanceIamBindingConditionPtrOutput
- func (o InstanceIamBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o InstanceIamBindingConditionPtrOutput) Elem() InstanceIamBindingConditionOutput
- func (InstanceIamBindingConditionPtrOutput) ElementType() reflect.Type
- func (o InstanceIamBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o InstanceIamBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput
- func (o InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput
- type InstanceIamBindingInput
- type InstanceIamBindingMap
- type InstanceIamBindingMapInput
- type InstanceIamBindingMapOutput
- func (InstanceIamBindingMapOutput) ElementType() reflect.Type
- func (o InstanceIamBindingMapOutput) MapIndex(k pulumi.StringInput) InstanceIamBindingOutput
- func (o InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput
- func (o InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutputWithContext(ctx context.Context) InstanceIamBindingMapOutput
- type InstanceIamBindingOutput
- func (o InstanceIamBindingOutput) Condition() InstanceIamBindingConditionPtrOutput
- func (InstanceIamBindingOutput) ElementType() reflect.Type
- func (o InstanceIamBindingOutput) Etag() pulumi.StringOutput
- func (o InstanceIamBindingOutput) Instance() pulumi.StringOutput
- func (o InstanceIamBindingOutput) Members() pulumi.StringArrayOutput
- func (o InstanceIamBindingOutput) Project() pulumi.StringOutput
- func (o InstanceIamBindingOutput) Role() pulumi.StringOutput
- func (o InstanceIamBindingOutput) ToInstanceIamBindingOutput() InstanceIamBindingOutput
- func (o InstanceIamBindingOutput) ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput
- type InstanceIamBindingState
- type InstanceIamMember
- type InstanceIamMemberArgs
- type InstanceIamMemberArray
- type InstanceIamMemberArrayInput
- type InstanceIamMemberArrayOutput
- func (InstanceIamMemberArrayOutput) ElementType() reflect.Type
- func (o InstanceIamMemberArrayOutput) Index(i pulumi.IntInput) InstanceIamMemberOutput
- func (o InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput
- func (o InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutputWithContext(ctx context.Context) InstanceIamMemberArrayOutput
- type InstanceIamMemberCondition
- type InstanceIamMemberConditionArgs
- func (InstanceIamMemberConditionArgs) ElementType() reflect.Type
- func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput
- func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutputWithContext(ctx context.Context) InstanceIamMemberConditionOutput
- func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput
- func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput
- type InstanceIamMemberConditionInput
- type InstanceIamMemberConditionOutput
- func (o InstanceIamMemberConditionOutput) Description() pulumi.StringPtrOutput
- func (InstanceIamMemberConditionOutput) ElementType() reflect.Type
- func (o InstanceIamMemberConditionOutput) Expression() pulumi.StringOutput
- func (o InstanceIamMemberConditionOutput) Title() pulumi.StringOutput
- func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput
- func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutputWithContext(ctx context.Context) InstanceIamMemberConditionOutput
- func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput
- func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput
- type InstanceIamMemberConditionPtrInput
- type InstanceIamMemberConditionPtrOutput
- func (o InstanceIamMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o InstanceIamMemberConditionPtrOutput) Elem() InstanceIamMemberConditionOutput
- func (InstanceIamMemberConditionPtrOutput) ElementType() reflect.Type
- func (o InstanceIamMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o InstanceIamMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput
- func (o InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput
- type InstanceIamMemberInput
- type InstanceIamMemberMap
- type InstanceIamMemberMapInput
- type InstanceIamMemberMapOutput
- func (InstanceIamMemberMapOutput) ElementType() reflect.Type
- func (o InstanceIamMemberMapOutput) MapIndex(k pulumi.StringInput) InstanceIamMemberOutput
- func (o InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput
- func (o InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutputWithContext(ctx context.Context) InstanceIamMemberMapOutput
- type InstanceIamMemberOutput
- func (o InstanceIamMemberOutput) Condition() InstanceIamMemberConditionPtrOutput
- func (InstanceIamMemberOutput) ElementType() reflect.Type
- func (o InstanceIamMemberOutput) Etag() pulumi.StringOutput
- func (o InstanceIamMemberOutput) Instance() pulumi.StringOutput
- func (o InstanceIamMemberOutput) Member() pulumi.StringOutput
- func (o InstanceIamMemberOutput) Project() pulumi.StringOutput
- func (o InstanceIamMemberOutput) Role() pulumi.StringOutput
- func (o InstanceIamMemberOutput) ToInstanceIamMemberOutput() InstanceIamMemberOutput
- func (o InstanceIamMemberOutput) ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput
- type InstanceIamMemberState
- type InstanceIamPolicy
- type InstanceIamPolicyArgs
- type InstanceIamPolicyArray
- type InstanceIamPolicyArrayInput
- type InstanceIamPolicyArrayOutput
- func (InstanceIamPolicyArrayOutput) ElementType() reflect.Type
- func (o InstanceIamPolicyArrayOutput) Index(i pulumi.IntInput) InstanceIamPolicyOutput
- func (o InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput
- func (o InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutputWithContext(ctx context.Context) InstanceIamPolicyArrayOutput
- type InstanceIamPolicyInput
- type InstanceIamPolicyMap
- type InstanceIamPolicyMapInput
- type InstanceIamPolicyMapOutput
- func (InstanceIamPolicyMapOutput) ElementType() reflect.Type
- func (o InstanceIamPolicyMapOutput) MapIndex(k pulumi.StringInput) InstanceIamPolicyOutput
- func (o InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput
- func (o InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutputWithContext(ctx context.Context) InstanceIamPolicyMapOutput
- type InstanceIamPolicyOutput
- func (InstanceIamPolicyOutput) ElementType() reflect.Type
- func (o InstanceIamPolicyOutput) Etag() pulumi.StringOutput
- func (o InstanceIamPolicyOutput) Instance() pulumi.StringOutput
- func (o InstanceIamPolicyOutput) PolicyData() pulumi.StringOutput
- func (o InstanceIamPolicyOutput) Project() pulumi.StringOutput
- func (o InstanceIamPolicyOutput) ToInstanceIamPolicyOutput() InstanceIamPolicyOutput
- func (o InstanceIamPolicyOutput) ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput
- type InstanceIamPolicyState
- type InstanceInput
- type InstanceMap
- type InstanceMapInput
- type InstanceMapOutput
- type InstanceOutput
- func (o InstanceOutput) Clusters() InstanceClusterArrayOutput
- func (o InstanceOutput) DeletionProtection() pulumi.BoolPtrOutput
- func (o InstanceOutput) DisplayName() pulumi.StringOutput
- func (o InstanceOutput) EffectiveLabels() pulumi.StringMapOutput
- func (InstanceOutput) ElementType() reflect.Type
- func (o InstanceOutput) ForceDestroy() pulumi.BoolPtrOutput
- func (o InstanceOutput) InstanceType() pulumi.StringPtrOutputdeprecated
- func (o InstanceOutput) Labels() pulumi.StringMapOutput
- func (o InstanceOutput) Name() pulumi.StringOutput
- func (o InstanceOutput) Project() pulumi.StringOutput
- func (o InstanceOutput) PulumiLabels() pulumi.StringMapOutput
- func (o InstanceOutput) ToInstanceOutput() InstanceOutput
- func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
- type InstanceState
- type LookupInstanceIamPolicyArgs
- type LookupInstanceIamPolicyOutputArgs
- type LookupInstanceIamPolicyResult
- type LookupInstanceIamPolicyResultOutput
- func (LookupInstanceIamPolicyResultOutput) ElementType() reflect.Type
- func (o LookupInstanceIamPolicyResultOutput) Etag() pulumi.StringOutput
- func (o LookupInstanceIamPolicyResultOutput) Id() pulumi.StringOutput
- func (o LookupInstanceIamPolicyResultOutput) Instance() pulumi.StringOutput
- func (o LookupInstanceIamPolicyResultOutput) PolicyData() pulumi.StringOutput
- func (o LookupInstanceIamPolicyResultOutput) Project() pulumi.StringOutput
- func (o LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutput() LookupInstanceIamPolicyResultOutput
- func (o LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutputWithContext(ctx context.Context) LookupInstanceIamPolicyResultOutput
- type LookupTableIamPolicyArgs
- type LookupTableIamPolicyOutputArgs
- type LookupTableIamPolicyResult
- type LookupTableIamPolicyResultOutput
- func (LookupTableIamPolicyResultOutput) ElementType() reflect.Type
- func (o LookupTableIamPolicyResultOutput) Etag() pulumi.StringOutput
- func (o LookupTableIamPolicyResultOutput) Id() pulumi.StringOutput
- func (o LookupTableIamPolicyResultOutput) Instance() pulumi.StringOutput
- func (o LookupTableIamPolicyResultOutput) PolicyData() pulumi.StringOutput
- func (o LookupTableIamPolicyResultOutput) Project() pulumi.StringOutput
- func (o LookupTableIamPolicyResultOutput) Table() pulumi.StringOutput
- func (o LookupTableIamPolicyResultOutput) ToLookupTableIamPolicyResultOutput() LookupTableIamPolicyResultOutput
- func (o LookupTableIamPolicyResultOutput) ToLookupTableIamPolicyResultOutputWithContext(ctx context.Context) LookupTableIamPolicyResultOutput
- type Table
- type TableArgs
- type TableArray
- type TableArrayInput
- type TableArrayOutput
- type TableAutomatedBackupPolicy
- type TableAutomatedBackupPolicyArgs
- func (TableAutomatedBackupPolicyArgs) ElementType() reflect.Type
- func (i TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyOutput() TableAutomatedBackupPolicyOutput
- func (i TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyOutput
- func (i TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyPtrOutput() TableAutomatedBackupPolicyPtrOutput
- func (i TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyPtrOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyPtrOutput
- type TableAutomatedBackupPolicyInput
- type TableAutomatedBackupPolicyOutput
- func (TableAutomatedBackupPolicyOutput) ElementType() reflect.Type
- func (o TableAutomatedBackupPolicyOutput) Frequency() pulumi.StringPtrOutput
- func (o TableAutomatedBackupPolicyOutput) RetentionPeriod() pulumi.StringPtrOutput
- func (o TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyOutput() TableAutomatedBackupPolicyOutput
- func (o TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyOutput
- func (o TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyPtrOutput() TableAutomatedBackupPolicyPtrOutput
- func (o TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyPtrOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyPtrOutput
- type TableAutomatedBackupPolicyPtrInput
- type TableAutomatedBackupPolicyPtrOutput
- func (o TableAutomatedBackupPolicyPtrOutput) Elem() TableAutomatedBackupPolicyOutput
- func (TableAutomatedBackupPolicyPtrOutput) ElementType() reflect.Type
- func (o TableAutomatedBackupPolicyPtrOutput) Frequency() pulumi.StringPtrOutput
- func (o TableAutomatedBackupPolicyPtrOutput) RetentionPeriod() pulumi.StringPtrOutput
- func (o TableAutomatedBackupPolicyPtrOutput) ToTableAutomatedBackupPolicyPtrOutput() TableAutomatedBackupPolicyPtrOutput
- func (o TableAutomatedBackupPolicyPtrOutput) ToTableAutomatedBackupPolicyPtrOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyPtrOutput
- type TableColumnFamily
- type TableColumnFamilyArgs
- type TableColumnFamilyArray
- type TableColumnFamilyArrayInput
- type TableColumnFamilyArrayOutput
- func (TableColumnFamilyArrayOutput) ElementType() reflect.Type
- func (o TableColumnFamilyArrayOutput) Index(i pulumi.IntInput) TableColumnFamilyOutput
- func (o TableColumnFamilyArrayOutput) ToTableColumnFamilyArrayOutput() TableColumnFamilyArrayOutput
- func (o TableColumnFamilyArrayOutput) ToTableColumnFamilyArrayOutputWithContext(ctx context.Context) TableColumnFamilyArrayOutput
- type TableColumnFamilyInput
- type TableColumnFamilyOutput
- func (TableColumnFamilyOutput) ElementType() reflect.Type
- func (o TableColumnFamilyOutput) Family() pulumi.StringOutput
- func (o TableColumnFamilyOutput) ToTableColumnFamilyOutput() TableColumnFamilyOutput
- func (o TableColumnFamilyOutput) ToTableColumnFamilyOutputWithContext(ctx context.Context) TableColumnFamilyOutput
- func (o TableColumnFamilyOutput) Type() pulumi.StringPtrOutput
- type TableIamBinding
- type TableIamBindingArgs
- type TableIamBindingArray
- type TableIamBindingArrayInput
- type TableIamBindingArrayOutput
- func (TableIamBindingArrayOutput) ElementType() reflect.Type
- func (o TableIamBindingArrayOutput) Index(i pulumi.IntInput) TableIamBindingOutput
- func (o TableIamBindingArrayOutput) ToTableIamBindingArrayOutput() TableIamBindingArrayOutput
- func (o TableIamBindingArrayOutput) ToTableIamBindingArrayOutputWithContext(ctx context.Context) TableIamBindingArrayOutput
- type TableIamBindingCondition
- type TableIamBindingConditionArgs
- func (TableIamBindingConditionArgs) ElementType() reflect.Type
- func (i TableIamBindingConditionArgs) ToTableIamBindingConditionOutput() TableIamBindingConditionOutput
- func (i TableIamBindingConditionArgs) ToTableIamBindingConditionOutputWithContext(ctx context.Context) TableIamBindingConditionOutput
- func (i TableIamBindingConditionArgs) ToTableIamBindingConditionPtrOutput() TableIamBindingConditionPtrOutput
- func (i TableIamBindingConditionArgs) ToTableIamBindingConditionPtrOutputWithContext(ctx context.Context) TableIamBindingConditionPtrOutput
- type TableIamBindingConditionInput
- type TableIamBindingConditionOutput
- func (o TableIamBindingConditionOutput) Description() pulumi.StringPtrOutput
- func (TableIamBindingConditionOutput) ElementType() reflect.Type
- func (o TableIamBindingConditionOutput) Expression() pulumi.StringOutput
- func (o TableIamBindingConditionOutput) Title() pulumi.StringOutput
- func (o TableIamBindingConditionOutput) ToTableIamBindingConditionOutput() TableIamBindingConditionOutput
- func (o TableIamBindingConditionOutput) ToTableIamBindingConditionOutputWithContext(ctx context.Context) TableIamBindingConditionOutput
- func (o TableIamBindingConditionOutput) ToTableIamBindingConditionPtrOutput() TableIamBindingConditionPtrOutput
- func (o TableIamBindingConditionOutput) ToTableIamBindingConditionPtrOutputWithContext(ctx context.Context) TableIamBindingConditionPtrOutput
- type TableIamBindingConditionPtrInput
- type TableIamBindingConditionPtrOutput
- func (o TableIamBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o TableIamBindingConditionPtrOutput) Elem() TableIamBindingConditionOutput
- func (TableIamBindingConditionPtrOutput) ElementType() reflect.Type
- func (o TableIamBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o TableIamBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o TableIamBindingConditionPtrOutput) ToTableIamBindingConditionPtrOutput() TableIamBindingConditionPtrOutput
- func (o TableIamBindingConditionPtrOutput) ToTableIamBindingConditionPtrOutputWithContext(ctx context.Context) TableIamBindingConditionPtrOutput
- type TableIamBindingInput
- type TableIamBindingMap
- type TableIamBindingMapInput
- type TableIamBindingMapOutput
- func (TableIamBindingMapOutput) ElementType() reflect.Type
- func (o TableIamBindingMapOutput) MapIndex(k pulumi.StringInput) TableIamBindingOutput
- func (o TableIamBindingMapOutput) ToTableIamBindingMapOutput() TableIamBindingMapOutput
- func (o TableIamBindingMapOutput) ToTableIamBindingMapOutputWithContext(ctx context.Context) TableIamBindingMapOutput
- type TableIamBindingOutput
- func (o TableIamBindingOutput) Condition() TableIamBindingConditionPtrOutput
- func (TableIamBindingOutput) ElementType() reflect.Type
- func (o TableIamBindingOutput) Etag() pulumi.StringOutput
- func (o TableIamBindingOutput) Instance() pulumi.StringOutput
- func (o TableIamBindingOutput) Members() pulumi.StringArrayOutput
- func (o TableIamBindingOutput) Project() pulumi.StringOutput
- func (o TableIamBindingOutput) Role() pulumi.StringOutput
- func (o TableIamBindingOutput) Table() pulumi.StringOutput
- func (o TableIamBindingOutput) ToTableIamBindingOutput() TableIamBindingOutput
- func (o TableIamBindingOutput) ToTableIamBindingOutputWithContext(ctx context.Context) TableIamBindingOutput
- type TableIamBindingState
- type TableIamMember
- type TableIamMemberArgs
- type TableIamMemberArray
- type TableIamMemberArrayInput
- type TableIamMemberArrayOutput
- func (TableIamMemberArrayOutput) ElementType() reflect.Type
- func (o TableIamMemberArrayOutput) Index(i pulumi.IntInput) TableIamMemberOutput
- func (o TableIamMemberArrayOutput) ToTableIamMemberArrayOutput() TableIamMemberArrayOutput
- func (o TableIamMemberArrayOutput) ToTableIamMemberArrayOutputWithContext(ctx context.Context) TableIamMemberArrayOutput
- type TableIamMemberCondition
- type TableIamMemberConditionArgs
- func (TableIamMemberConditionArgs) ElementType() reflect.Type
- func (i TableIamMemberConditionArgs) ToTableIamMemberConditionOutput() TableIamMemberConditionOutput
- func (i TableIamMemberConditionArgs) ToTableIamMemberConditionOutputWithContext(ctx context.Context) TableIamMemberConditionOutput
- func (i TableIamMemberConditionArgs) ToTableIamMemberConditionPtrOutput() TableIamMemberConditionPtrOutput
- func (i TableIamMemberConditionArgs) ToTableIamMemberConditionPtrOutputWithContext(ctx context.Context) TableIamMemberConditionPtrOutput
- type TableIamMemberConditionInput
- type TableIamMemberConditionOutput
- func (o TableIamMemberConditionOutput) Description() pulumi.StringPtrOutput
- func (TableIamMemberConditionOutput) ElementType() reflect.Type
- func (o TableIamMemberConditionOutput) Expression() pulumi.StringOutput
- func (o TableIamMemberConditionOutput) Title() pulumi.StringOutput
- func (o TableIamMemberConditionOutput) ToTableIamMemberConditionOutput() TableIamMemberConditionOutput
- func (o TableIamMemberConditionOutput) ToTableIamMemberConditionOutputWithContext(ctx context.Context) TableIamMemberConditionOutput
- func (o TableIamMemberConditionOutput) ToTableIamMemberConditionPtrOutput() TableIamMemberConditionPtrOutput
- func (o TableIamMemberConditionOutput) ToTableIamMemberConditionPtrOutputWithContext(ctx context.Context) TableIamMemberConditionPtrOutput
- type TableIamMemberConditionPtrInput
- type TableIamMemberConditionPtrOutput
- func (o TableIamMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
- func (o TableIamMemberConditionPtrOutput) Elem() TableIamMemberConditionOutput
- func (TableIamMemberConditionPtrOutput) ElementType() reflect.Type
- func (o TableIamMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
- func (o TableIamMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
- func (o TableIamMemberConditionPtrOutput) ToTableIamMemberConditionPtrOutput() TableIamMemberConditionPtrOutput
- func (o TableIamMemberConditionPtrOutput) ToTableIamMemberConditionPtrOutputWithContext(ctx context.Context) TableIamMemberConditionPtrOutput
- type TableIamMemberInput
- type TableIamMemberMap
- type TableIamMemberMapInput
- type TableIamMemberMapOutput
- func (TableIamMemberMapOutput) ElementType() reflect.Type
- func (o TableIamMemberMapOutput) MapIndex(k pulumi.StringInput) TableIamMemberOutput
- func (o TableIamMemberMapOutput) ToTableIamMemberMapOutput() TableIamMemberMapOutput
- func (o TableIamMemberMapOutput) ToTableIamMemberMapOutputWithContext(ctx context.Context) TableIamMemberMapOutput
- type TableIamMemberOutput
- func (o TableIamMemberOutput) Condition() TableIamMemberConditionPtrOutput
- func (TableIamMemberOutput) ElementType() reflect.Type
- func (o TableIamMemberOutput) Etag() pulumi.StringOutput
- func (o TableIamMemberOutput) Instance() pulumi.StringOutput
- func (o TableIamMemberOutput) Member() pulumi.StringOutput
- func (o TableIamMemberOutput) Project() pulumi.StringOutput
- func (o TableIamMemberOutput) Role() pulumi.StringOutput
- func (o TableIamMemberOutput) Table() pulumi.StringOutput
- func (o TableIamMemberOutput) ToTableIamMemberOutput() TableIamMemberOutput
- func (o TableIamMemberOutput) ToTableIamMemberOutputWithContext(ctx context.Context) TableIamMemberOutput
- type TableIamMemberState
- type TableIamPolicy
- type TableIamPolicyArgs
- type TableIamPolicyArray
- type TableIamPolicyArrayInput
- type TableIamPolicyArrayOutput
- func (TableIamPolicyArrayOutput) ElementType() reflect.Type
- func (o TableIamPolicyArrayOutput) Index(i pulumi.IntInput) TableIamPolicyOutput
- func (o TableIamPolicyArrayOutput) ToTableIamPolicyArrayOutput() TableIamPolicyArrayOutput
- func (o TableIamPolicyArrayOutput) ToTableIamPolicyArrayOutputWithContext(ctx context.Context) TableIamPolicyArrayOutput
- type TableIamPolicyInput
- type TableIamPolicyMap
- type TableIamPolicyMapInput
- type TableIamPolicyMapOutput
- func (TableIamPolicyMapOutput) ElementType() reflect.Type
- func (o TableIamPolicyMapOutput) MapIndex(k pulumi.StringInput) TableIamPolicyOutput
- func (o TableIamPolicyMapOutput) ToTableIamPolicyMapOutput() TableIamPolicyMapOutput
- func (o TableIamPolicyMapOutput) ToTableIamPolicyMapOutputWithContext(ctx context.Context) TableIamPolicyMapOutput
- type TableIamPolicyOutput
- func (TableIamPolicyOutput) ElementType() reflect.Type
- func (o TableIamPolicyOutput) Etag() pulumi.StringOutput
- func (o TableIamPolicyOutput) Instance() pulumi.StringOutput
- func (o TableIamPolicyOutput) PolicyData() pulumi.StringOutput
- func (o TableIamPolicyOutput) Project() pulumi.StringOutput
- func (o TableIamPolicyOutput) Table() pulumi.StringOutput
- func (o TableIamPolicyOutput) ToTableIamPolicyOutput() TableIamPolicyOutput
- func (o TableIamPolicyOutput) ToTableIamPolicyOutputWithContext(ctx context.Context) TableIamPolicyOutput
- type TableIamPolicyState
- type TableInput
- type TableMap
- type TableMapInput
- type TableMapOutput
- type TableOutput
- func (o TableOutput) AutomatedBackupPolicy() TableAutomatedBackupPolicyPtrOutput
- func (o TableOutput) ChangeStreamRetention() pulumi.StringOutput
- func (o TableOutput) ColumnFamilies() TableColumnFamilyArrayOutput
- func (o TableOutput) DeletionProtection() pulumi.StringOutput
- func (TableOutput) ElementType() reflect.Type
- func (o TableOutput) InstanceName() pulumi.StringOutput
- func (o TableOutput) Name() pulumi.StringOutput
- func (o TableOutput) Project() pulumi.StringOutput
- func (o TableOutput) SplitKeys() pulumi.StringArrayOutput
- func (o TableOutput) ToTableOutput() TableOutput
- func (o TableOutput) ToTableOutputWithContext(ctx context.Context) TableOutput
- type TableState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuthorizedView ¶
type AuthorizedView struct { pulumi.CustomResourceState DeletionProtection pulumi.StringOutput `pulumi:"deletionProtection"` // The name of the Bigtable instance in which the authorized view belongs. InstanceName pulumi.StringOutput `pulumi:"instanceName"` // The name of the authorized view. Must be 1-50 characters and must only contain hyphens, underscores, periods, letters and numbers. Name pulumi.StringOutput `pulumi:"name"` // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringOutput `pulumi:"project"` // An AuthorizedView permitting access to an explicit subset of a Table. Structure is documented below. // // *** SubsetView AuthorizedViewSubsetViewPtrOutput `pulumi:"subsetView"` // The name of the Bigtable table in which the authorized view belongs. TableName pulumi.StringOutput `pulumi:"tableName"` }
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-std/sdk/go/std" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { instance, err := bigtable.NewInstance(ctx, "instance", &bigtable.InstanceArgs{ Name: pulumi.String("tf-instance"), Clusters: bigtable.InstanceClusterArray{ &bigtable.InstanceClusterArgs{ ClusterId: pulumi.String("tf-instance-cluster"), Zone: pulumi.String("us-central1-b"), NumNodes: pulumi.Int(3), StorageType: pulumi.String("HDD"), }, }, }) if err != nil { return err } table, err := bigtable.NewTable(ctx, "table", &bigtable.TableArgs{ Name: pulumi.String("tf-table"), InstanceName: instance.Name, SplitKeys: pulumi.StringArray{ pulumi.String("a"), pulumi.String("b"), pulumi.String("c"), }, ColumnFamilies: bigtable.TableColumnFamilyArray{ &bigtable.TableColumnFamilyArgs{ Family: pulumi.String("family-first"), }, &bigtable.TableColumnFamilyArgs{ Family: pulumi.String("family-second"), }, }, ChangeStreamRetention: pulumi.String("24h0m0s"), }) if err != nil { return err } invokeBase64encode, err := std.Base64encode(ctx, &std.Base64encodeArgs{ Input: "prefix#", }, nil) if err != nil { return err } invokeBase64encode1, err := std.Base64encode(ctx, &std.Base64encodeArgs{ Input: "qualifier", }, nil) if err != nil { return err } invokeBase64encode2, err := std.Base64encode(ctx, &std.Base64encodeArgs{ Input: "qualifier-second", }, nil) if err != nil { return err } _, err = bigtable.NewAuthorizedView(ctx, "authorized_view", &bigtable.AuthorizedViewArgs{ Name: pulumi.String("tf-authorized-view"), InstanceName: instance.Name, TableName: table.Name, SubsetView: &bigtable.AuthorizedViewSubsetViewArgs{ RowPrefixes: pulumi.StringArray{ pulumi.String(invokeBase64encode.Result), }, FamilySubsets: bigtable.AuthorizedViewSubsetViewFamilySubsetArray{ &bigtable.AuthorizedViewSubsetViewFamilySubsetArgs{ FamilyName: pulumi.String("family-first"), Qualifiers: pulumi.StringArray{ pulumi.String(invokeBase64encode1.Result), pulumi.String(invokeBase64encode2.Result), }, }, &bigtable.AuthorizedViewSubsetViewFamilySubsetArgs{ FamilyName: pulumi.String("family-second"), QualifierPrefixes: pulumi.StringArray{ pulumi.String(""), }, }, }, }, }) if err != nil { return err } return nil }) }
```
## Import
Bigtable Authorized Views can be imported using any of these accepted formats:
* `projects/{{project}}/instances/{{instance_name}}/tables/{{table_name}}/authorizedViews/{{name}}`
* `{{project}}/{{instance_name}}/{{table_name}}/{{name}}`
* `{{instance_name}}/{{table_name}}/{{name}}`
When using the `pulumi import` command, Bigtable Authorized Views can be imported using one of the formats above. For example:
```sh $ pulumi import gcp:bigtable/authorizedView:AuthorizedView default projects/{{project}}/instances/{{instance_name}}/tables/{{table_name}}/authorizedViews/{{name}} ```
```sh $ pulumi import gcp:bigtable/authorizedView:AuthorizedView default {{project}}/{{instance_name}}/{{table_name}}/{{name}} ```
```sh $ pulumi import gcp:bigtable/authorizedView:AuthorizedView default {{instance_name}}/{{table_name}}/{{name}} ```
func GetAuthorizedView ¶
func GetAuthorizedView(ctx *pulumi.Context, name string, id pulumi.IDInput, state *AuthorizedViewState, opts ...pulumi.ResourceOption) (*AuthorizedView, error)
GetAuthorizedView gets an existing AuthorizedView 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 NewAuthorizedView ¶
func NewAuthorizedView(ctx *pulumi.Context, name string, args *AuthorizedViewArgs, opts ...pulumi.ResourceOption) (*AuthorizedView, error)
NewAuthorizedView registers a new resource with the given unique name, arguments, and options.
func (*AuthorizedView) ElementType ¶
func (*AuthorizedView) ElementType() reflect.Type
func (*AuthorizedView) ToAuthorizedViewOutput ¶
func (i *AuthorizedView) ToAuthorizedViewOutput() AuthorizedViewOutput
func (*AuthorizedView) ToAuthorizedViewOutputWithContext ¶
func (i *AuthorizedView) ToAuthorizedViewOutputWithContext(ctx context.Context) AuthorizedViewOutput
type AuthorizedViewArgs ¶
type AuthorizedViewArgs struct { DeletionProtection pulumi.StringPtrInput // The name of the Bigtable instance in which the authorized view belongs. InstanceName pulumi.StringInput // The name of the authorized view. Must be 1-50 characters and must only contain hyphens, underscores, periods, letters and numbers. Name pulumi.StringPtrInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // An AuthorizedView permitting access to an explicit subset of a Table. Structure is documented below. // // *** SubsetView AuthorizedViewSubsetViewPtrInput // The name of the Bigtable table in which the authorized view belongs. TableName pulumi.StringInput }
The set of arguments for constructing a AuthorizedView resource.
func (AuthorizedViewArgs) ElementType ¶
func (AuthorizedViewArgs) ElementType() reflect.Type
type AuthorizedViewArray ¶
type AuthorizedViewArray []AuthorizedViewInput
func (AuthorizedViewArray) ElementType ¶
func (AuthorizedViewArray) ElementType() reflect.Type
func (AuthorizedViewArray) ToAuthorizedViewArrayOutput ¶
func (i AuthorizedViewArray) ToAuthorizedViewArrayOutput() AuthorizedViewArrayOutput
func (AuthorizedViewArray) ToAuthorizedViewArrayOutputWithContext ¶
func (i AuthorizedViewArray) ToAuthorizedViewArrayOutputWithContext(ctx context.Context) AuthorizedViewArrayOutput
type AuthorizedViewArrayInput ¶
type AuthorizedViewArrayInput interface { pulumi.Input ToAuthorizedViewArrayOutput() AuthorizedViewArrayOutput ToAuthorizedViewArrayOutputWithContext(context.Context) AuthorizedViewArrayOutput }
AuthorizedViewArrayInput is an input type that accepts AuthorizedViewArray and AuthorizedViewArrayOutput values. You can construct a concrete instance of `AuthorizedViewArrayInput` via:
AuthorizedViewArray{ AuthorizedViewArgs{...} }
type AuthorizedViewArrayOutput ¶
type AuthorizedViewArrayOutput struct{ *pulumi.OutputState }
func (AuthorizedViewArrayOutput) ElementType ¶
func (AuthorizedViewArrayOutput) ElementType() reflect.Type
func (AuthorizedViewArrayOutput) Index ¶
func (o AuthorizedViewArrayOutput) Index(i pulumi.IntInput) AuthorizedViewOutput
func (AuthorizedViewArrayOutput) ToAuthorizedViewArrayOutput ¶
func (o AuthorizedViewArrayOutput) ToAuthorizedViewArrayOutput() AuthorizedViewArrayOutput
func (AuthorizedViewArrayOutput) ToAuthorizedViewArrayOutputWithContext ¶
func (o AuthorizedViewArrayOutput) ToAuthorizedViewArrayOutputWithContext(ctx context.Context) AuthorizedViewArrayOutput
type AuthorizedViewInput ¶
type AuthorizedViewInput interface { pulumi.Input ToAuthorizedViewOutput() AuthorizedViewOutput ToAuthorizedViewOutputWithContext(ctx context.Context) AuthorizedViewOutput }
type AuthorizedViewMap ¶
type AuthorizedViewMap map[string]AuthorizedViewInput
func (AuthorizedViewMap) ElementType ¶
func (AuthorizedViewMap) ElementType() reflect.Type
func (AuthorizedViewMap) ToAuthorizedViewMapOutput ¶
func (i AuthorizedViewMap) ToAuthorizedViewMapOutput() AuthorizedViewMapOutput
func (AuthorizedViewMap) ToAuthorizedViewMapOutputWithContext ¶
func (i AuthorizedViewMap) ToAuthorizedViewMapOutputWithContext(ctx context.Context) AuthorizedViewMapOutput
type AuthorizedViewMapInput ¶
type AuthorizedViewMapInput interface { pulumi.Input ToAuthorizedViewMapOutput() AuthorizedViewMapOutput ToAuthorizedViewMapOutputWithContext(context.Context) AuthorizedViewMapOutput }
AuthorizedViewMapInput is an input type that accepts AuthorizedViewMap and AuthorizedViewMapOutput values. You can construct a concrete instance of `AuthorizedViewMapInput` via:
AuthorizedViewMap{ "key": AuthorizedViewArgs{...} }
type AuthorizedViewMapOutput ¶
type AuthorizedViewMapOutput struct{ *pulumi.OutputState }
func (AuthorizedViewMapOutput) ElementType ¶
func (AuthorizedViewMapOutput) ElementType() reflect.Type
func (AuthorizedViewMapOutput) MapIndex ¶
func (o AuthorizedViewMapOutput) MapIndex(k pulumi.StringInput) AuthorizedViewOutput
func (AuthorizedViewMapOutput) ToAuthorizedViewMapOutput ¶
func (o AuthorizedViewMapOutput) ToAuthorizedViewMapOutput() AuthorizedViewMapOutput
func (AuthorizedViewMapOutput) ToAuthorizedViewMapOutputWithContext ¶
func (o AuthorizedViewMapOutput) ToAuthorizedViewMapOutputWithContext(ctx context.Context) AuthorizedViewMapOutput
type AuthorizedViewOutput ¶
type AuthorizedViewOutput struct{ *pulumi.OutputState }
func (AuthorizedViewOutput) DeletionProtection ¶
func (o AuthorizedViewOutput) DeletionProtection() pulumi.StringOutput
func (AuthorizedViewOutput) ElementType ¶
func (AuthorizedViewOutput) ElementType() reflect.Type
func (AuthorizedViewOutput) InstanceName ¶
func (o AuthorizedViewOutput) InstanceName() pulumi.StringOutput
The name of the Bigtable instance in which the authorized view belongs.
func (AuthorizedViewOutput) Name ¶
func (o AuthorizedViewOutput) Name() pulumi.StringOutput
The name of the authorized view. Must be 1-50 characters and must only contain hyphens, underscores, periods, letters and numbers.
func (AuthorizedViewOutput) Project ¶
func (o AuthorizedViewOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (AuthorizedViewOutput) SubsetView ¶
func (o AuthorizedViewOutput) SubsetView() AuthorizedViewSubsetViewPtrOutput
An AuthorizedView permitting access to an explicit subset of a Table. Structure is documented below.
***
func (AuthorizedViewOutput) TableName ¶
func (o AuthorizedViewOutput) TableName() pulumi.StringOutput
The name of the Bigtable table in which the authorized view belongs.
func (AuthorizedViewOutput) ToAuthorizedViewOutput ¶
func (o AuthorizedViewOutput) ToAuthorizedViewOutput() AuthorizedViewOutput
func (AuthorizedViewOutput) ToAuthorizedViewOutputWithContext ¶
func (o AuthorizedViewOutput) ToAuthorizedViewOutputWithContext(ctx context.Context) AuthorizedViewOutput
type AuthorizedViewState ¶
type AuthorizedViewState struct { DeletionProtection pulumi.StringPtrInput // The name of the Bigtable instance in which the authorized view belongs. InstanceName pulumi.StringPtrInput // The name of the authorized view. Must be 1-50 characters and must only contain hyphens, underscores, periods, letters and numbers. Name pulumi.StringPtrInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput // An AuthorizedView permitting access to an explicit subset of a Table. Structure is documented below. // // *** SubsetView AuthorizedViewSubsetViewPtrInput // The name of the Bigtable table in which the authorized view belongs. TableName pulumi.StringPtrInput }
func (AuthorizedViewState) ElementType ¶
func (AuthorizedViewState) ElementType() reflect.Type
type AuthorizedViewSubsetView ¶
type AuthorizedViewSubsetView struct { // A group of column family subsets to be included in the authorized view. This can be specified multiple times. Structure is documented below. // // *** FamilySubsets []AuthorizedViewSubsetViewFamilySubset `pulumi:"familySubsets"` // A list of Base64-encoded row prefixes to be included in the authorized view. To provide access to all rows, include the empty string as a prefix (""). RowPrefixes []string `pulumi:"rowPrefixes"` }
type AuthorizedViewSubsetViewArgs ¶
type AuthorizedViewSubsetViewArgs struct { // A group of column family subsets to be included in the authorized view. This can be specified multiple times. Structure is documented below. // // *** FamilySubsets AuthorizedViewSubsetViewFamilySubsetArrayInput `pulumi:"familySubsets"` // A list of Base64-encoded row prefixes to be included in the authorized view. To provide access to all rows, include the empty string as a prefix (""). RowPrefixes pulumi.StringArrayInput `pulumi:"rowPrefixes"` }
func (AuthorizedViewSubsetViewArgs) ElementType ¶
func (AuthorizedViewSubsetViewArgs) ElementType() reflect.Type
func (AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewOutput ¶
func (i AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewOutput() AuthorizedViewSubsetViewOutput
func (AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewOutputWithContext ¶
func (i AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewOutput
func (AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewPtrOutput ¶
func (i AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewPtrOutput() AuthorizedViewSubsetViewPtrOutput
func (AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewPtrOutputWithContext ¶
func (i AuthorizedViewSubsetViewArgs) ToAuthorizedViewSubsetViewPtrOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewPtrOutput
type AuthorizedViewSubsetViewFamilySubset ¶
type AuthorizedViewSubsetViewFamilySubset struct { // Name of the column family to be included in the authorized view. The specified column family must exist in the parent table of this authorized view. FamilyName string `pulumi:"familyName"` // A list of Base64-encoded prefixes for qualifiers of the column family to be included in the authorized view. // Every qualifier starting with one of these prefixes is included in the authorized view. To provide access to all qualifiers, include the empty string as a prefix (""). QualifierPrefixes []string `pulumi:"qualifierPrefixes"` // A list of Base64-encoded individual exact column qualifiers of the column family to be included in the authorized view. Qualifiers []string `pulumi:"qualifiers"` }
type AuthorizedViewSubsetViewFamilySubsetArgs ¶
type AuthorizedViewSubsetViewFamilySubsetArgs struct { // Name of the column family to be included in the authorized view. The specified column family must exist in the parent table of this authorized view. FamilyName pulumi.StringInput `pulumi:"familyName"` // A list of Base64-encoded prefixes for qualifiers of the column family to be included in the authorized view. // Every qualifier starting with one of these prefixes is included in the authorized view. To provide access to all qualifiers, include the empty string as a prefix (""). QualifierPrefixes pulumi.StringArrayInput `pulumi:"qualifierPrefixes"` // A list of Base64-encoded individual exact column qualifiers of the column family to be included in the authorized view. Qualifiers pulumi.StringArrayInput `pulumi:"qualifiers"` }
func (AuthorizedViewSubsetViewFamilySubsetArgs) ElementType ¶
func (AuthorizedViewSubsetViewFamilySubsetArgs) ElementType() reflect.Type
func (AuthorizedViewSubsetViewFamilySubsetArgs) ToAuthorizedViewSubsetViewFamilySubsetOutput ¶
func (i AuthorizedViewSubsetViewFamilySubsetArgs) ToAuthorizedViewSubsetViewFamilySubsetOutput() AuthorizedViewSubsetViewFamilySubsetOutput
func (AuthorizedViewSubsetViewFamilySubsetArgs) ToAuthorizedViewSubsetViewFamilySubsetOutputWithContext ¶
func (i AuthorizedViewSubsetViewFamilySubsetArgs) ToAuthorizedViewSubsetViewFamilySubsetOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewFamilySubsetOutput
type AuthorizedViewSubsetViewFamilySubsetArray ¶
type AuthorizedViewSubsetViewFamilySubsetArray []AuthorizedViewSubsetViewFamilySubsetInput
func (AuthorizedViewSubsetViewFamilySubsetArray) ElementType ¶
func (AuthorizedViewSubsetViewFamilySubsetArray) ElementType() reflect.Type
func (AuthorizedViewSubsetViewFamilySubsetArray) ToAuthorizedViewSubsetViewFamilySubsetArrayOutput ¶
func (i AuthorizedViewSubsetViewFamilySubsetArray) ToAuthorizedViewSubsetViewFamilySubsetArrayOutput() AuthorizedViewSubsetViewFamilySubsetArrayOutput
func (AuthorizedViewSubsetViewFamilySubsetArray) ToAuthorizedViewSubsetViewFamilySubsetArrayOutputWithContext ¶
func (i AuthorizedViewSubsetViewFamilySubsetArray) ToAuthorizedViewSubsetViewFamilySubsetArrayOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewFamilySubsetArrayOutput
type AuthorizedViewSubsetViewFamilySubsetArrayInput ¶
type AuthorizedViewSubsetViewFamilySubsetArrayInput interface { pulumi.Input ToAuthorizedViewSubsetViewFamilySubsetArrayOutput() AuthorizedViewSubsetViewFamilySubsetArrayOutput ToAuthorizedViewSubsetViewFamilySubsetArrayOutputWithContext(context.Context) AuthorizedViewSubsetViewFamilySubsetArrayOutput }
AuthorizedViewSubsetViewFamilySubsetArrayInput is an input type that accepts AuthorizedViewSubsetViewFamilySubsetArray and AuthorizedViewSubsetViewFamilySubsetArrayOutput values. You can construct a concrete instance of `AuthorizedViewSubsetViewFamilySubsetArrayInput` via:
AuthorizedViewSubsetViewFamilySubsetArray{ AuthorizedViewSubsetViewFamilySubsetArgs{...} }
type AuthorizedViewSubsetViewFamilySubsetArrayOutput ¶
type AuthorizedViewSubsetViewFamilySubsetArrayOutput struct{ *pulumi.OutputState }
func (AuthorizedViewSubsetViewFamilySubsetArrayOutput) ElementType ¶
func (AuthorizedViewSubsetViewFamilySubsetArrayOutput) ElementType() reflect.Type
func (AuthorizedViewSubsetViewFamilySubsetArrayOutput) ToAuthorizedViewSubsetViewFamilySubsetArrayOutput ¶
func (o AuthorizedViewSubsetViewFamilySubsetArrayOutput) ToAuthorizedViewSubsetViewFamilySubsetArrayOutput() AuthorizedViewSubsetViewFamilySubsetArrayOutput
func (AuthorizedViewSubsetViewFamilySubsetArrayOutput) ToAuthorizedViewSubsetViewFamilySubsetArrayOutputWithContext ¶
func (o AuthorizedViewSubsetViewFamilySubsetArrayOutput) ToAuthorizedViewSubsetViewFamilySubsetArrayOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewFamilySubsetArrayOutput
type AuthorizedViewSubsetViewFamilySubsetInput ¶
type AuthorizedViewSubsetViewFamilySubsetInput interface { pulumi.Input ToAuthorizedViewSubsetViewFamilySubsetOutput() AuthorizedViewSubsetViewFamilySubsetOutput ToAuthorizedViewSubsetViewFamilySubsetOutputWithContext(context.Context) AuthorizedViewSubsetViewFamilySubsetOutput }
AuthorizedViewSubsetViewFamilySubsetInput is an input type that accepts AuthorizedViewSubsetViewFamilySubsetArgs and AuthorizedViewSubsetViewFamilySubsetOutput values. You can construct a concrete instance of `AuthorizedViewSubsetViewFamilySubsetInput` via:
AuthorizedViewSubsetViewFamilySubsetArgs{...}
type AuthorizedViewSubsetViewFamilySubsetOutput ¶
type AuthorizedViewSubsetViewFamilySubsetOutput struct{ *pulumi.OutputState }
func (AuthorizedViewSubsetViewFamilySubsetOutput) ElementType ¶
func (AuthorizedViewSubsetViewFamilySubsetOutput) ElementType() reflect.Type
func (AuthorizedViewSubsetViewFamilySubsetOutput) FamilyName ¶
func (o AuthorizedViewSubsetViewFamilySubsetOutput) FamilyName() pulumi.StringOutput
Name of the column family to be included in the authorized view. The specified column family must exist in the parent table of this authorized view.
func (AuthorizedViewSubsetViewFamilySubsetOutput) QualifierPrefixes ¶
func (o AuthorizedViewSubsetViewFamilySubsetOutput) QualifierPrefixes() pulumi.StringArrayOutput
A list of Base64-encoded prefixes for qualifiers of the column family to be included in the authorized view. Every qualifier starting with one of these prefixes is included in the authorized view. To provide access to all qualifiers, include the empty string as a prefix ("").
func (AuthorizedViewSubsetViewFamilySubsetOutput) Qualifiers ¶
func (o AuthorizedViewSubsetViewFamilySubsetOutput) Qualifiers() pulumi.StringArrayOutput
A list of Base64-encoded individual exact column qualifiers of the column family to be included in the authorized view.
func (AuthorizedViewSubsetViewFamilySubsetOutput) ToAuthorizedViewSubsetViewFamilySubsetOutput ¶
func (o AuthorizedViewSubsetViewFamilySubsetOutput) ToAuthorizedViewSubsetViewFamilySubsetOutput() AuthorizedViewSubsetViewFamilySubsetOutput
func (AuthorizedViewSubsetViewFamilySubsetOutput) ToAuthorizedViewSubsetViewFamilySubsetOutputWithContext ¶
func (o AuthorizedViewSubsetViewFamilySubsetOutput) ToAuthorizedViewSubsetViewFamilySubsetOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewFamilySubsetOutput
type AuthorizedViewSubsetViewInput ¶
type AuthorizedViewSubsetViewInput interface { pulumi.Input ToAuthorizedViewSubsetViewOutput() AuthorizedViewSubsetViewOutput ToAuthorizedViewSubsetViewOutputWithContext(context.Context) AuthorizedViewSubsetViewOutput }
AuthorizedViewSubsetViewInput is an input type that accepts AuthorizedViewSubsetViewArgs and AuthorizedViewSubsetViewOutput values. You can construct a concrete instance of `AuthorizedViewSubsetViewInput` via:
AuthorizedViewSubsetViewArgs{...}
type AuthorizedViewSubsetViewOutput ¶
type AuthorizedViewSubsetViewOutput struct{ *pulumi.OutputState }
func (AuthorizedViewSubsetViewOutput) ElementType ¶
func (AuthorizedViewSubsetViewOutput) ElementType() reflect.Type
func (AuthorizedViewSubsetViewOutput) FamilySubsets ¶
func (o AuthorizedViewSubsetViewOutput) FamilySubsets() AuthorizedViewSubsetViewFamilySubsetArrayOutput
A group of column family subsets to be included in the authorized view. This can be specified multiple times. Structure is documented below.
***
func (AuthorizedViewSubsetViewOutput) RowPrefixes ¶
func (o AuthorizedViewSubsetViewOutput) RowPrefixes() pulumi.StringArrayOutput
A list of Base64-encoded row prefixes to be included in the authorized view. To provide access to all rows, include the empty string as a prefix ("").
func (AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewOutput ¶
func (o AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewOutput() AuthorizedViewSubsetViewOutput
func (AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewOutputWithContext ¶
func (o AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewOutput
func (AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewPtrOutput ¶
func (o AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewPtrOutput() AuthorizedViewSubsetViewPtrOutput
func (AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewPtrOutputWithContext ¶
func (o AuthorizedViewSubsetViewOutput) ToAuthorizedViewSubsetViewPtrOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewPtrOutput
type AuthorizedViewSubsetViewPtrInput ¶
type AuthorizedViewSubsetViewPtrInput interface { pulumi.Input ToAuthorizedViewSubsetViewPtrOutput() AuthorizedViewSubsetViewPtrOutput ToAuthorizedViewSubsetViewPtrOutputWithContext(context.Context) AuthorizedViewSubsetViewPtrOutput }
AuthorizedViewSubsetViewPtrInput is an input type that accepts AuthorizedViewSubsetViewArgs, AuthorizedViewSubsetViewPtr and AuthorizedViewSubsetViewPtrOutput values. You can construct a concrete instance of `AuthorizedViewSubsetViewPtrInput` via:
AuthorizedViewSubsetViewArgs{...} or: nil
func AuthorizedViewSubsetViewPtr ¶
func AuthorizedViewSubsetViewPtr(v *AuthorizedViewSubsetViewArgs) AuthorizedViewSubsetViewPtrInput
type AuthorizedViewSubsetViewPtrOutput ¶
type AuthorizedViewSubsetViewPtrOutput struct{ *pulumi.OutputState }
func (AuthorizedViewSubsetViewPtrOutput) Elem ¶
func (o AuthorizedViewSubsetViewPtrOutput) Elem() AuthorizedViewSubsetViewOutput
func (AuthorizedViewSubsetViewPtrOutput) ElementType ¶
func (AuthorizedViewSubsetViewPtrOutput) ElementType() reflect.Type
func (AuthorizedViewSubsetViewPtrOutput) FamilySubsets ¶
func (o AuthorizedViewSubsetViewPtrOutput) FamilySubsets() AuthorizedViewSubsetViewFamilySubsetArrayOutput
A group of column family subsets to be included in the authorized view. This can be specified multiple times. Structure is documented below.
***
func (AuthorizedViewSubsetViewPtrOutput) RowPrefixes ¶
func (o AuthorizedViewSubsetViewPtrOutput) RowPrefixes() pulumi.StringArrayOutput
A list of Base64-encoded row prefixes to be included in the authorized view. To provide access to all rows, include the empty string as a prefix ("").
func (AuthorizedViewSubsetViewPtrOutput) ToAuthorizedViewSubsetViewPtrOutput ¶
func (o AuthorizedViewSubsetViewPtrOutput) ToAuthorizedViewSubsetViewPtrOutput() AuthorizedViewSubsetViewPtrOutput
func (AuthorizedViewSubsetViewPtrOutput) ToAuthorizedViewSubsetViewPtrOutputWithContext ¶
func (o AuthorizedViewSubsetViewPtrOutput) ToAuthorizedViewSubsetViewPtrOutputWithContext(ctx context.Context) AuthorizedViewSubsetViewPtrOutput
type GCPolicy ¶
type GCPolicy struct { pulumi.CustomResourceState // The name of the column family. ColumnFamily pulumi.StringOutput `pulumi:"columnFamily"` // The deletion policy for the GC policy. // Setting ABANDON allows the resource to be abandoned rather than deleted. This is useful for GC policy as it cannot be deleted in a replicated instance. // // Possible values are: `ABANDON`. DeletionPolicy pulumi.StringPtrOutput `pulumi:"deletionPolicy"` // Serialized JSON object to represent a more complex GC policy. Conflicts with `mode`, `maxAge` and `maxVersion`. Conflicts with `mode`, `maxAge` and `maxVersion`. GcRules pulumi.StringPtrOutput `pulumi:"gcRules"` // Boolean for whether to allow ignoring warnings when updating the gc policy. // Setting this to `true` allows relaxing the gc policy for replicated clusters by up to 90 days, but keep in mind this may increase how long clusters are inconsistent. Make sure // you understand the risks listed at https://cloud.google.com/bigtable/docs/garbage-collection#increasing before setting this option. // // *** IgnoreWarnings pulumi.BoolPtrOutput `pulumi:"ignoreWarnings"` // The name of the Bigtable instance. InstanceName pulumi.StringOutput `pulumi:"instanceName"` // GC policy that applies to all cells older than the given age. MaxAge GCPolicyMaxAgePtrOutput `pulumi:"maxAge"` // GC policy that applies to all versions of a cell except for the most recent. MaxVersions GCPolicyMaxVersionArrayOutput `pulumi:"maxVersions"` // If multiple policies are set, you should choose between `UNION` OR `INTERSECTION`. Mode pulumi.StringPtrOutput `pulumi:"mode"` // 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 name of the table. Table pulumi.StringOutput `pulumi:"table"` }
Creates a Google Cloud Bigtable GC Policy inside a family. For more information see [the official documentation](https://cloud.google.com/bigtable/) and [API](https://cloud.google.com/bigtable/docs/go/reference).
> **Warning**: We don't recommend having multiple GC policies for the same column family as it may result in unexpected behavior.
> **Note**: GC policies associated with a replicated table cannot be destroyed directly. Destroying a GC policy is translated into never perform garbage collection, this is considered relaxing from pure age-based or version-based GC policy, hence not allowed. The workaround is unreplicating the instance first by updating the instance to have one cluster.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { instance, err := bigtable.NewInstance(ctx, "instance", &bigtable.InstanceArgs{ Name: pulumi.String("tf-instance"), Clusters: bigtable.InstanceClusterArray{ &bigtable.InstanceClusterArgs{ ClusterId: pulumi.String("tf-instance-cluster"), NumNodes: pulumi.Int(3), StorageType: pulumi.String("HDD"), }, }, }) if err != nil { return err } table, err := bigtable.NewTable(ctx, "table", &bigtable.TableArgs{ Name: pulumi.String("tf-table"), InstanceName: instance.Name, ColumnFamilies: bigtable.TableColumnFamilyArray{ &bigtable.TableColumnFamilyArgs{ Family: pulumi.String("name"), }, }, }) if err != nil { return err } _, err = bigtable.NewGCPolicy(ctx, "policy", &bigtable.GCPolicyArgs{ InstanceName: instance.Name, Table: table.Name, ColumnFamily: pulumi.String("name"), DeletionPolicy: pulumi.String("ABANDON"), GcRules: pulumi.String(` { "rules": [ { "max_age": "168h" } ] }
`),
}) if err != nil { return err } return nil }) }
```
Multiple conditions is also supported. `UNION` when any of its sub-policies apply (OR). `INTERSECTION` when all its sub-policies apply (AND)
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewGCPolicy(ctx, "policy", &bigtable.GCPolicyArgs{ InstanceName: pulumi.Any(instance.Name), Table: pulumi.Any(table.Name), ColumnFamily: pulumi.String("name"), DeletionPolicy: pulumi.String("ABANDON"), GcRules: pulumi.String(` { "mode": "union", "rules": [ { "max_age": "168h" }, { "max_version": 10 } ] }
`),
}) if err != nil { return err } return nil }) }
```
An example of more complex GC policy: ```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { instance, err := bigtable.NewInstance(ctx, "instance", &bigtable.InstanceArgs{ Name: pulumi.String("instance_name"), Clusters: bigtable.InstanceClusterArray{ &bigtable.InstanceClusterArgs{ ClusterId: pulumi.String("cid"), Zone: pulumi.String("us-central1-b"), }, }, InstanceType: pulumi.String("DEVELOPMENT"), DeletionProtection: pulumi.Bool(false), }) if err != nil { return err } table, err := bigtable.NewTable(ctx, "table", &bigtable.TableArgs{ Name: pulumi.String("your-table"), InstanceName: instance.ID(), ColumnFamilies: bigtable.TableColumnFamilyArray{ &bigtable.TableColumnFamilyArgs{ Family: pulumi.String("cf1"), }, }, }) if err != nil { return err } _, err = bigtable.NewGCPolicy(ctx, "policy", &bigtable.GCPolicyArgs{ InstanceName: instance.ID(), Table: table.Name, ColumnFamily: pulumi.String("cf1"), DeletionPolicy: pulumi.String("ABANDON"), GcRules: pulumi.String(` { "mode": "union", "rules": [ { "max_age": "10h" }, { "mode": "intersection", "rules": [ { "max_age": "2h" }, { "max_version": 2 } ] } ] }
`),
}) if err != nil { return err } return nil }) }
``` This is equivalent to running the following `cbt` command:
## Import
This resource does not support import.
func GetGCPolicy ¶
func GetGCPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *GCPolicyState, opts ...pulumi.ResourceOption) (*GCPolicy, error)
GetGCPolicy gets an existing GCPolicy 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 NewGCPolicy ¶
func NewGCPolicy(ctx *pulumi.Context, name string, args *GCPolicyArgs, opts ...pulumi.ResourceOption) (*GCPolicy, error)
NewGCPolicy registers a new resource with the given unique name, arguments, and options.
func (*GCPolicy) ElementType ¶
func (*GCPolicy) ToGCPolicyOutput ¶
func (i *GCPolicy) ToGCPolicyOutput() GCPolicyOutput
func (*GCPolicy) ToGCPolicyOutputWithContext ¶
func (i *GCPolicy) ToGCPolicyOutputWithContext(ctx context.Context) GCPolicyOutput
type GCPolicyArgs ¶
type GCPolicyArgs struct { // The name of the column family. ColumnFamily pulumi.StringInput // The deletion policy for the GC policy. // Setting ABANDON allows the resource to be abandoned rather than deleted. This is useful for GC policy as it cannot be deleted in a replicated instance. // // Possible values are: `ABANDON`. DeletionPolicy pulumi.StringPtrInput // Serialized JSON object to represent a more complex GC policy. Conflicts with `mode`, `maxAge` and `maxVersion`. Conflicts with `mode`, `maxAge` and `maxVersion`. GcRules pulumi.StringPtrInput // Boolean for whether to allow ignoring warnings when updating the gc policy. // Setting this to `true` allows relaxing the gc policy for replicated clusters by up to 90 days, but keep in mind this may increase how long clusters are inconsistent. Make sure // you understand the risks listed at https://cloud.google.com/bigtable/docs/garbage-collection#increasing before setting this option. // // *** IgnoreWarnings pulumi.BoolPtrInput // The name of the Bigtable instance. InstanceName pulumi.StringInput // GC policy that applies to all cells older than the given age. MaxAge GCPolicyMaxAgePtrInput // GC policy that applies to all versions of a cell except for the most recent. MaxVersions GCPolicyMaxVersionArrayInput // If multiple policies are set, you should choose between `UNION` OR `INTERSECTION`. Mode 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 name of the table. Table pulumi.StringInput }
The set of arguments for constructing a GCPolicy resource.
func (GCPolicyArgs) ElementType ¶
func (GCPolicyArgs) ElementType() reflect.Type
type GCPolicyArray ¶
type GCPolicyArray []GCPolicyInput
func (GCPolicyArray) ElementType ¶
func (GCPolicyArray) ElementType() reflect.Type
func (GCPolicyArray) ToGCPolicyArrayOutput ¶
func (i GCPolicyArray) ToGCPolicyArrayOutput() GCPolicyArrayOutput
func (GCPolicyArray) ToGCPolicyArrayOutputWithContext ¶
func (i GCPolicyArray) ToGCPolicyArrayOutputWithContext(ctx context.Context) GCPolicyArrayOutput
type GCPolicyArrayInput ¶
type GCPolicyArrayInput interface { pulumi.Input ToGCPolicyArrayOutput() GCPolicyArrayOutput ToGCPolicyArrayOutputWithContext(context.Context) GCPolicyArrayOutput }
GCPolicyArrayInput is an input type that accepts GCPolicyArray and GCPolicyArrayOutput values. You can construct a concrete instance of `GCPolicyArrayInput` via:
GCPolicyArray{ GCPolicyArgs{...} }
type GCPolicyArrayOutput ¶
type GCPolicyArrayOutput struct{ *pulumi.OutputState }
func (GCPolicyArrayOutput) ElementType ¶
func (GCPolicyArrayOutput) ElementType() reflect.Type
func (GCPolicyArrayOutput) Index ¶
func (o GCPolicyArrayOutput) Index(i pulumi.IntInput) GCPolicyOutput
func (GCPolicyArrayOutput) ToGCPolicyArrayOutput ¶
func (o GCPolicyArrayOutput) ToGCPolicyArrayOutput() GCPolicyArrayOutput
func (GCPolicyArrayOutput) ToGCPolicyArrayOutputWithContext ¶
func (o GCPolicyArrayOutput) ToGCPolicyArrayOutputWithContext(ctx context.Context) GCPolicyArrayOutput
type GCPolicyInput ¶
type GCPolicyInput interface { pulumi.Input ToGCPolicyOutput() GCPolicyOutput ToGCPolicyOutputWithContext(ctx context.Context) GCPolicyOutput }
type GCPolicyMap ¶
type GCPolicyMap map[string]GCPolicyInput
func (GCPolicyMap) ElementType ¶
func (GCPolicyMap) ElementType() reflect.Type
func (GCPolicyMap) ToGCPolicyMapOutput ¶
func (i GCPolicyMap) ToGCPolicyMapOutput() GCPolicyMapOutput
func (GCPolicyMap) ToGCPolicyMapOutputWithContext ¶
func (i GCPolicyMap) ToGCPolicyMapOutputWithContext(ctx context.Context) GCPolicyMapOutput
type GCPolicyMapInput ¶
type GCPolicyMapInput interface { pulumi.Input ToGCPolicyMapOutput() GCPolicyMapOutput ToGCPolicyMapOutputWithContext(context.Context) GCPolicyMapOutput }
GCPolicyMapInput is an input type that accepts GCPolicyMap and GCPolicyMapOutput values. You can construct a concrete instance of `GCPolicyMapInput` via:
GCPolicyMap{ "key": GCPolicyArgs{...} }
type GCPolicyMapOutput ¶
type GCPolicyMapOutput struct{ *pulumi.OutputState }
func (GCPolicyMapOutput) ElementType ¶
func (GCPolicyMapOutput) ElementType() reflect.Type
func (GCPolicyMapOutput) MapIndex ¶
func (o GCPolicyMapOutput) MapIndex(k pulumi.StringInput) GCPolicyOutput
func (GCPolicyMapOutput) ToGCPolicyMapOutput ¶
func (o GCPolicyMapOutput) ToGCPolicyMapOutput() GCPolicyMapOutput
func (GCPolicyMapOutput) ToGCPolicyMapOutputWithContext ¶
func (o GCPolicyMapOutput) ToGCPolicyMapOutputWithContext(ctx context.Context) GCPolicyMapOutput
type GCPolicyMaxAge ¶
type GCPolicyMaxAgeArgs ¶
type GCPolicyMaxAgeArgs struct { // Number of days before applying GC policy. // // Deprecated: Deprecated in favor of duration Days pulumi.IntPtrInput `pulumi:"days"` // Duration before applying GC policy (ex. "8h"). This is required when `days` isn't set // // *** Duration pulumi.StringPtrInput `pulumi:"duration"` }
func (GCPolicyMaxAgeArgs) ElementType ¶
func (GCPolicyMaxAgeArgs) ElementType() reflect.Type
func (GCPolicyMaxAgeArgs) ToGCPolicyMaxAgeOutput ¶
func (i GCPolicyMaxAgeArgs) ToGCPolicyMaxAgeOutput() GCPolicyMaxAgeOutput
func (GCPolicyMaxAgeArgs) ToGCPolicyMaxAgeOutputWithContext ¶
func (i GCPolicyMaxAgeArgs) ToGCPolicyMaxAgeOutputWithContext(ctx context.Context) GCPolicyMaxAgeOutput
func (GCPolicyMaxAgeArgs) ToGCPolicyMaxAgePtrOutput ¶
func (i GCPolicyMaxAgeArgs) ToGCPolicyMaxAgePtrOutput() GCPolicyMaxAgePtrOutput
func (GCPolicyMaxAgeArgs) ToGCPolicyMaxAgePtrOutputWithContext ¶
func (i GCPolicyMaxAgeArgs) ToGCPolicyMaxAgePtrOutputWithContext(ctx context.Context) GCPolicyMaxAgePtrOutput
type GCPolicyMaxAgeInput ¶
type GCPolicyMaxAgeInput interface { pulumi.Input ToGCPolicyMaxAgeOutput() GCPolicyMaxAgeOutput ToGCPolicyMaxAgeOutputWithContext(context.Context) GCPolicyMaxAgeOutput }
GCPolicyMaxAgeInput is an input type that accepts GCPolicyMaxAgeArgs and GCPolicyMaxAgeOutput values. You can construct a concrete instance of `GCPolicyMaxAgeInput` via:
GCPolicyMaxAgeArgs{...}
type GCPolicyMaxAgeOutput ¶
type GCPolicyMaxAgeOutput struct{ *pulumi.OutputState }
func (GCPolicyMaxAgeOutput) Days
deprecated
func (o GCPolicyMaxAgeOutput) Days() pulumi.IntPtrOutput
Number of days before applying GC policy.
Deprecated: Deprecated in favor of duration
func (GCPolicyMaxAgeOutput) Duration ¶
func (o GCPolicyMaxAgeOutput) Duration() pulumi.StringPtrOutput
Duration before applying GC policy (ex. "8h"). This is required when `days` isn't set
***
func (GCPolicyMaxAgeOutput) ElementType ¶
func (GCPolicyMaxAgeOutput) ElementType() reflect.Type
func (GCPolicyMaxAgeOutput) ToGCPolicyMaxAgeOutput ¶
func (o GCPolicyMaxAgeOutput) ToGCPolicyMaxAgeOutput() GCPolicyMaxAgeOutput
func (GCPolicyMaxAgeOutput) ToGCPolicyMaxAgeOutputWithContext ¶
func (o GCPolicyMaxAgeOutput) ToGCPolicyMaxAgeOutputWithContext(ctx context.Context) GCPolicyMaxAgeOutput
func (GCPolicyMaxAgeOutput) ToGCPolicyMaxAgePtrOutput ¶
func (o GCPolicyMaxAgeOutput) ToGCPolicyMaxAgePtrOutput() GCPolicyMaxAgePtrOutput
func (GCPolicyMaxAgeOutput) ToGCPolicyMaxAgePtrOutputWithContext ¶
func (o GCPolicyMaxAgeOutput) ToGCPolicyMaxAgePtrOutputWithContext(ctx context.Context) GCPolicyMaxAgePtrOutput
type GCPolicyMaxAgePtrInput ¶
type GCPolicyMaxAgePtrInput interface { pulumi.Input ToGCPolicyMaxAgePtrOutput() GCPolicyMaxAgePtrOutput ToGCPolicyMaxAgePtrOutputWithContext(context.Context) GCPolicyMaxAgePtrOutput }
GCPolicyMaxAgePtrInput is an input type that accepts GCPolicyMaxAgeArgs, GCPolicyMaxAgePtr and GCPolicyMaxAgePtrOutput values. You can construct a concrete instance of `GCPolicyMaxAgePtrInput` via:
GCPolicyMaxAgeArgs{...} or: nil
func GCPolicyMaxAgePtr ¶
func GCPolicyMaxAgePtr(v *GCPolicyMaxAgeArgs) GCPolicyMaxAgePtrInput
type GCPolicyMaxAgePtrOutput ¶
type GCPolicyMaxAgePtrOutput struct{ *pulumi.OutputState }
func (GCPolicyMaxAgePtrOutput) Days
deprecated
func (o GCPolicyMaxAgePtrOutput) Days() pulumi.IntPtrOutput
Number of days before applying GC policy.
Deprecated: Deprecated in favor of duration
func (GCPolicyMaxAgePtrOutput) Duration ¶
func (o GCPolicyMaxAgePtrOutput) Duration() pulumi.StringPtrOutput
Duration before applying GC policy (ex. "8h"). This is required when `days` isn't set
***
func (GCPolicyMaxAgePtrOutput) Elem ¶
func (o GCPolicyMaxAgePtrOutput) Elem() GCPolicyMaxAgeOutput
func (GCPolicyMaxAgePtrOutput) ElementType ¶
func (GCPolicyMaxAgePtrOutput) ElementType() reflect.Type
func (GCPolicyMaxAgePtrOutput) ToGCPolicyMaxAgePtrOutput ¶
func (o GCPolicyMaxAgePtrOutput) ToGCPolicyMaxAgePtrOutput() GCPolicyMaxAgePtrOutput
func (GCPolicyMaxAgePtrOutput) ToGCPolicyMaxAgePtrOutputWithContext ¶
func (o GCPolicyMaxAgePtrOutput) ToGCPolicyMaxAgePtrOutputWithContext(ctx context.Context) GCPolicyMaxAgePtrOutput
type GCPolicyMaxVersion ¶
type GCPolicyMaxVersion struct { // Number of version before applying the GC policy. // // *** // `gcRules` include 2 fields: Number int `pulumi:"number"` }
type GCPolicyMaxVersionArgs ¶
type GCPolicyMaxVersionArgs struct { // Number of version before applying the GC policy. // // *** // `gcRules` include 2 fields: Number pulumi.IntInput `pulumi:"number"` }
func (GCPolicyMaxVersionArgs) ElementType ¶
func (GCPolicyMaxVersionArgs) ElementType() reflect.Type
func (GCPolicyMaxVersionArgs) ToGCPolicyMaxVersionOutput ¶
func (i GCPolicyMaxVersionArgs) ToGCPolicyMaxVersionOutput() GCPolicyMaxVersionOutput
func (GCPolicyMaxVersionArgs) ToGCPolicyMaxVersionOutputWithContext ¶
func (i GCPolicyMaxVersionArgs) ToGCPolicyMaxVersionOutputWithContext(ctx context.Context) GCPolicyMaxVersionOutput
type GCPolicyMaxVersionArray ¶
type GCPolicyMaxVersionArray []GCPolicyMaxVersionInput
func (GCPolicyMaxVersionArray) ElementType ¶
func (GCPolicyMaxVersionArray) ElementType() reflect.Type
func (GCPolicyMaxVersionArray) ToGCPolicyMaxVersionArrayOutput ¶
func (i GCPolicyMaxVersionArray) ToGCPolicyMaxVersionArrayOutput() GCPolicyMaxVersionArrayOutput
func (GCPolicyMaxVersionArray) ToGCPolicyMaxVersionArrayOutputWithContext ¶
func (i GCPolicyMaxVersionArray) ToGCPolicyMaxVersionArrayOutputWithContext(ctx context.Context) GCPolicyMaxVersionArrayOutput
type GCPolicyMaxVersionArrayInput ¶
type GCPolicyMaxVersionArrayInput interface { pulumi.Input ToGCPolicyMaxVersionArrayOutput() GCPolicyMaxVersionArrayOutput ToGCPolicyMaxVersionArrayOutputWithContext(context.Context) GCPolicyMaxVersionArrayOutput }
GCPolicyMaxVersionArrayInput is an input type that accepts GCPolicyMaxVersionArray and GCPolicyMaxVersionArrayOutput values. You can construct a concrete instance of `GCPolicyMaxVersionArrayInput` via:
GCPolicyMaxVersionArray{ GCPolicyMaxVersionArgs{...} }
type GCPolicyMaxVersionArrayOutput ¶
type GCPolicyMaxVersionArrayOutput struct{ *pulumi.OutputState }
func (GCPolicyMaxVersionArrayOutput) ElementType ¶
func (GCPolicyMaxVersionArrayOutput) ElementType() reflect.Type
func (GCPolicyMaxVersionArrayOutput) Index ¶
func (o GCPolicyMaxVersionArrayOutput) Index(i pulumi.IntInput) GCPolicyMaxVersionOutput
func (GCPolicyMaxVersionArrayOutput) ToGCPolicyMaxVersionArrayOutput ¶
func (o GCPolicyMaxVersionArrayOutput) ToGCPolicyMaxVersionArrayOutput() GCPolicyMaxVersionArrayOutput
func (GCPolicyMaxVersionArrayOutput) ToGCPolicyMaxVersionArrayOutputWithContext ¶
func (o GCPolicyMaxVersionArrayOutput) ToGCPolicyMaxVersionArrayOutputWithContext(ctx context.Context) GCPolicyMaxVersionArrayOutput
type GCPolicyMaxVersionInput ¶
type GCPolicyMaxVersionInput interface { pulumi.Input ToGCPolicyMaxVersionOutput() GCPolicyMaxVersionOutput ToGCPolicyMaxVersionOutputWithContext(context.Context) GCPolicyMaxVersionOutput }
GCPolicyMaxVersionInput is an input type that accepts GCPolicyMaxVersionArgs and GCPolicyMaxVersionOutput values. You can construct a concrete instance of `GCPolicyMaxVersionInput` via:
GCPolicyMaxVersionArgs{...}
type GCPolicyMaxVersionOutput ¶
type GCPolicyMaxVersionOutput struct{ *pulumi.OutputState }
func (GCPolicyMaxVersionOutput) ElementType ¶
func (GCPolicyMaxVersionOutput) ElementType() reflect.Type
func (GCPolicyMaxVersionOutput) Number ¶
func (o GCPolicyMaxVersionOutput) Number() pulumi.IntOutput
Number of version before applying the GC policy.
*** `gcRules` include 2 fields:
func (GCPolicyMaxVersionOutput) ToGCPolicyMaxVersionOutput ¶
func (o GCPolicyMaxVersionOutput) ToGCPolicyMaxVersionOutput() GCPolicyMaxVersionOutput
func (GCPolicyMaxVersionOutput) ToGCPolicyMaxVersionOutputWithContext ¶
func (o GCPolicyMaxVersionOutput) ToGCPolicyMaxVersionOutputWithContext(ctx context.Context) GCPolicyMaxVersionOutput
type GCPolicyOutput ¶
type GCPolicyOutput struct{ *pulumi.OutputState }
func (GCPolicyOutput) ColumnFamily ¶
func (o GCPolicyOutput) ColumnFamily() pulumi.StringOutput
The name of the column family.
func (GCPolicyOutput) DeletionPolicy ¶
func (o GCPolicyOutput) DeletionPolicy() pulumi.StringPtrOutput
The deletion policy for the GC policy. Setting ABANDON allows the resource to be abandoned rather than deleted. This is useful for GC policy as it cannot be deleted in a replicated instance.
Possible values are: `ABANDON`.
func (GCPolicyOutput) ElementType ¶
func (GCPolicyOutput) ElementType() reflect.Type
func (GCPolicyOutput) GcRules ¶
func (o GCPolicyOutput) GcRules() pulumi.StringPtrOutput
Serialized JSON object to represent a more complex GC policy. Conflicts with `mode`, `maxAge` and `maxVersion`. Conflicts with `mode`, `maxAge` and `maxVersion`.
func (GCPolicyOutput) IgnoreWarnings ¶
func (o GCPolicyOutput) IgnoreWarnings() pulumi.BoolPtrOutput
Boolean for whether to allow ignoring warnings when updating the gc policy. Setting this to `true` allows relaxing the gc policy for replicated clusters by up to 90 days, but keep in mind this may increase how long clusters are inconsistent. Make sure you understand the risks listed at https://cloud.google.com/bigtable/docs/garbage-collection#increasing before setting this option.
***
func (GCPolicyOutput) InstanceName ¶
func (o GCPolicyOutput) InstanceName() pulumi.StringOutput
The name of the Bigtable instance.
func (GCPolicyOutput) MaxAge ¶
func (o GCPolicyOutput) MaxAge() GCPolicyMaxAgePtrOutput
GC policy that applies to all cells older than the given age.
func (GCPolicyOutput) MaxVersions ¶
func (o GCPolicyOutput) MaxVersions() GCPolicyMaxVersionArrayOutput
GC policy that applies to all versions of a cell except for the most recent.
func (GCPolicyOutput) Mode ¶
func (o GCPolicyOutput) Mode() pulumi.StringPtrOutput
If multiple policies are set, you should choose between `UNION` OR `INTERSECTION`.
func (GCPolicyOutput) Project ¶
func (o GCPolicyOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (GCPolicyOutput) Table ¶
func (o GCPolicyOutput) Table() pulumi.StringOutput
The name of the table.
func (GCPolicyOutput) ToGCPolicyOutput ¶
func (o GCPolicyOutput) ToGCPolicyOutput() GCPolicyOutput
func (GCPolicyOutput) ToGCPolicyOutputWithContext ¶
func (o GCPolicyOutput) ToGCPolicyOutputWithContext(ctx context.Context) GCPolicyOutput
type GCPolicyState ¶
type GCPolicyState struct { // The name of the column family. ColumnFamily pulumi.StringPtrInput // The deletion policy for the GC policy. // Setting ABANDON allows the resource to be abandoned rather than deleted. This is useful for GC policy as it cannot be deleted in a replicated instance. // // Possible values are: `ABANDON`. DeletionPolicy pulumi.StringPtrInput // Serialized JSON object to represent a more complex GC policy. Conflicts with `mode`, `maxAge` and `maxVersion`. Conflicts with `mode`, `maxAge` and `maxVersion`. GcRules pulumi.StringPtrInput // Boolean for whether to allow ignoring warnings when updating the gc policy. // Setting this to `true` allows relaxing the gc policy for replicated clusters by up to 90 days, but keep in mind this may increase how long clusters are inconsistent. Make sure // you understand the risks listed at https://cloud.google.com/bigtable/docs/garbage-collection#increasing before setting this option. // // *** IgnoreWarnings pulumi.BoolPtrInput // The name of the Bigtable instance. InstanceName pulumi.StringPtrInput // GC policy that applies to all cells older than the given age. MaxAge GCPolicyMaxAgePtrInput // GC policy that applies to all versions of a cell except for the most recent. MaxVersions GCPolicyMaxVersionArrayInput // If multiple policies are set, you should choose between `UNION` OR `INTERSECTION`. Mode 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 name of the table. Table pulumi.StringPtrInput }
func (GCPolicyState) ElementType ¶
func (GCPolicyState) ElementType() reflect.Type
type Instance ¶
type Instance struct { pulumi.CustomResourceState // A block of cluster configuration options. This can be specified at least once, and up // to as many as possible within 8 cloud regions. Removing the field entirely from the config will cause the provider // to default to the backend value. See structure below. // // *** Clusters InstanceClusterArrayOutput `pulumi:"clusters"` // Whether or not to allow this provider to destroy the instance. Unless this field is set to false // in the statefile, a `pulumi destroy` or `pulumi up` that would delete the instance will fail. DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"` // The human-readable display name of the Bigtable instance. Defaults to the instance `name`. DisplayName pulumi.StringOutput `pulumi:"displayName"` // All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services. // // *** EffectiveLabels pulumi.StringMapOutput `pulumi:"effectiveLabels"` // Deleting a BigTable instance can be blocked if any backups are present in the instance. When `forceDestroy` is set to true, the Provider will delete all backups found in the BigTable instance before attempting to delete the instance itself. Defaults to false. ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"` // The instance type to create. One of `"DEVELOPMENT"` or `"PRODUCTION"`. Defaults to `"PRODUCTION"`. // It is recommended to leave this field unspecified since the distinction between `"DEVELOPMENT"` and `"PRODUCTION"` instances is going away, // and all instances will become `"PRODUCTION"` instances. This means that new and existing `"DEVELOPMENT"` instances will be converted to // `"PRODUCTION"` instances. It is recommended for users to use `"PRODUCTION"` instances in any case, since a 1-node `"PRODUCTION"` instance // is functionally identical to a `"DEVELOPMENT"` instance, but without the accompanying restrictions. // // Deprecated: It is recommended to leave this field unspecified since the distinction between "DEVELOPMENT" and "PRODUCTION" instances is going away, and all instances will become "PRODUCTION" instances. This means that new and existing "DEVELOPMENT" instances will be converted to "PRODUCTION" instances. It is recommended for users to use "PRODUCTION" instances in any case, since a 1-node "PRODUCTION" instance is functionally identical to a "DEVELOPMENT" instance, but without the accompanying restrictions. InstanceType pulumi.StringPtrOutput `pulumi:"instanceType"` // A set of key/value label pairs to assign to the resource. Label keys must follow the requirements at https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements. // // **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. // Please refer to the field 'effective_labels' for all of the labels present on the resource. Labels pulumi.StringMapOutput `pulumi:"labels"` // The name (also called Instance Id in the Cloud Console) of the Cloud Bigtable instance. Must be 6-33 characters and must only contain hyphens, lowercase letters and numbers. 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 combination of labels configured directly on the resource and default labels configured on the provider. PulumiLabels pulumi.StringMapOutput `pulumi:"pulumiLabels"` }
## +---
subcategory: "Cloud Bigtable" description: |-
Creates a Google Bigtable instance.
---
bigtable.Instance ¶
Creates a Google Bigtable instance. For more information see:
* [API documentation](https://cloud.google.com/bigtable/docs/reference/admin/rest/v2/projects.instances.clusters) * How-to Guides
- [Official Documentation](https://cloud.google.com/bigtable/docs)
## Example Usage
### Simple Instance
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstance(ctx, "production-instance", &bigtable.InstanceArgs{ Name: pulumi.String("tf-instance"), Clusters: bigtable.InstanceClusterArray{ &bigtable.InstanceClusterArgs{ ClusterId: pulumi.String("tf-instance-cluster"), NumNodes: pulumi.Int(1), StorageType: pulumi.String("HDD"), }, }, Labels: pulumi.StringMap{ "my-label": pulumi.String("prod-label"), }, }) if err != nil { return err } return nil }) }
```
### Replicated Instance
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstance(ctx, "production-instance", &bigtable.InstanceArgs{ Name: pulumi.String("tf-instance"), Clusters: bigtable.InstanceClusterArray{ &bigtable.InstanceClusterArgs{ ClusterId: pulumi.String("tf-instance-cluster1"), NumNodes: pulumi.Int(1), StorageType: pulumi.String("HDD"), Zone: pulumi.String("us-central1-c"), }, &bigtable.InstanceClusterArgs{ ClusterId: pulumi.String("tf-instance-cluster2"), StorageType: pulumi.String("HDD"), Zone: pulumi.String("us-central1-b"), AutoscalingConfig: &bigtable.InstanceClusterAutoscalingConfigArgs{ MinNodes: pulumi.Int(1), MaxNodes: pulumi.Int(3), CpuTarget: pulumi.Int(50), }, }, }, Labels: pulumi.StringMap{ "my-label": pulumi.String("prod-label"), }, }) if err != nil { return err } return nil }) }
```
## Import
Bigtable Instances can be imported using any of these accepted formats:
* `projects/{{project}}/instances/{{name}}`
* `{{project}}/{{name}}`
* `{{name}}`
When using the `pulumi import` command, Bigtable Instances can be imported using one of the formats above. For example:
```sh $ pulumi import gcp:bigtable/instance:Instance default projects/{{project}}/instances/{{name}} ```
```sh $ pulumi import gcp:bigtable/instance:Instance default {{project}}/{{name}} ```
```sh $ pulumi import gcp:bigtable/instance:Instance default {{name}} ```
func GetInstance ¶
func GetInstance(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)
GetInstance gets an existing Instance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewInstance ¶
func NewInstance(ctx *pulumi.Context, name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)
NewInstance registers a new resource with the given unique name, arguments, and options.
func (*Instance) ElementType ¶
func (*Instance) ToInstanceOutput ¶
func (i *Instance) ToInstanceOutput() InstanceOutput
func (*Instance) ToInstanceOutputWithContext ¶
func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
type InstanceArgs ¶
type InstanceArgs struct { // A block of cluster configuration options. This can be specified at least once, and up // to as many as possible within 8 cloud regions. Removing the field entirely from the config will cause the provider // to default to the backend value. See structure below. // // *** Clusters InstanceClusterArrayInput // Whether or not to allow this provider to destroy the instance. Unless this field is set to false // in the statefile, a `pulumi destroy` or `pulumi up` that would delete the instance will fail. DeletionProtection pulumi.BoolPtrInput // The human-readable display name of the Bigtable instance. Defaults to the instance `name`. DisplayName pulumi.StringPtrInput // Deleting a BigTable instance can be blocked if any backups are present in the instance. When `forceDestroy` is set to true, the Provider will delete all backups found in the BigTable instance before attempting to delete the instance itself. Defaults to false. ForceDestroy pulumi.BoolPtrInput // The instance type to create. One of `"DEVELOPMENT"` or `"PRODUCTION"`. Defaults to `"PRODUCTION"`. // It is recommended to leave this field unspecified since the distinction between `"DEVELOPMENT"` and `"PRODUCTION"` instances is going away, // and all instances will become `"PRODUCTION"` instances. This means that new and existing `"DEVELOPMENT"` instances will be converted to // `"PRODUCTION"` instances. It is recommended for users to use `"PRODUCTION"` instances in any case, since a 1-node `"PRODUCTION"` instance // is functionally identical to a `"DEVELOPMENT"` instance, but without the accompanying restrictions. // // Deprecated: It is recommended to leave this field unspecified since the distinction between "DEVELOPMENT" and "PRODUCTION" instances is going away, and all instances will become "PRODUCTION" instances. This means that new and existing "DEVELOPMENT" instances will be converted to "PRODUCTION" instances. It is recommended for users to use "PRODUCTION" instances in any case, since a 1-node "PRODUCTION" instance is functionally identical to a "DEVELOPMENT" instance, but without the accompanying restrictions. InstanceType pulumi.StringPtrInput // A set of key/value label pairs to assign to the resource. Label keys must follow the requirements at https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements. // // **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. // Please refer to the field 'effective_labels' for all of the labels present on the resource. Labels pulumi.StringMapInput // The name (also called Instance Id in the Cloud Console) of the Cloud Bigtable instance. Must be 6-33 characters and must only contain hyphens, lowercase letters and numbers. Name pulumi.StringPtrInput // The ID of the project in which the resource belongs. If it // is not provided, the provider project is used. Project pulumi.StringPtrInput }
The set of arguments for constructing a Instance resource.
func (InstanceArgs) ElementType ¶
func (InstanceArgs) ElementType() reflect.Type
type InstanceArray ¶
type InstanceArray []InstanceInput
func (InstanceArray) ElementType ¶
func (InstanceArray) ElementType() reflect.Type
func (InstanceArray) ToInstanceArrayOutput ¶
func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput
func (InstanceArray) ToInstanceArrayOutputWithContext ¶
func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput
type InstanceArrayInput ¶
type InstanceArrayInput interface { pulumi.Input ToInstanceArrayOutput() InstanceArrayOutput ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput }
InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:
InstanceArray{ InstanceArgs{...} }
type InstanceArrayOutput ¶
type InstanceArrayOutput struct{ *pulumi.OutputState }
func (InstanceArrayOutput) ElementType ¶
func (InstanceArrayOutput) ElementType() reflect.Type
func (InstanceArrayOutput) Index ¶
func (o InstanceArrayOutput) Index(i pulumi.IntInput) InstanceOutput
func (InstanceArrayOutput) ToInstanceArrayOutput ¶
func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput
func (InstanceArrayOutput) ToInstanceArrayOutputWithContext ¶
func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput
type InstanceCluster ¶
type InstanceCluster struct { // [Autoscaling](https://cloud.google.com/bigtable/docs/autoscaling#parameters) config for the cluster, contains the following arguments: AutoscalingConfig *InstanceClusterAutoscalingConfig `pulumi:"autoscalingConfig"` // The ID of the Cloud Bigtable cluster. Must be 6-30 characters and must only contain hyphens, lowercase letters and numbers. ClusterId string `pulumi:"clusterId"` // Describes the Cloud KMS encryption key that will be used to protect the destination Bigtable cluster. The requirements for this key are: 1) The Cloud Bigtable service account associated with the project that contains this cluster must be granted the `cloudkms.cryptoKeyEncrypterDecrypter` role on the CMEK key. 2) Only regional keys can be used and the region of the CMEK key must match the region of the cluster. // // > **Note**: Removing the field entirely from the config will cause the provider to default to the backend value. // // !> **Warning**: Modifying this field will cause the provider to delete/recreate the entire resource. // // !> **Warning:** Modifying the `storageType`, `zone` or `kmsKeyName` of an existing cluster (by // `clusterId`) will cause the provider to delete/recreate the entire // `bigtable.Instance` resource. If these values are changing, use a new // `clusterId`. KmsKeyName *string `pulumi:"kmsKeyName"` // The number of nodes in the cluster. // If no value is set, Cloud Bigtable automatically allocates nodes based on your data footprint and optimized for 50% storage utilization. NumNodes *int `pulumi:"numNodes"` // describes the current state of the cluster. State *string `pulumi:"state"` // The storage type to use. One of `"SSD"` or // `"HDD"`. Defaults to `"SSD"`. StorageType *string `pulumi:"storageType"` // The zone to create the Cloud Bigtable cluster in. If it not // specified, the provider zone is used. Each cluster must have a different zone in the same region. Zones that support // Bigtable instances are noted on the [Cloud Bigtable locations page](https://cloud.google.com/bigtable/docs/locations). Zone *string `pulumi:"zone"` }
type InstanceClusterArgs ¶
type InstanceClusterArgs struct { // [Autoscaling](https://cloud.google.com/bigtable/docs/autoscaling#parameters) config for the cluster, contains the following arguments: AutoscalingConfig InstanceClusterAutoscalingConfigPtrInput `pulumi:"autoscalingConfig"` // The ID of the Cloud Bigtable cluster. Must be 6-30 characters and must only contain hyphens, lowercase letters and numbers. ClusterId pulumi.StringInput `pulumi:"clusterId"` // Describes the Cloud KMS encryption key that will be used to protect the destination Bigtable cluster. The requirements for this key are: 1) The Cloud Bigtable service account associated with the project that contains this cluster must be granted the `cloudkms.cryptoKeyEncrypterDecrypter` role on the CMEK key. 2) Only regional keys can be used and the region of the CMEK key must match the region of the cluster. // // > **Note**: Removing the field entirely from the config will cause the provider to default to the backend value. // // !> **Warning**: Modifying this field will cause the provider to delete/recreate the entire resource. // // !> **Warning:** Modifying the `storageType`, `zone` or `kmsKeyName` of an existing cluster (by // `clusterId`) will cause the provider to delete/recreate the entire // `bigtable.Instance` resource. If these values are changing, use a new // `clusterId`. KmsKeyName pulumi.StringPtrInput `pulumi:"kmsKeyName"` // The number of nodes in the cluster. // If no value is set, Cloud Bigtable automatically allocates nodes based on your data footprint and optimized for 50% storage utilization. NumNodes pulumi.IntPtrInput `pulumi:"numNodes"` // describes the current state of the cluster. State pulumi.StringPtrInput `pulumi:"state"` // The storage type to use. One of `"SSD"` or // `"HDD"`. Defaults to `"SSD"`. StorageType pulumi.StringPtrInput `pulumi:"storageType"` // The zone to create the Cloud Bigtable cluster in. If it not // specified, the provider zone is used. Each cluster must have a different zone in the same region. Zones that support // Bigtable instances are noted on the [Cloud Bigtable locations page](https://cloud.google.com/bigtable/docs/locations). Zone pulumi.StringPtrInput `pulumi:"zone"` }
func (InstanceClusterArgs) ElementType ¶
func (InstanceClusterArgs) ElementType() reflect.Type
func (InstanceClusterArgs) ToInstanceClusterOutput ¶
func (i InstanceClusterArgs) ToInstanceClusterOutput() InstanceClusterOutput
func (InstanceClusterArgs) ToInstanceClusterOutputWithContext ¶
func (i InstanceClusterArgs) ToInstanceClusterOutputWithContext(ctx context.Context) InstanceClusterOutput
type InstanceClusterArray ¶
type InstanceClusterArray []InstanceClusterInput
func (InstanceClusterArray) ElementType ¶
func (InstanceClusterArray) ElementType() reflect.Type
func (InstanceClusterArray) ToInstanceClusterArrayOutput ¶
func (i InstanceClusterArray) ToInstanceClusterArrayOutput() InstanceClusterArrayOutput
func (InstanceClusterArray) ToInstanceClusterArrayOutputWithContext ¶
func (i InstanceClusterArray) ToInstanceClusterArrayOutputWithContext(ctx context.Context) InstanceClusterArrayOutput
type InstanceClusterArrayInput ¶
type InstanceClusterArrayInput interface { pulumi.Input ToInstanceClusterArrayOutput() InstanceClusterArrayOutput ToInstanceClusterArrayOutputWithContext(context.Context) InstanceClusterArrayOutput }
InstanceClusterArrayInput is an input type that accepts InstanceClusterArray and InstanceClusterArrayOutput values. You can construct a concrete instance of `InstanceClusterArrayInput` via:
InstanceClusterArray{ InstanceClusterArgs{...} }
type InstanceClusterArrayOutput ¶
type InstanceClusterArrayOutput struct{ *pulumi.OutputState }
func (InstanceClusterArrayOutput) ElementType ¶
func (InstanceClusterArrayOutput) ElementType() reflect.Type
func (InstanceClusterArrayOutput) Index ¶
func (o InstanceClusterArrayOutput) Index(i pulumi.IntInput) InstanceClusterOutput
func (InstanceClusterArrayOutput) ToInstanceClusterArrayOutput ¶
func (o InstanceClusterArrayOutput) ToInstanceClusterArrayOutput() InstanceClusterArrayOutput
func (InstanceClusterArrayOutput) ToInstanceClusterArrayOutputWithContext ¶
func (o InstanceClusterArrayOutput) ToInstanceClusterArrayOutputWithContext(ctx context.Context) InstanceClusterArrayOutput
type InstanceClusterAutoscalingConfig ¶
type InstanceClusterAutoscalingConfig struct { // The target CPU utilization for autoscaling, in percentage. Must be between 10 and 80. CpuTarget int `pulumi:"cpuTarget"` // The maximum number of nodes for autoscaling. MaxNodes int `pulumi:"maxNodes"` // The minimum number of nodes for autoscaling. MinNodes int `pulumi:"minNodes"` // The target storage utilization for autoscaling, in GB, for each node in a cluster. This number is limited between 2560 (2.5TiB) and 5120 (5TiB) for a SSD cluster and between 8192 (8TiB) and 16384 (16 TiB) for an HDD cluster. If not set, whatever is already set for the cluster will not change, or if the cluster is just being created, it will use the default value of 2560 for SSD clusters and 8192 for HDD clusters. // // !> **Warning**: Only one of `autoscalingConfig` or `numNodes` should be set for a cluster. If both are set, `numNodes` is ignored. If none is set, autoscaling will be disabled and sized to the current node count. StorageTarget *int `pulumi:"storageTarget"` }
type InstanceClusterAutoscalingConfigArgs ¶
type InstanceClusterAutoscalingConfigArgs struct { // The target CPU utilization for autoscaling, in percentage. Must be between 10 and 80. CpuTarget pulumi.IntInput `pulumi:"cpuTarget"` // The maximum number of nodes for autoscaling. MaxNodes pulumi.IntInput `pulumi:"maxNodes"` // The minimum number of nodes for autoscaling. MinNodes pulumi.IntInput `pulumi:"minNodes"` // The target storage utilization for autoscaling, in GB, for each node in a cluster. This number is limited between 2560 (2.5TiB) and 5120 (5TiB) for a SSD cluster and between 8192 (8TiB) and 16384 (16 TiB) for an HDD cluster. If not set, whatever is already set for the cluster will not change, or if the cluster is just being created, it will use the default value of 2560 for SSD clusters and 8192 for HDD clusters. // // !> **Warning**: Only one of `autoscalingConfig` or `numNodes` should be set for a cluster. If both are set, `numNodes` is ignored. If none is set, autoscaling will be disabled and sized to the current node count. StorageTarget pulumi.IntPtrInput `pulumi:"storageTarget"` }
func (InstanceClusterAutoscalingConfigArgs) ElementType ¶
func (InstanceClusterAutoscalingConfigArgs) ElementType() reflect.Type
func (InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigOutput ¶
func (i InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigOutput() InstanceClusterAutoscalingConfigOutput
func (InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigOutputWithContext ¶
func (i InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigOutput
func (InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigPtrOutput ¶
func (i InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigPtrOutput() InstanceClusterAutoscalingConfigPtrOutput
func (InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigPtrOutputWithContext ¶
func (i InstanceClusterAutoscalingConfigArgs) ToInstanceClusterAutoscalingConfigPtrOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigPtrOutput
type InstanceClusterAutoscalingConfigInput ¶
type InstanceClusterAutoscalingConfigInput interface { pulumi.Input ToInstanceClusterAutoscalingConfigOutput() InstanceClusterAutoscalingConfigOutput ToInstanceClusterAutoscalingConfigOutputWithContext(context.Context) InstanceClusterAutoscalingConfigOutput }
InstanceClusterAutoscalingConfigInput is an input type that accepts InstanceClusterAutoscalingConfigArgs and InstanceClusterAutoscalingConfigOutput values. You can construct a concrete instance of `InstanceClusterAutoscalingConfigInput` via:
InstanceClusterAutoscalingConfigArgs{...}
type InstanceClusterAutoscalingConfigOutput ¶
type InstanceClusterAutoscalingConfigOutput struct{ *pulumi.OutputState }
func (InstanceClusterAutoscalingConfigOutput) CpuTarget ¶
func (o InstanceClusterAutoscalingConfigOutput) CpuTarget() pulumi.IntOutput
The target CPU utilization for autoscaling, in percentage. Must be between 10 and 80.
func (InstanceClusterAutoscalingConfigOutput) ElementType ¶
func (InstanceClusterAutoscalingConfigOutput) ElementType() reflect.Type
func (InstanceClusterAutoscalingConfigOutput) MaxNodes ¶
func (o InstanceClusterAutoscalingConfigOutput) MaxNodes() pulumi.IntOutput
The maximum number of nodes for autoscaling.
func (InstanceClusterAutoscalingConfigOutput) MinNodes ¶
func (o InstanceClusterAutoscalingConfigOutput) MinNodes() pulumi.IntOutput
The minimum number of nodes for autoscaling.
func (InstanceClusterAutoscalingConfigOutput) StorageTarget ¶
func (o InstanceClusterAutoscalingConfigOutput) StorageTarget() pulumi.IntPtrOutput
The target storage utilization for autoscaling, in GB, for each node in a cluster. This number is limited between 2560 (2.5TiB) and 5120 (5TiB) for a SSD cluster and between 8192 (8TiB) and 16384 (16 TiB) for an HDD cluster. If not set, whatever is already set for the cluster will not change, or if the cluster is just being created, it will use the default value of 2560 for SSD clusters and 8192 for HDD clusters.
!> **Warning**: Only one of `autoscalingConfig` or `numNodes` should be set for a cluster. If both are set, `numNodes` is ignored. If none is set, autoscaling will be disabled and sized to the current node count.
func (InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigOutput ¶
func (o InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigOutput() InstanceClusterAutoscalingConfigOutput
func (InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigOutputWithContext ¶
func (o InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigOutput
func (InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigPtrOutput ¶
func (o InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigPtrOutput() InstanceClusterAutoscalingConfigPtrOutput
func (InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigPtrOutputWithContext ¶
func (o InstanceClusterAutoscalingConfigOutput) ToInstanceClusterAutoscalingConfigPtrOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigPtrOutput
type InstanceClusterAutoscalingConfigPtrInput ¶
type InstanceClusterAutoscalingConfigPtrInput interface { pulumi.Input ToInstanceClusterAutoscalingConfigPtrOutput() InstanceClusterAutoscalingConfigPtrOutput ToInstanceClusterAutoscalingConfigPtrOutputWithContext(context.Context) InstanceClusterAutoscalingConfigPtrOutput }
InstanceClusterAutoscalingConfigPtrInput is an input type that accepts InstanceClusterAutoscalingConfigArgs, InstanceClusterAutoscalingConfigPtr and InstanceClusterAutoscalingConfigPtrOutput values. You can construct a concrete instance of `InstanceClusterAutoscalingConfigPtrInput` via:
InstanceClusterAutoscalingConfigArgs{...} or: nil
func InstanceClusterAutoscalingConfigPtr ¶
func InstanceClusterAutoscalingConfigPtr(v *InstanceClusterAutoscalingConfigArgs) InstanceClusterAutoscalingConfigPtrInput
type InstanceClusterAutoscalingConfigPtrOutput ¶
type InstanceClusterAutoscalingConfigPtrOutput struct{ *pulumi.OutputState }
func (InstanceClusterAutoscalingConfigPtrOutput) CpuTarget ¶
func (o InstanceClusterAutoscalingConfigPtrOutput) CpuTarget() pulumi.IntPtrOutput
The target CPU utilization for autoscaling, in percentage. Must be between 10 and 80.
func (InstanceClusterAutoscalingConfigPtrOutput) ElementType ¶
func (InstanceClusterAutoscalingConfigPtrOutput) ElementType() reflect.Type
func (InstanceClusterAutoscalingConfigPtrOutput) MaxNodes ¶
func (o InstanceClusterAutoscalingConfigPtrOutput) MaxNodes() pulumi.IntPtrOutput
The maximum number of nodes for autoscaling.
func (InstanceClusterAutoscalingConfigPtrOutput) MinNodes ¶
func (o InstanceClusterAutoscalingConfigPtrOutput) MinNodes() pulumi.IntPtrOutput
The minimum number of nodes for autoscaling.
func (InstanceClusterAutoscalingConfigPtrOutput) StorageTarget ¶
func (o InstanceClusterAutoscalingConfigPtrOutput) StorageTarget() pulumi.IntPtrOutput
The target storage utilization for autoscaling, in GB, for each node in a cluster. This number is limited between 2560 (2.5TiB) and 5120 (5TiB) for a SSD cluster and between 8192 (8TiB) and 16384 (16 TiB) for an HDD cluster. If not set, whatever is already set for the cluster will not change, or if the cluster is just being created, it will use the default value of 2560 for SSD clusters and 8192 for HDD clusters.
!> **Warning**: Only one of `autoscalingConfig` or `numNodes` should be set for a cluster. If both are set, `numNodes` is ignored. If none is set, autoscaling will be disabled and sized to the current node count.
func (InstanceClusterAutoscalingConfigPtrOutput) ToInstanceClusterAutoscalingConfigPtrOutput ¶
func (o InstanceClusterAutoscalingConfigPtrOutput) ToInstanceClusterAutoscalingConfigPtrOutput() InstanceClusterAutoscalingConfigPtrOutput
func (InstanceClusterAutoscalingConfigPtrOutput) ToInstanceClusterAutoscalingConfigPtrOutputWithContext ¶
func (o InstanceClusterAutoscalingConfigPtrOutput) ToInstanceClusterAutoscalingConfigPtrOutputWithContext(ctx context.Context) InstanceClusterAutoscalingConfigPtrOutput
type InstanceClusterInput ¶
type InstanceClusterInput interface { pulumi.Input ToInstanceClusterOutput() InstanceClusterOutput ToInstanceClusterOutputWithContext(context.Context) InstanceClusterOutput }
InstanceClusterInput is an input type that accepts InstanceClusterArgs and InstanceClusterOutput values. You can construct a concrete instance of `InstanceClusterInput` via:
InstanceClusterArgs{...}
type InstanceClusterOutput ¶
type InstanceClusterOutput struct{ *pulumi.OutputState }
func (InstanceClusterOutput) AutoscalingConfig ¶
func (o InstanceClusterOutput) AutoscalingConfig() InstanceClusterAutoscalingConfigPtrOutput
[Autoscaling](https://cloud.google.com/bigtable/docs/autoscaling#parameters) config for the cluster, contains the following arguments:
func (InstanceClusterOutput) ClusterId ¶
func (o InstanceClusterOutput) ClusterId() pulumi.StringOutput
The ID of the Cloud Bigtable cluster. Must be 6-30 characters and must only contain hyphens, lowercase letters and numbers.
func (InstanceClusterOutput) ElementType ¶
func (InstanceClusterOutput) ElementType() reflect.Type
func (InstanceClusterOutput) KmsKeyName ¶
func (o InstanceClusterOutput) KmsKeyName() pulumi.StringPtrOutput
Describes the Cloud KMS encryption key that will be used to protect the destination Bigtable cluster. The requirements for this key are: 1) The Cloud Bigtable service account associated with the project that contains this cluster must be granted the `cloudkms.cryptoKeyEncrypterDecrypter` role on the CMEK key. 2) Only regional keys can be used and the region of the CMEK key must match the region of the cluster.
> **Note**: Removing the field entirely from the config will cause the provider to default to the backend value.
!> **Warning**: Modifying this field will cause the provider to delete/recreate the entire resource.
!> **Warning:** Modifying the `storageType`, `zone` or `kmsKeyName` of an existing cluster (by `clusterId`) will cause the provider to delete/recreate the entire `bigtable.Instance` resource. If these values are changing, use a new `clusterId`.
func (InstanceClusterOutput) NumNodes ¶
func (o InstanceClusterOutput) NumNodes() pulumi.IntPtrOutput
The number of nodes in the cluster. If no value is set, Cloud Bigtable automatically allocates nodes based on your data footprint and optimized for 50% storage utilization.
func (InstanceClusterOutput) State ¶
func (o InstanceClusterOutput) State() pulumi.StringPtrOutput
describes the current state of the cluster.
func (InstanceClusterOutput) StorageType ¶
func (o InstanceClusterOutput) StorageType() pulumi.StringPtrOutput
The storage type to use. One of `"SSD"` or `"HDD"`. Defaults to `"SSD"`.
func (InstanceClusterOutput) ToInstanceClusterOutput ¶
func (o InstanceClusterOutput) ToInstanceClusterOutput() InstanceClusterOutput
func (InstanceClusterOutput) ToInstanceClusterOutputWithContext ¶
func (o InstanceClusterOutput) ToInstanceClusterOutputWithContext(ctx context.Context) InstanceClusterOutput
func (InstanceClusterOutput) Zone ¶
func (o InstanceClusterOutput) Zone() pulumi.StringPtrOutput
The zone to create the Cloud Bigtable cluster in. If it not specified, the provider zone is used. Each cluster must have a different zone in the same region. Zones that support Bigtable instances are noted on the [Cloud Bigtable locations page](https://cloud.google.com/bigtable/docs/locations).
type InstanceIamBinding ¶
type InstanceIamBinding struct { pulumi.CustomResourceState // An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below. Condition InstanceIamBindingConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the instances's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringOutput `pulumi:"instance"` // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Members pulumi.StringArrayOutput `pulumi:"members"` Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `bigtable.InstanceIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). Role pulumi.StringOutput `pulumi:"role"` }
Three different resources help you manage IAM policies on bigtable instances. Each of these resources serves a different use case:
* `bigtable.InstanceIamPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `bigtable.InstanceIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved. * `bigtable.InstanceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.
> **Note:** `bigtable.InstanceIamPolicy` **cannot** be used in conjunction with `bigtable.InstanceIamBinding` and `bigtable.InstanceIamMember` or they will fight over what your policy should be. In addition, be careful not to accidentally unset ownership of the instance as `bigtable.InstanceIamPolicy` replaces the entire policy.
> **Note:** `bigtable.InstanceIamBinding` resources **can be** used in conjunction with `bigtable.InstanceIamMember` resources **only if** they do not grant privilege to the same role.
## bigtable.InstanceIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewInstanceIamPolicy(ctx, "editor", &bigtable.InstanceIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamBinding(ctx, "editor", &bigtable.InstanceIamBindingArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamMember(ctx, "editor", &bigtable.InstanceIamMemberArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewInstanceIamPolicy(ctx, "editor", &bigtable.InstanceIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamBinding(ctx, "editor", &bigtable.InstanceIamBindingArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamMember(ctx, "editor", &bigtable.InstanceIamMemberArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
### Importing IAM policies
IAM policy imports use the `instance` identifier of the Bigtable Instance resource only. For example:
* `"projects/{project}/instances/{instance}"`
An `import` block (Terraform v1.5.0 and later) can be used to import IAM policies:
tf
import {
id = "projects/{project}/instances/{instance}" to = google_bigtable_instance_iam_policy.default
}
The `pulumi import` command can also be used:
```sh $ pulumi import gcp:bigtable/instanceIamBinding:InstanceIamBinding default projects/{project}/instances/{instance} ```
func GetInstanceIamBinding ¶
func GetInstanceIamBinding(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceIamBindingState, opts ...pulumi.ResourceOption) (*InstanceIamBinding, error)
GetInstanceIamBinding gets an existing InstanceIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewInstanceIamBinding ¶
func NewInstanceIamBinding(ctx *pulumi.Context, name string, args *InstanceIamBindingArgs, opts ...pulumi.ResourceOption) (*InstanceIamBinding, error)
NewInstanceIamBinding registers a new resource with the given unique name, arguments, and options.
func (*InstanceIamBinding) ElementType ¶
func (*InstanceIamBinding) ElementType() reflect.Type
func (*InstanceIamBinding) ToInstanceIamBindingOutput ¶
func (i *InstanceIamBinding) ToInstanceIamBindingOutput() InstanceIamBindingOutput
func (*InstanceIamBinding) ToInstanceIamBindingOutputWithContext ¶
func (i *InstanceIamBinding) ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput
type InstanceIamBindingArgs ¶
type InstanceIamBindingArgs struct { // An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below. Condition InstanceIamBindingConditionPtrInput // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringInput // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Members pulumi.StringArrayInput Project pulumi.StringPtrInput // The role that should be applied. Only one // `bigtable.InstanceIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). Role pulumi.StringInput }
The set of arguments for constructing a InstanceIamBinding resource.
func (InstanceIamBindingArgs) ElementType ¶
func (InstanceIamBindingArgs) ElementType() reflect.Type
type InstanceIamBindingArray ¶
type InstanceIamBindingArray []InstanceIamBindingInput
func (InstanceIamBindingArray) ElementType ¶
func (InstanceIamBindingArray) ElementType() reflect.Type
func (InstanceIamBindingArray) ToInstanceIamBindingArrayOutput ¶
func (i InstanceIamBindingArray) ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput
func (InstanceIamBindingArray) ToInstanceIamBindingArrayOutputWithContext ¶
func (i InstanceIamBindingArray) ToInstanceIamBindingArrayOutputWithContext(ctx context.Context) InstanceIamBindingArrayOutput
type InstanceIamBindingArrayInput ¶
type InstanceIamBindingArrayInput interface { pulumi.Input ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput ToInstanceIamBindingArrayOutputWithContext(context.Context) InstanceIamBindingArrayOutput }
InstanceIamBindingArrayInput is an input type that accepts InstanceIamBindingArray and InstanceIamBindingArrayOutput values. You can construct a concrete instance of `InstanceIamBindingArrayInput` via:
InstanceIamBindingArray{ InstanceIamBindingArgs{...} }
type InstanceIamBindingArrayOutput ¶
type InstanceIamBindingArrayOutput struct{ *pulumi.OutputState }
func (InstanceIamBindingArrayOutput) ElementType ¶
func (InstanceIamBindingArrayOutput) ElementType() reflect.Type
func (InstanceIamBindingArrayOutput) Index ¶
func (o InstanceIamBindingArrayOutput) Index(i pulumi.IntInput) InstanceIamBindingOutput
func (InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutput ¶
func (o InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput
func (InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutputWithContext ¶
func (o InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutputWithContext(ctx context.Context) InstanceIamBindingArrayOutput
type InstanceIamBindingCondition ¶
type InstanceIamBindingCondition struct { // An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI. // // For `bigtable.InstanceIamPolicy` only: Description *string `pulumi:"description"` // Textual representation of an expression in Common Expression Language syntax. Expression string `pulumi:"expression"` // A title for the expression, i.e. a short string describing its purpose. Title string `pulumi:"title"` }
type InstanceIamBindingConditionArgs ¶
type InstanceIamBindingConditionArgs struct { // An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI. // // For `bigtable.InstanceIamPolicy` only: Description pulumi.StringPtrInput `pulumi:"description"` // Textual representation of an expression in Common Expression Language syntax. Expression pulumi.StringInput `pulumi:"expression"` // A title for the expression, i.e. a short string describing its purpose. Title pulumi.StringInput `pulumi:"title"` }
func (InstanceIamBindingConditionArgs) ElementType ¶
func (InstanceIamBindingConditionArgs) ElementType() reflect.Type
func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutput ¶
func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput
func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutputWithContext ¶
func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutputWithContext(ctx context.Context) InstanceIamBindingConditionOutput
func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutput ¶
func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput
func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutputWithContext ¶
func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput
type InstanceIamBindingConditionInput ¶
type InstanceIamBindingConditionInput interface { pulumi.Input ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput ToInstanceIamBindingConditionOutputWithContext(context.Context) InstanceIamBindingConditionOutput }
InstanceIamBindingConditionInput is an input type that accepts InstanceIamBindingConditionArgs and InstanceIamBindingConditionOutput values. You can construct a concrete instance of `InstanceIamBindingConditionInput` via:
InstanceIamBindingConditionArgs{...}
type InstanceIamBindingConditionOutput ¶
type InstanceIamBindingConditionOutput struct{ *pulumi.OutputState }
func (InstanceIamBindingConditionOutput) Description ¶
func (o InstanceIamBindingConditionOutput) Description() pulumi.StringPtrOutput
An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
For `bigtable.InstanceIamPolicy` only:
func (InstanceIamBindingConditionOutput) ElementType ¶
func (InstanceIamBindingConditionOutput) ElementType() reflect.Type
func (InstanceIamBindingConditionOutput) Expression ¶
func (o InstanceIamBindingConditionOutput) Expression() pulumi.StringOutput
Textual representation of an expression in Common Expression Language syntax.
func (InstanceIamBindingConditionOutput) Title ¶
func (o InstanceIamBindingConditionOutput) Title() pulumi.StringOutput
A title for the expression, i.e. a short string describing its purpose.
func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutput ¶
func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput
func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutputWithContext ¶
func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutputWithContext(ctx context.Context) InstanceIamBindingConditionOutput
func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutput ¶
func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput
func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutputWithContext ¶
func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput
type InstanceIamBindingConditionPtrInput ¶
type InstanceIamBindingConditionPtrInput interface { pulumi.Input ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput ToInstanceIamBindingConditionPtrOutputWithContext(context.Context) InstanceIamBindingConditionPtrOutput }
InstanceIamBindingConditionPtrInput is an input type that accepts InstanceIamBindingConditionArgs, InstanceIamBindingConditionPtr and InstanceIamBindingConditionPtrOutput values. You can construct a concrete instance of `InstanceIamBindingConditionPtrInput` via:
InstanceIamBindingConditionArgs{...} or: nil
func InstanceIamBindingConditionPtr ¶
func InstanceIamBindingConditionPtr(v *InstanceIamBindingConditionArgs) InstanceIamBindingConditionPtrInput
type InstanceIamBindingConditionPtrOutput ¶
type InstanceIamBindingConditionPtrOutput struct{ *pulumi.OutputState }
func (InstanceIamBindingConditionPtrOutput) Description ¶
func (o InstanceIamBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
For `bigtable.InstanceIamPolicy` only:
func (InstanceIamBindingConditionPtrOutput) ElementType ¶
func (InstanceIamBindingConditionPtrOutput) ElementType() reflect.Type
func (InstanceIamBindingConditionPtrOutput) Expression ¶
func (o InstanceIamBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
Textual representation of an expression in Common Expression Language syntax.
func (InstanceIamBindingConditionPtrOutput) Title ¶
func (o InstanceIamBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
A title for the expression, i.e. a short string describing its purpose.
func (InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutput ¶
func (o InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput
func (InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutputWithContext ¶
func (o InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput
type InstanceIamBindingInput ¶
type InstanceIamBindingInput interface { pulumi.Input ToInstanceIamBindingOutput() InstanceIamBindingOutput ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput }
type InstanceIamBindingMap ¶
type InstanceIamBindingMap map[string]InstanceIamBindingInput
func (InstanceIamBindingMap) ElementType ¶
func (InstanceIamBindingMap) ElementType() reflect.Type
func (InstanceIamBindingMap) ToInstanceIamBindingMapOutput ¶
func (i InstanceIamBindingMap) ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput
func (InstanceIamBindingMap) ToInstanceIamBindingMapOutputWithContext ¶
func (i InstanceIamBindingMap) ToInstanceIamBindingMapOutputWithContext(ctx context.Context) InstanceIamBindingMapOutput
type InstanceIamBindingMapInput ¶
type InstanceIamBindingMapInput interface { pulumi.Input ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput ToInstanceIamBindingMapOutputWithContext(context.Context) InstanceIamBindingMapOutput }
InstanceIamBindingMapInput is an input type that accepts InstanceIamBindingMap and InstanceIamBindingMapOutput values. You can construct a concrete instance of `InstanceIamBindingMapInput` via:
InstanceIamBindingMap{ "key": InstanceIamBindingArgs{...} }
type InstanceIamBindingMapOutput ¶
type InstanceIamBindingMapOutput struct{ *pulumi.OutputState }
func (InstanceIamBindingMapOutput) ElementType ¶
func (InstanceIamBindingMapOutput) ElementType() reflect.Type
func (InstanceIamBindingMapOutput) MapIndex ¶
func (o InstanceIamBindingMapOutput) MapIndex(k pulumi.StringInput) InstanceIamBindingOutput
func (InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutput ¶
func (o InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput
func (InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutputWithContext ¶
func (o InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutputWithContext(ctx context.Context) InstanceIamBindingMapOutput
type InstanceIamBindingOutput ¶
type InstanceIamBindingOutput struct{ *pulumi.OutputState }
func (InstanceIamBindingOutput) Condition ¶
func (o InstanceIamBindingOutput) Condition() InstanceIamBindingConditionPtrOutput
An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below.
func (InstanceIamBindingOutput) ElementType ¶
func (InstanceIamBindingOutput) ElementType() reflect.Type
func (InstanceIamBindingOutput) Etag ¶
func (o InstanceIamBindingOutput) Etag() pulumi.StringOutput
(Computed) The etag of the instances's IAM policy.
func (InstanceIamBindingOutput) Instance ¶
func (o InstanceIamBindingOutput) Instance() pulumi.StringOutput
The name or relative resource id of the instance to manage IAM policies for.
For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`:
func (InstanceIamBindingOutput) Members ¶
func (o InstanceIamBindingOutput) Members() pulumi.StringArrayOutput
Identities that will be granted the privilege in `role`. Each entry can have one of the following values: * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
func (InstanceIamBindingOutput) Project ¶
func (o InstanceIamBindingOutput) Project() pulumi.StringOutput
func (InstanceIamBindingOutput) Role ¶
func (o InstanceIamBindingOutput) Role() pulumi.StringOutput
The role that should be applied. Only one `bigtable.InstanceIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles).
func (InstanceIamBindingOutput) ToInstanceIamBindingOutput ¶
func (o InstanceIamBindingOutput) ToInstanceIamBindingOutput() InstanceIamBindingOutput
func (InstanceIamBindingOutput) ToInstanceIamBindingOutputWithContext ¶
func (o InstanceIamBindingOutput) ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput
type InstanceIamBindingState ¶
type InstanceIamBindingState struct { // An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below. Condition InstanceIamBindingConditionPtrInput // (Computed) The etag of the instances's IAM policy. Etag pulumi.StringPtrInput // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringPtrInput // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Members pulumi.StringArrayInput Project pulumi.StringPtrInput // The role that should be applied. Only one // `bigtable.InstanceIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). Role pulumi.StringPtrInput }
func (InstanceIamBindingState) ElementType ¶
func (InstanceIamBindingState) ElementType() reflect.Type
type InstanceIamMember ¶
type InstanceIamMember struct { pulumi.CustomResourceState // An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below. Condition InstanceIamMemberConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the instances's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringOutput `pulumi:"instance"` // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Member pulumi.StringOutput `pulumi:"member"` Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `bigtable.InstanceIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). Role pulumi.StringOutput `pulumi:"role"` }
Three different resources help you manage IAM policies on bigtable instances. Each of these resources serves a different use case:
* `bigtable.InstanceIamPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `bigtable.InstanceIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved. * `bigtable.InstanceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.
> **Note:** `bigtable.InstanceIamPolicy` **cannot** be used in conjunction with `bigtable.InstanceIamBinding` and `bigtable.InstanceIamMember` or they will fight over what your policy should be. In addition, be careful not to accidentally unset ownership of the instance as `bigtable.InstanceIamPolicy` replaces the entire policy.
> **Note:** `bigtable.InstanceIamBinding` resources **can be** used in conjunction with `bigtable.InstanceIamMember` resources **only if** they do not grant privilege to the same role.
## bigtable.InstanceIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewInstanceIamPolicy(ctx, "editor", &bigtable.InstanceIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamBinding(ctx, "editor", &bigtable.InstanceIamBindingArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamMember(ctx, "editor", &bigtable.InstanceIamMemberArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewInstanceIamPolicy(ctx, "editor", &bigtable.InstanceIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamBinding(ctx, "editor", &bigtable.InstanceIamBindingArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamMember(ctx, "editor", &bigtable.InstanceIamMemberArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
### Importing IAM policies
IAM policy imports use the `instance` identifier of the Bigtable Instance resource only. For example:
* `"projects/{project}/instances/{instance}"`
An `import` block (Terraform v1.5.0 and later) can be used to import IAM policies:
tf
import {
id = "projects/{project}/instances/{instance}" to = google_bigtable_instance_iam_policy.default
}
The `pulumi import` command can also be used:
```sh $ pulumi import gcp:bigtable/instanceIamMember:InstanceIamMember default projects/{project}/instances/{instance} ```
func GetInstanceIamMember ¶
func GetInstanceIamMember(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceIamMemberState, opts ...pulumi.ResourceOption) (*InstanceIamMember, error)
GetInstanceIamMember gets an existing InstanceIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewInstanceIamMember ¶
func NewInstanceIamMember(ctx *pulumi.Context, name string, args *InstanceIamMemberArgs, opts ...pulumi.ResourceOption) (*InstanceIamMember, error)
NewInstanceIamMember registers a new resource with the given unique name, arguments, and options.
func (*InstanceIamMember) ElementType ¶
func (*InstanceIamMember) ElementType() reflect.Type
func (*InstanceIamMember) ToInstanceIamMemberOutput ¶
func (i *InstanceIamMember) ToInstanceIamMemberOutput() InstanceIamMemberOutput
func (*InstanceIamMember) ToInstanceIamMemberOutputWithContext ¶
func (i *InstanceIamMember) ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput
type InstanceIamMemberArgs ¶
type InstanceIamMemberArgs struct { // An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below. Condition InstanceIamMemberConditionPtrInput // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringInput // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Member pulumi.StringInput Project pulumi.StringPtrInput // The role that should be applied. Only one // `bigtable.InstanceIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). Role pulumi.StringInput }
The set of arguments for constructing a InstanceIamMember resource.
func (InstanceIamMemberArgs) ElementType ¶
func (InstanceIamMemberArgs) ElementType() reflect.Type
type InstanceIamMemberArray ¶
type InstanceIamMemberArray []InstanceIamMemberInput
func (InstanceIamMemberArray) ElementType ¶
func (InstanceIamMemberArray) ElementType() reflect.Type
func (InstanceIamMemberArray) ToInstanceIamMemberArrayOutput ¶
func (i InstanceIamMemberArray) ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput
func (InstanceIamMemberArray) ToInstanceIamMemberArrayOutputWithContext ¶
func (i InstanceIamMemberArray) ToInstanceIamMemberArrayOutputWithContext(ctx context.Context) InstanceIamMemberArrayOutput
type InstanceIamMemberArrayInput ¶
type InstanceIamMemberArrayInput interface { pulumi.Input ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput ToInstanceIamMemberArrayOutputWithContext(context.Context) InstanceIamMemberArrayOutput }
InstanceIamMemberArrayInput is an input type that accepts InstanceIamMemberArray and InstanceIamMemberArrayOutput values. You can construct a concrete instance of `InstanceIamMemberArrayInput` via:
InstanceIamMemberArray{ InstanceIamMemberArgs{...} }
type InstanceIamMemberArrayOutput ¶
type InstanceIamMemberArrayOutput struct{ *pulumi.OutputState }
func (InstanceIamMemberArrayOutput) ElementType ¶
func (InstanceIamMemberArrayOutput) ElementType() reflect.Type
func (InstanceIamMemberArrayOutput) Index ¶
func (o InstanceIamMemberArrayOutput) Index(i pulumi.IntInput) InstanceIamMemberOutput
func (InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutput ¶
func (o InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput
func (InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutputWithContext ¶
func (o InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutputWithContext(ctx context.Context) InstanceIamMemberArrayOutput
type InstanceIamMemberCondition ¶
type InstanceIamMemberCondition struct { // An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI. // // For `bigtable.InstanceIamPolicy` only: Description *string `pulumi:"description"` // Textual representation of an expression in Common Expression Language syntax. Expression string `pulumi:"expression"` // A title for the expression, i.e. a short string describing its purpose. Title string `pulumi:"title"` }
type InstanceIamMemberConditionArgs ¶
type InstanceIamMemberConditionArgs struct { // An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI. // // For `bigtable.InstanceIamPolicy` only: Description pulumi.StringPtrInput `pulumi:"description"` // Textual representation of an expression in Common Expression Language syntax. Expression pulumi.StringInput `pulumi:"expression"` // A title for the expression, i.e. a short string describing its purpose. Title pulumi.StringInput `pulumi:"title"` }
func (InstanceIamMemberConditionArgs) ElementType ¶
func (InstanceIamMemberConditionArgs) ElementType() reflect.Type
func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutput ¶
func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput
func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutputWithContext ¶
func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutputWithContext(ctx context.Context) InstanceIamMemberConditionOutput
func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutput ¶
func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput
func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutputWithContext ¶
func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput
type InstanceIamMemberConditionInput ¶
type InstanceIamMemberConditionInput interface { pulumi.Input ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput ToInstanceIamMemberConditionOutputWithContext(context.Context) InstanceIamMemberConditionOutput }
InstanceIamMemberConditionInput is an input type that accepts InstanceIamMemberConditionArgs and InstanceIamMemberConditionOutput values. You can construct a concrete instance of `InstanceIamMemberConditionInput` via:
InstanceIamMemberConditionArgs{...}
type InstanceIamMemberConditionOutput ¶
type InstanceIamMemberConditionOutput struct{ *pulumi.OutputState }
func (InstanceIamMemberConditionOutput) Description ¶
func (o InstanceIamMemberConditionOutput) Description() pulumi.StringPtrOutput
An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
For `bigtable.InstanceIamPolicy` only:
func (InstanceIamMemberConditionOutput) ElementType ¶
func (InstanceIamMemberConditionOutput) ElementType() reflect.Type
func (InstanceIamMemberConditionOutput) Expression ¶
func (o InstanceIamMemberConditionOutput) Expression() pulumi.StringOutput
Textual representation of an expression in Common Expression Language syntax.
func (InstanceIamMemberConditionOutput) Title ¶
func (o InstanceIamMemberConditionOutput) Title() pulumi.StringOutput
A title for the expression, i.e. a short string describing its purpose.
func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutput ¶
func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput
func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutputWithContext ¶
func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutputWithContext(ctx context.Context) InstanceIamMemberConditionOutput
func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutput ¶
func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput
func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutputWithContext ¶
func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput
type InstanceIamMemberConditionPtrInput ¶
type InstanceIamMemberConditionPtrInput interface { pulumi.Input ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput ToInstanceIamMemberConditionPtrOutputWithContext(context.Context) InstanceIamMemberConditionPtrOutput }
InstanceIamMemberConditionPtrInput is an input type that accepts InstanceIamMemberConditionArgs, InstanceIamMemberConditionPtr and InstanceIamMemberConditionPtrOutput values. You can construct a concrete instance of `InstanceIamMemberConditionPtrInput` via:
InstanceIamMemberConditionArgs{...} or: nil
func InstanceIamMemberConditionPtr ¶
func InstanceIamMemberConditionPtr(v *InstanceIamMemberConditionArgs) InstanceIamMemberConditionPtrInput
type InstanceIamMemberConditionPtrOutput ¶
type InstanceIamMemberConditionPtrOutput struct{ *pulumi.OutputState }
func (InstanceIamMemberConditionPtrOutput) Description ¶
func (o InstanceIamMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
For `bigtable.InstanceIamPolicy` only:
func (InstanceIamMemberConditionPtrOutput) Elem ¶
func (o InstanceIamMemberConditionPtrOutput) Elem() InstanceIamMemberConditionOutput
func (InstanceIamMemberConditionPtrOutput) ElementType ¶
func (InstanceIamMemberConditionPtrOutput) ElementType() reflect.Type
func (InstanceIamMemberConditionPtrOutput) Expression ¶
func (o InstanceIamMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
Textual representation of an expression in Common Expression Language syntax.
func (InstanceIamMemberConditionPtrOutput) Title ¶
func (o InstanceIamMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
A title for the expression, i.e. a short string describing its purpose.
func (InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutput ¶
func (o InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput
func (InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutputWithContext ¶
func (o InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput
type InstanceIamMemberInput ¶
type InstanceIamMemberInput interface { pulumi.Input ToInstanceIamMemberOutput() InstanceIamMemberOutput ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput }
type InstanceIamMemberMap ¶
type InstanceIamMemberMap map[string]InstanceIamMemberInput
func (InstanceIamMemberMap) ElementType ¶
func (InstanceIamMemberMap) ElementType() reflect.Type
func (InstanceIamMemberMap) ToInstanceIamMemberMapOutput ¶
func (i InstanceIamMemberMap) ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput
func (InstanceIamMemberMap) ToInstanceIamMemberMapOutputWithContext ¶
func (i InstanceIamMemberMap) ToInstanceIamMemberMapOutputWithContext(ctx context.Context) InstanceIamMemberMapOutput
type InstanceIamMemberMapInput ¶
type InstanceIamMemberMapInput interface { pulumi.Input ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput ToInstanceIamMemberMapOutputWithContext(context.Context) InstanceIamMemberMapOutput }
InstanceIamMemberMapInput is an input type that accepts InstanceIamMemberMap and InstanceIamMemberMapOutput values. You can construct a concrete instance of `InstanceIamMemberMapInput` via:
InstanceIamMemberMap{ "key": InstanceIamMemberArgs{...} }
type InstanceIamMemberMapOutput ¶
type InstanceIamMemberMapOutput struct{ *pulumi.OutputState }
func (InstanceIamMemberMapOutput) ElementType ¶
func (InstanceIamMemberMapOutput) ElementType() reflect.Type
func (InstanceIamMemberMapOutput) MapIndex ¶
func (o InstanceIamMemberMapOutput) MapIndex(k pulumi.StringInput) InstanceIamMemberOutput
func (InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutput ¶
func (o InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput
func (InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutputWithContext ¶
func (o InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutputWithContext(ctx context.Context) InstanceIamMemberMapOutput
type InstanceIamMemberOutput ¶
type InstanceIamMemberOutput struct{ *pulumi.OutputState }
func (InstanceIamMemberOutput) Condition ¶
func (o InstanceIamMemberOutput) Condition() InstanceIamMemberConditionPtrOutput
An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below.
func (InstanceIamMemberOutput) ElementType ¶
func (InstanceIamMemberOutput) ElementType() reflect.Type
func (InstanceIamMemberOutput) Etag ¶
func (o InstanceIamMemberOutput) Etag() pulumi.StringOutput
(Computed) The etag of the instances's IAM policy.
func (InstanceIamMemberOutput) Instance ¶
func (o InstanceIamMemberOutput) Instance() pulumi.StringOutput
The name or relative resource id of the instance to manage IAM policies for.
For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`:
func (InstanceIamMemberOutput) Member ¶
func (o InstanceIamMemberOutput) Member() pulumi.StringOutput
Identities that will be granted the privilege in `role`. Each entry can have one of the following values: * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
func (InstanceIamMemberOutput) Project ¶
func (o InstanceIamMemberOutput) Project() pulumi.StringOutput
func (InstanceIamMemberOutput) Role ¶
func (o InstanceIamMemberOutput) Role() pulumi.StringOutput
The role that should be applied. Only one `bigtable.InstanceIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles).
func (InstanceIamMemberOutput) ToInstanceIamMemberOutput ¶
func (o InstanceIamMemberOutput) ToInstanceIamMemberOutput() InstanceIamMemberOutput
func (InstanceIamMemberOutput) ToInstanceIamMemberOutputWithContext ¶
func (o InstanceIamMemberOutput) ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput
type InstanceIamMemberState ¶
type InstanceIamMemberState struct { // An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below. Condition InstanceIamMemberConditionPtrInput // (Computed) The etag of the instances's IAM policy. Etag pulumi.StringPtrInput // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringPtrInput // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Member pulumi.StringPtrInput Project pulumi.StringPtrInput // The role that should be applied. Only one // `bigtable.InstanceIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). Role pulumi.StringPtrInput }
func (InstanceIamMemberState) ElementType ¶
func (InstanceIamMemberState) ElementType() reflect.Type
type InstanceIamPolicy ¶
type InstanceIamPolicy struct { pulumi.CustomResourceState // (Computed) The etag of the instances's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringOutput `pulumi:"instance"` PolicyData pulumi.StringOutput `pulumi:"policyData"` Project pulumi.StringOutput `pulumi:"project"` }
Three different resources help you manage IAM policies on bigtable instances. Each of these resources serves a different use case:
* `bigtable.InstanceIamPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `bigtable.InstanceIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved. * `bigtable.InstanceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.
> **Note:** `bigtable.InstanceIamPolicy` **cannot** be used in conjunction with `bigtable.InstanceIamBinding` and `bigtable.InstanceIamMember` or they will fight over what your policy should be. In addition, be careful not to accidentally unset ownership of the instance as `bigtable.InstanceIamPolicy` replaces the entire policy.
> **Note:** `bigtable.InstanceIamBinding` resources **can be** used in conjunction with `bigtable.InstanceIamMember` resources **only if** they do not grant privilege to the same role.
## bigtable.InstanceIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewInstanceIamPolicy(ctx, "editor", &bigtable.InstanceIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamBinding(ctx, "editor", &bigtable.InstanceIamBindingArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamMember(ctx, "editor", &bigtable.InstanceIamMemberArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewInstanceIamPolicy(ctx, "editor", &bigtable.InstanceIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamBinding(ctx, "editor", &bigtable.InstanceIamBindingArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.InstanceIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewInstanceIamMember(ctx, "editor", &bigtable.InstanceIamMemberArgs{ Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
### Importing IAM policies
IAM policy imports use the `instance` identifier of the Bigtable Instance resource only. For example:
* `"projects/{project}/instances/{instance}"`
An `import` block (Terraform v1.5.0 and later) can be used to import IAM policies:
tf
import {
id = "projects/{project}/instances/{instance}" to = google_bigtable_instance_iam_policy.default
}
The `pulumi import` command can also be used:
```sh $ pulumi import gcp:bigtable/instanceIamPolicy:InstanceIamPolicy default projects/{project}/instances/{instance} ```
func GetInstanceIamPolicy ¶
func GetInstanceIamPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceIamPolicyState, opts ...pulumi.ResourceOption) (*InstanceIamPolicy, error)
GetInstanceIamPolicy gets an existing InstanceIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewInstanceIamPolicy ¶
func NewInstanceIamPolicy(ctx *pulumi.Context, name string, args *InstanceIamPolicyArgs, opts ...pulumi.ResourceOption) (*InstanceIamPolicy, error)
NewInstanceIamPolicy registers a new resource with the given unique name, arguments, and options.
func (*InstanceIamPolicy) ElementType ¶
func (*InstanceIamPolicy) ElementType() reflect.Type
func (*InstanceIamPolicy) ToInstanceIamPolicyOutput ¶
func (i *InstanceIamPolicy) ToInstanceIamPolicyOutput() InstanceIamPolicyOutput
func (*InstanceIamPolicy) ToInstanceIamPolicyOutputWithContext ¶
func (i *InstanceIamPolicy) ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput
type InstanceIamPolicyArgs ¶
type InstanceIamPolicyArgs struct { // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringInput PolicyData pulumi.StringInput Project pulumi.StringPtrInput }
The set of arguments for constructing a InstanceIamPolicy resource.
func (InstanceIamPolicyArgs) ElementType ¶
func (InstanceIamPolicyArgs) ElementType() reflect.Type
type InstanceIamPolicyArray ¶
type InstanceIamPolicyArray []InstanceIamPolicyInput
func (InstanceIamPolicyArray) ElementType ¶
func (InstanceIamPolicyArray) ElementType() reflect.Type
func (InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutput ¶
func (i InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput
func (InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutputWithContext ¶
func (i InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutputWithContext(ctx context.Context) InstanceIamPolicyArrayOutput
type InstanceIamPolicyArrayInput ¶
type InstanceIamPolicyArrayInput interface { pulumi.Input ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput ToInstanceIamPolicyArrayOutputWithContext(context.Context) InstanceIamPolicyArrayOutput }
InstanceIamPolicyArrayInput is an input type that accepts InstanceIamPolicyArray and InstanceIamPolicyArrayOutput values. You can construct a concrete instance of `InstanceIamPolicyArrayInput` via:
InstanceIamPolicyArray{ InstanceIamPolicyArgs{...} }
type InstanceIamPolicyArrayOutput ¶
type InstanceIamPolicyArrayOutput struct{ *pulumi.OutputState }
func (InstanceIamPolicyArrayOutput) ElementType ¶
func (InstanceIamPolicyArrayOutput) ElementType() reflect.Type
func (InstanceIamPolicyArrayOutput) Index ¶
func (o InstanceIamPolicyArrayOutput) Index(i pulumi.IntInput) InstanceIamPolicyOutput
func (InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutput ¶
func (o InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput
func (InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutputWithContext ¶
func (o InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutputWithContext(ctx context.Context) InstanceIamPolicyArrayOutput
type InstanceIamPolicyInput ¶
type InstanceIamPolicyInput interface { pulumi.Input ToInstanceIamPolicyOutput() InstanceIamPolicyOutput ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput }
type InstanceIamPolicyMap ¶
type InstanceIamPolicyMap map[string]InstanceIamPolicyInput
func (InstanceIamPolicyMap) ElementType ¶
func (InstanceIamPolicyMap) ElementType() reflect.Type
func (InstanceIamPolicyMap) ToInstanceIamPolicyMapOutput ¶
func (i InstanceIamPolicyMap) ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput
func (InstanceIamPolicyMap) ToInstanceIamPolicyMapOutputWithContext ¶
func (i InstanceIamPolicyMap) ToInstanceIamPolicyMapOutputWithContext(ctx context.Context) InstanceIamPolicyMapOutput
type InstanceIamPolicyMapInput ¶
type InstanceIamPolicyMapInput interface { pulumi.Input ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput ToInstanceIamPolicyMapOutputWithContext(context.Context) InstanceIamPolicyMapOutput }
InstanceIamPolicyMapInput is an input type that accepts InstanceIamPolicyMap and InstanceIamPolicyMapOutput values. You can construct a concrete instance of `InstanceIamPolicyMapInput` via:
InstanceIamPolicyMap{ "key": InstanceIamPolicyArgs{...} }
type InstanceIamPolicyMapOutput ¶
type InstanceIamPolicyMapOutput struct{ *pulumi.OutputState }
func (InstanceIamPolicyMapOutput) ElementType ¶
func (InstanceIamPolicyMapOutput) ElementType() reflect.Type
func (InstanceIamPolicyMapOutput) MapIndex ¶
func (o InstanceIamPolicyMapOutput) MapIndex(k pulumi.StringInput) InstanceIamPolicyOutput
func (InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutput ¶
func (o InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput
func (InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutputWithContext ¶
func (o InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutputWithContext(ctx context.Context) InstanceIamPolicyMapOutput
type InstanceIamPolicyOutput ¶
type InstanceIamPolicyOutput struct{ *pulumi.OutputState }
func (InstanceIamPolicyOutput) ElementType ¶
func (InstanceIamPolicyOutput) ElementType() reflect.Type
func (InstanceIamPolicyOutput) Etag ¶
func (o InstanceIamPolicyOutput) Etag() pulumi.StringOutput
(Computed) The etag of the instances's IAM policy.
func (InstanceIamPolicyOutput) Instance ¶
func (o InstanceIamPolicyOutput) Instance() pulumi.StringOutput
The name or relative resource id of the instance to manage IAM policies for.
For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`:
func (InstanceIamPolicyOutput) PolicyData ¶
func (o InstanceIamPolicyOutput) PolicyData() pulumi.StringOutput
func (InstanceIamPolicyOutput) Project ¶
func (o InstanceIamPolicyOutput) Project() pulumi.StringOutput
func (InstanceIamPolicyOutput) ToInstanceIamPolicyOutput ¶
func (o InstanceIamPolicyOutput) ToInstanceIamPolicyOutput() InstanceIamPolicyOutput
func (InstanceIamPolicyOutput) ToInstanceIamPolicyOutputWithContext ¶
func (o InstanceIamPolicyOutput) ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput
type InstanceIamPolicyState ¶
type InstanceIamPolicyState struct { // (Computed) The etag of the instances's IAM policy. Etag pulumi.StringPtrInput // The name or relative resource id of the instance to manage IAM policies for. // // For `bigtable.InstanceIamMember` or `bigtable.InstanceIamBinding`: Instance pulumi.StringPtrInput PolicyData pulumi.StringPtrInput Project pulumi.StringPtrInput }
func (InstanceIamPolicyState) ElementType ¶
func (InstanceIamPolicyState) ElementType() reflect.Type
type InstanceInput ¶
type InstanceInput interface { pulumi.Input ToInstanceOutput() InstanceOutput ToInstanceOutputWithContext(ctx context.Context) InstanceOutput }
type InstanceMap ¶
type InstanceMap map[string]InstanceInput
func (InstanceMap) ElementType ¶
func (InstanceMap) ElementType() reflect.Type
func (InstanceMap) ToInstanceMapOutput ¶
func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput
func (InstanceMap) ToInstanceMapOutputWithContext ¶
func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput
type InstanceMapInput ¶
type InstanceMapInput interface { pulumi.Input ToInstanceMapOutput() InstanceMapOutput ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput }
InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:
InstanceMap{ "key": InstanceArgs{...} }
type InstanceMapOutput ¶
type InstanceMapOutput struct{ *pulumi.OutputState }
func (InstanceMapOutput) ElementType ¶
func (InstanceMapOutput) ElementType() reflect.Type
func (InstanceMapOutput) MapIndex ¶
func (o InstanceMapOutput) MapIndex(k pulumi.StringInput) InstanceOutput
func (InstanceMapOutput) ToInstanceMapOutput ¶
func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput
func (InstanceMapOutput) ToInstanceMapOutputWithContext ¶
func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput
type InstanceOutput ¶
type InstanceOutput struct{ *pulumi.OutputState }
func (InstanceOutput) Clusters ¶
func (o InstanceOutput) Clusters() InstanceClusterArrayOutput
A block of cluster configuration options. This can be specified at least once, and up to as many as possible within 8 cloud regions. Removing the field entirely from the config will cause the provider to default to the backend value. See structure below.
***
func (InstanceOutput) DeletionProtection ¶
func (o InstanceOutput) DeletionProtection() pulumi.BoolPtrOutput
Whether or not to allow this provider to destroy the instance. Unless this field is set to false in the statefile, a `pulumi destroy` or `pulumi up` that would delete the instance will fail.
func (InstanceOutput) DisplayName ¶
func (o InstanceOutput) DisplayName() pulumi.StringOutput
The human-readable display name of the Bigtable instance. Defaults to the instance `name`.
func (InstanceOutput) EffectiveLabels ¶
func (o InstanceOutput) EffectiveLabels() pulumi.StringMapOutput
All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
***
func (InstanceOutput) ElementType ¶
func (InstanceOutput) ElementType() reflect.Type
func (InstanceOutput) ForceDestroy ¶
func (o InstanceOutput) ForceDestroy() pulumi.BoolPtrOutput
Deleting a BigTable instance can be blocked if any backups are present in the instance. When `forceDestroy` is set to true, the Provider will delete all backups found in the BigTable instance before attempting to delete the instance itself. Defaults to false.
func (InstanceOutput) InstanceType
deprecated
func (o InstanceOutput) InstanceType() pulumi.StringPtrOutput
The instance type to create. One of `"DEVELOPMENT"` or `"PRODUCTION"`. Defaults to `"PRODUCTION"`. It is recommended to leave this field unspecified since the distinction between `"DEVELOPMENT"` and `"PRODUCTION"` instances is going away, and all instances will become `"PRODUCTION"` instances. This means that new and existing `"DEVELOPMENT"` instances will be converted to `"PRODUCTION"` instances. It is recommended for users to use `"PRODUCTION"` instances in any case, since a 1-node `"PRODUCTION"` instance is functionally identical to a `"DEVELOPMENT"` instance, but without the accompanying restrictions.
Deprecated: It is recommended to leave this field unspecified since the distinction between "DEVELOPMENT" and "PRODUCTION" instances is going away, and all instances will become "PRODUCTION" instances. This means that new and existing "DEVELOPMENT" instances will be converted to "PRODUCTION" instances. It is recommended for users to use "PRODUCTION" instances in any case, since a 1-node "PRODUCTION" instance is functionally identical to a "DEVELOPMENT" instance, but without the accompanying restrictions.
func (InstanceOutput) Labels ¶
func (o InstanceOutput) Labels() pulumi.StringMapOutput
A set of key/value label pairs to assign to the resource. Label keys must follow the requirements at https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements.
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
func (InstanceOutput) Name ¶
func (o InstanceOutput) Name() pulumi.StringOutput
The name (also called Instance Id in the Cloud Console) of the Cloud Bigtable instance. Must be 6-33 characters and must only contain hyphens, lowercase letters and numbers.
func (InstanceOutput) Project ¶
func (o InstanceOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (InstanceOutput) PulumiLabels ¶
func (o InstanceOutput) PulumiLabels() pulumi.StringMapOutput
The combination of labels configured directly on the resource and default labels configured on the provider.
func (InstanceOutput) ToInstanceOutput ¶
func (o InstanceOutput) ToInstanceOutput() InstanceOutput
func (InstanceOutput) ToInstanceOutputWithContext ¶
func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
type InstanceState ¶
type InstanceState struct { // A block of cluster configuration options. This can be specified at least once, and up // to as many as possible within 8 cloud regions. Removing the field entirely from the config will cause the provider // to default to the backend value. See structure below. // // *** Clusters InstanceClusterArrayInput // Whether or not to allow this provider to destroy the instance. Unless this field is set to false // in the statefile, a `pulumi destroy` or `pulumi up` that would delete the instance will fail. DeletionProtection pulumi.BoolPtrInput // The human-readable display name of the Bigtable instance. Defaults to the instance `name`. DisplayName pulumi.StringPtrInput // All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services. // // *** EffectiveLabels pulumi.StringMapInput // Deleting a BigTable instance can be blocked if any backups are present in the instance. When `forceDestroy` is set to true, the Provider will delete all backups found in the BigTable instance before attempting to delete the instance itself. Defaults to false. ForceDestroy pulumi.BoolPtrInput // The instance type to create. One of `"DEVELOPMENT"` or `"PRODUCTION"`. Defaults to `"PRODUCTION"`. // It is recommended to leave this field unspecified since the distinction between `"DEVELOPMENT"` and `"PRODUCTION"` instances is going away, // and all instances will become `"PRODUCTION"` instances. This means that new and existing `"DEVELOPMENT"` instances will be converted to // `"PRODUCTION"` instances. It is recommended for users to use `"PRODUCTION"` instances in any case, since a 1-node `"PRODUCTION"` instance // is functionally identical to a `"DEVELOPMENT"` instance, but without the accompanying restrictions. // // Deprecated: It is recommended to leave this field unspecified since the distinction between "DEVELOPMENT" and "PRODUCTION" instances is going away, and all instances will become "PRODUCTION" instances. This means that new and existing "DEVELOPMENT" instances will be converted to "PRODUCTION" instances. It is recommended for users to use "PRODUCTION" instances in any case, since a 1-node "PRODUCTION" instance is functionally identical to a "DEVELOPMENT" instance, but without the accompanying restrictions. InstanceType pulumi.StringPtrInput // A set of key/value label pairs to assign to the resource. Label keys must follow the requirements at https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements. // // **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. // Please refer to the field 'effective_labels' for all of the labels present on the resource. Labels pulumi.StringMapInput // The name (also called Instance Id in the Cloud Console) of the Cloud Bigtable instance. Must be 6-33 characters and must only contain hyphens, lowercase letters and numbers. 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 combination of labels configured directly on the resource and default labels configured on the provider. PulumiLabels pulumi.StringMapInput }
func (InstanceState) ElementType ¶
func (InstanceState) ElementType() reflect.Type
type LookupInstanceIamPolicyArgs ¶
type LookupInstanceIamPolicyArgs struct { // The name or relative resource id of the instance to manage IAM policies for. Instance string `pulumi:"instance"` Project *string `pulumi:"project"` }
A collection of arguments for invoking getInstanceIamPolicy.
type LookupInstanceIamPolicyOutputArgs ¶
type LookupInstanceIamPolicyOutputArgs struct { // The name or relative resource id of the instance to manage IAM policies for. Instance pulumi.StringInput `pulumi:"instance"` Project pulumi.StringPtrInput `pulumi:"project"` }
A collection of arguments for invoking getInstanceIamPolicy.
func (LookupInstanceIamPolicyOutputArgs) ElementType ¶
func (LookupInstanceIamPolicyOutputArgs) ElementType() reflect.Type
type LookupInstanceIamPolicyResult ¶
type LookupInstanceIamPolicyResult struct { // (Computed) The etag of the IAM policy. Etag string `pulumi:"etag"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Instance string `pulumi:"instance"` // (Computed) The policy data PolicyData string `pulumi:"policyData"` Project string `pulumi:"project"` }
A collection of values returned by getInstanceIamPolicy.
func LookupInstanceIamPolicy ¶
func LookupInstanceIamPolicy(ctx *pulumi.Context, args *LookupInstanceIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupInstanceIamPolicyResult, error)
Retrieves the current IAM policy data for a Bigtable instance.
## example
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.LookupInstanceIamPolicy(ctx, &bigtable.LookupInstanceIamPolicyArgs{ Instance: instance.Name, }, nil) if err != nil { return err } return nil }) }
```
type LookupInstanceIamPolicyResultOutput ¶
type LookupInstanceIamPolicyResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getInstanceIamPolicy.
func LookupInstanceIamPolicyOutput ¶
func LookupInstanceIamPolicyOutput(ctx *pulumi.Context, args LookupInstanceIamPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupInstanceIamPolicyResultOutput
func (LookupInstanceIamPolicyResultOutput) ElementType ¶
func (LookupInstanceIamPolicyResultOutput) ElementType() reflect.Type
func (LookupInstanceIamPolicyResultOutput) Etag ¶
func (o LookupInstanceIamPolicyResultOutput) Etag() pulumi.StringOutput
(Computed) The etag of the IAM policy.
func (LookupInstanceIamPolicyResultOutput) Id ¶
func (o LookupInstanceIamPolicyResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupInstanceIamPolicyResultOutput) Instance ¶
func (o LookupInstanceIamPolicyResultOutput) Instance() pulumi.StringOutput
func (LookupInstanceIamPolicyResultOutput) PolicyData ¶
func (o LookupInstanceIamPolicyResultOutput) PolicyData() pulumi.StringOutput
(Computed) The policy data
func (LookupInstanceIamPolicyResultOutput) Project ¶
func (o LookupInstanceIamPolicyResultOutput) Project() pulumi.StringOutput
func (LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutput ¶
func (o LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutput() LookupInstanceIamPolicyResultOutput
func (LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutputWithContext ¶
func (o LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutputWithContext(ctx context.Context) LookupInstanceIamPolicyResultOutput
type LookupTableIamPolicyArgs ¶
type LookupTableIamPolicyArgs struct { // The name or relative resource id of the instance that owns the table. Instance string `pulumi:"instance"` Project *string `pulumi:"project"` // The name or relative resource id of the table to manage IAM policies for. Table string `pulumi:"table"` }
A collection of arguments for invoking getTableIamPolicy.
type LookupTableIamPolicyOutputArgs ¶
type LookupTableIamPolicyOutputArgs struct { // The name or relative resource id of the instance that owns the table. Instance pulumi.StringInput `pulumi:"instance"` Project pulumi.StringPtrInput `pulumi:"project"` // The name or relative resource id of the table to manage IAM policies for. Table pulumi.StringInput `pulumi:"table"` }
A collection of arguments for invoking getTableIamPolicy.
func (LookupTableIamPolicyOutputArgs) ElementType ¶
func (LookupTableIamPolicyOutputArgs) ElementType() reflect.Type
type LookupTableIamPolicyResult ¶
type LookupTableIamPolicyResult struct { // (Computed) The etag of the IAM policy. Etag string `pulumi:"etag"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Instance string `pulumi:"instance"` // (Computed) The policy data PolicyData string `pulumi:"policyData"` Project string `pulumi:"project"` Table string `pulumi:"table"` }
A collection of values returned by getTableIamPolicy.
func LookupTableIamPolicy ¶
func LookupTableIamPolicy(ctx *pulumi.Context, args *LookupTableIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupTableIamPolicyResult, error)
Retrieves the current IAM policy data for a Bigtable Table.
## example
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.LookupTableIamPolicy(ctx, &bigtable.LookupTableIamPolicyArgs{ Instance: instance.Name, Table: table.Name, }, nil) if err != nil { return err } return nil }) }
```
type LookupTableIamPolicyResultOutput ¶
type LookupTableIamPolicyResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getTableIamPolicy.
func LookupTableIamPolicyOutput ¶
func LookupTableIamPolicyOutput(ctx *pulumi.Context, args LookupTableIamPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupTableIamPolicyResultOutput
func (LookupTableIamPolicyResultOutput) ElementType ¶
func (LookupTableIamPolicyResultOutput) ElementType() reflect.Type
func (LookupTableIamPolicyResultOutput) Etag ¶
func (o LookupTableIamPolicyResultOutput) Etag() pulumi.StringOutput
(Computed) The etag of the IAM policy.
func (LookupTableIamPolicyResultOutput) Id ¶
func (o LookupTableIamPolicyResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupTableIamPolicyResultOutput) Instance ¶
func (o LookupTableIamPolicyResultOutput) Instance() pulumi.StringOutput
func (LookupTableIamPolicyResultOutput) PolicyData ¶
func (o LookupTableIamPolicyResultOutput) PolicyData() pulumi.StringOutput
(Computed) The policy data
func (LookupTableIamPolicyResultOutput) Project ¶
func (o LookupTableIamPolicyResultOutput) Project() pulumi.StringOutput
func (LookupTableIamPolicyResultOutput) Table ¶
func (o LookupTableIamPolicyResultOutput) Table() pulumi.StringOutput
func (LookupTableIamPolicyResultOutput) ToLookupTableIamPolicyResultOutput ¶
func (o LookupTableIamPolicyResultOutput) ToLookupTableIamPolicyResultOutput() LookupTableIamPolicyResultOutput
func (LookupTableIamPolicyResultOutput) ToLookupTableIamPolicyResultOutputWithContext ¶
func (o LookupTableIamPolicyResultOutput) ToLookupTableIamPolicyResultOutputWithContext(ctx context.Context) LookupTableIamPolicyResultOutput
type Table ¶
type Table struct { pulumi.CustomResourceState // Defines an automated backup policy for a table, specified by Retention Period and Frequency. To disable, set both Retention Period and Frequency to 0. // // *** AutomatedBackupPolicy TableAutomatedBackupPolicyPtrOutput `pulumi:"automatedBackupPolicy"` // Duration to retain change stream data for the table. Set to 0 to disable. Must be between 1 and 7 days. ChangeStreamRetention pulumi.StringOutput `pulumi:"changeStreamRetention"` // A group of columns within a table which share a common configuration. This can be specified multiple times. Structure is documented below. ColumnFamilies TableColumnFamilyArrayOutput `pulumi:"columnFamilies"` // A field to make the table protected against data loss i.e. when set to PROTECTED, deleting the table, the column families in the table, and the instance containing the table would be prohibited. If not provided, deletion protection will be set to UNPROTECTED. DeletionProtection pulumi.StringOutput `pulumi:"deletionProtection"` // The name of the Bigtable instance. InstanceName pulumi.StringOutput `pulumi:"instanceName"` // The name of the table. Must be 1-50 characters and must only contain hyphens, underscores, periods, letters and numbers. 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"` // A list of predefined keys to split the table on. // !> **Warning:** Modifying the `splitKeys` of an existing table will cause the provider // to delete/recreate the entire `bigtable.Table` resource. SplitKeys pulumi.StringArrayOutput `pulumi:"splitKeys"` }
Creates a Google Cloud Bigtable table inside an instance. For more information see [the official documentation](https://cloud.google.com/bigtable/) and [API](https://cloud.google.com/bigtable/docs/go/reference).
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { instance, err := bigtable.NewInstance(ctx, "instance", &bigtable.InstanceArgs{ Name: pulumi.String("tf-instance"), Clusters: bigtable.InstanceClusterArray{ &bigtable.InstanceClusterArgs{ ClusterId: pulumi.String("tf-instance-cluster"), Zone: pulumi.String("us-central1-b"), NumNodes: pulumi.Int(3), StorageType: pulumi.String("HDD"), }, }, }) if err != nil { return err } _, err = bigtable.NewTable(ctx, "table", &bigtable.TableArgs{ Name: pulumi.String("tf-table"), InstanceName: instance.Name, SplitKeys: pulumi.StringArray{ pulumi.String("a"), pulumi.String("b"), pulumi.String("c"), }, ColumnFamilies: bigtable.TableColumnFamilyArray{ &bigtable.TableColumnFamilyArgs{ Family: pulumi.String("family-first"), }, &bigtable.TableColumnFamilyArgs{ Family: pulumi.String("family-second"), Type: pulumi.String("intsum"), }, &bigtable.TableColumnFamilyArgs{ Family: pulumi.String("family-third"), Type: pulumi.String(` { "aggregateType": { "max": {}, "inputType": { "int64Type": { "encoding": { "bigEndianBytes": {} } } } } }
`),
}, }, ChangeStreamRetention: pulumi.String("24h0m0s"), AutomatedBackupPolicy: &bigtable.TableAutomatedBackupPolicyArgs{ RetentionPeriod: pulumi.String("72h0m0s"), Frequency: pulumi.String("24h0m0s"), }, }) if err != nil { return err } return nil }) }
```
## Import
-> **Fields affected by import** The following fields can't be read and will show diffs if set in config when imported: `split_keys`
Bigtable Tables can be imported using any of these accepted formats:
* `projects/{{project}}/instances/{{instance_name}}/tables/{{name}}`
* `{{project}}/{{instance_name}}/{{name}}`
* `{{instance_name}}/{{name}}`
When using the `pulumi import` command, Bigtable Tables can be imported using one of the formats above. For example:
```sh $ pulumi import gcp:bigtable/table:Table default projects/{{project}}/instances/{{instance_name}}/tables/{{name}} ```
```sh $ pulumi import gcp:bigtable/table:Table default {{project}}/{{instance_name}}/{{name}} ```
```sh $ pulumi import gcp:bigtable/table:Table default {{instance_name}}/{{name}} ```
func GetTable ¶
func GetTable(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TableState, opts ...pulumi.ResourceOption) (*Table, error)
GetTable gets an existing Table 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 NewTable ¶
func NewTable(ctx *pulumi.Context, name string, args *TableArgs, opts ...pulumi.ResourceOption) (*Table, error)
NewTable registers a new resource with the given unique name, arguments, and options.
func (*Table) ElementType ¶
func (*Table) ToTableOutput ¶
func (i *Table) ToTableOutput() TableOutput
func (*Table) ToTableOutputWithContext ¶
func (i *Table) ToTableOutputWithContext(ctx context.Context) TableOutput
type TableArgs ¶
type TableArgs struct { // Defines an automated backup policy for a table, specified by Retention Period and Frequency. To disable, set both Retention Period and Frequency to 0. // // *** AutomatedBackupPolicy TableAutomatedBackupPolicyPtrInput // Duration to retain change stream data for the table. Set to 0 to disable. Must be between 1 and 7 days. ChangeStreamRetention pulumi.StringPtrInput // A group of columns within a table which share a common configuration. This can be specified multiple times. Structure is documented below. ColumnFamilies TableColumnFamilyArrayInput // A field to make the table protected against data loss i.e. when set to PROTECTED, deleting the table, the column families in the table, and the instance containing the table would be prohibited. If not provided, deletion protection will be set to UNPROTECTED. DeletionProtection pulumi.StringPtrInput // The name of the Bigtable instance. InstanceName pulumi.StringInput // The name of the table. Must be 1-50 characters and must only contain hyphens, underscores, periods, letters and numbers. 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 // A list of predefined keys to split the table on. // !> **Warning:** Modifying the `splitKeys` of an existing table will cause the provider // to delete/recreate the entire `bigtable.Table` resource. SplitKeys pulumi.StringArrayInput }
The set of arguments for constructing a Table resource.
func (TableArgs) ElementType ¶
type TableArray ¶
type TableArray []TableInput
func (TableArray) ElementType ¶
func (TableArray) ElementType() reflect.Type
func (TableArray) ToTableArrayOutput ¶
func (i TableArray) ToTableArrayOutput() TableArrayOutput
func (TableArray) ToTableArrayOutputWithContext ¶
func (i TableArray) ToTableArrayOutputWithContext(ctx context.Context) TableArrayOutput
type TableArrayInput ¶
type TableArrayInput interface { pulumi.Input ToTableArrayOutput() TableArrayOutput ToTableArrayOutputWithContext(context.Context) TableArrayOutput }
TableArrayInput is an input type that accepts TableArray and TableArrayOutput values. You can construct a concrete instance of `TableArrayInput` via:
TableArray{ TableArgs{...} }
type TableArrayOutput ¶
type TableArrayOutput struct{ *pulumi.OutputState }
func (TableArrayOutput) ElementType ¶
func (TableArrayOutput) ElementType() reflect.Type
func (TableArrayOutput) Index ¶
func (o TableArrayOutput) Index(i pulumi.IntInput) TableOutput
func (TableArrayOutput) ToTableArrayOutput ¶
func (o TableArrayOutput) ToTableArrayOutput() TableArrayOutput
func (TableArrayOutput) ToTableArrayOutputWithContext ¶
func (o TableArrayOutput) ToTableArrayOutputWithContext(ctx context.Context) TableArrayOutput
type TableAutomatedBackupPolicyArgs ¶
type TableAutomatedBackupPolicyArgs struct { // How frequently automated backups should occur. Frequency pulumi.StringPtrInput `pulumi:"frequency"` // How long the automated backups should be retained. RetentionPeriod pulumi.StringPtrInput `pulumi:"retentionPeriod"` }
func (TableAutomatedBackupPolicyArgs) ElementType ¶
func (TableAutomatedBackupPolicyArgs) ElementType() reflect.Type
func (TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyOutput ¶
func (i TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyOutput() TableAutomatedBackupPolicyOutput
func (TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyOutputWithContext ¶
func (i TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyOutput
func (TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyPtrOutput ¶
func (i TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyPtrOutput() TableAutomatedBackupPolicyPtrOutput
func (TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyPtrOutputWithContext ¶
func (i TableAutomatedBackupPolicyArgs) ToTableAutomatedBackupPolicyPtrOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyPtrOutput
type TableAutomatedBackupPolicyInput ¶
type TableAutomatedBackupPolicyInput interface { pulumi.Input ToTableAutomatedBackupPolicyOutput() TableAutomatedBackupPolicyOutput ToTableAutomatedBackupPolicyOutputWithContext(context.Context) TableAutomatedBackupPolicyOutput }
TableAutomatedBackupPolicyInput is an input type that accepts TableAutomatedBackupPolicyArgs and TableAutomatedBackupPolicyOutput values. You can construct a concrete instance of `TableAutomatedBackupPolicyInput` via:
TableAutomatedBackupPolicyArgs{...}
type TableAutomatedBackupPolicyOutput ¶
type TableAutomatedBackupPolicyOutput struct{ *pulumi.OutputState }
func (TableAutomatedBackupPolicyOutput) ElementType ¶
func (TableAutomatedBackupPolicyOutput) ElementType() reflect.Type
func (TableAutomatedBackupPolicyOutput) Frequency ¶
func (o TableAutomatedBackupPolicyOutput) Frequency() pulumi.StringPtrOutput
How frequently automated backups should occur.
func (TableAutomatedBackupPolicyOutput) RetentionPeriod ¶
func (o TableAutomatedBackupPolicyOutput) RetentionPeriod() pulumi.StringPtrOutput
How long the automated backups should be retained.
func (TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyOutput ¶
func (o TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyOutput() TableAutomatedBackupPolicyOutput
func (TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyOutputWithContext ¶
func (o TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyOutput
func (TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyPtrOutput ¶
func (o TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyPtrOutput() TableAutomatedBackupPolicyPtrOutput
func (TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyPtrOutputWithContext ¶
func (o TableAutomatedBackupPolicyOutput) ToTableAutomatedBackupPolicyPtrOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyPtrOutput
type TableAutomatedBackupPolicyPtrInput ¶
type TableAutomatedBackupPolicyPtrInput interface { pulumi.Input ToTableAutomatedBackupPolicyPtrOutput() TableAutomatedBackupPolicyPtrOutput ToTableAutomatedBackupPolicyPtrOutputWithContext(context.Context) TableAutomatedBackupPolicyPtrOutput }
TableAutomatedBackupPolicyPtrInput is an input type that accepts TableAutomatedBackupPolicyArgs, TableAutomatedBackupPolicyPtr and TableAutomatedBackupPolicyPtrOutput values. You can construct a concrete instance of `TableAutomatedBackupPolicyPtrInput` via:
TableAutomatedBackupPolicyArgs{...} or: nil
func TableAutomatedBackupPolicyPtr ¶
func TableAutomatedBackupPolicyPtr(v *TableAutomatedBackupPolicyArgs) TableAutomatedBackupPolicyPtrInput
type TableAutomatedBackupPolicyPtrOutput ¶
type TableAutomatedBackupPolicyPtrOutput struct{ *pulumi.OutputState }
func (TableAutomatedBackupPolicyPtrOutput) Elem ¶
func (o TableAutomatedBackupPolicyPtrOutput) Elem() TableAutomatedBackupPolicyOutput
func (TableAutomatedBackupPolicyPtrOutput) ElementType ¶
func (TableAutomatedBackupPolicyPtrOutput) ElementType() reflect.Type
func (TableAutomatedBackupPolicyPtrOutput) Frequency ¶
func (o TableAutomatedBackupPolicyPtrOutput) Frequency() pulumi.StringPtrOutput
How frequently automated backups should occur.
func (TableAutomatedBackupPolicyPtrOutput) RetentionPeriod ¶
func (o TableAutomatedBackupPolicyPtrOutput) RetentionPeriod() pulumi.StringPtrOutput
How long the automated backups should be retained.
func (TableAutomatedBackupPolicyPtrOutput) ToTableAutomatedBackupPolicyPtrOutput ¶
func (o TableAutomatedBackupPolicyPtrOutput) ToTableAutomatedBackupPolicyPtrOutput() TableAutomatedBackupPolicyPtrOutput
func (TableAutomatedBackupPolicyPtrOutput) ToTableAutomatedBackupPolicyPtrOutputWithContext ¶
func (o TableAutomatedBackupPolicyPtrOutput) ToTableAutomatedBackupPolicyPtrOutputWithContext(ctx context.Context) TableAutomatedBackupPolicyPtrOutput
type TableColumnFamily ¶
type TableColumnFamilyArgs ¶
type TableColumnFamilyArgs struct { // The name of the column family. Family pulumi.StringInput `pulumi:"family"` // The type of the column family. Type pulumi.StringPtrInput `pulumi:"type"` }
func (TableColumnFamilyArgs) ElementType ¶
func (TableColumnFamilyArgs) ElementType() reflect.Type
func (TableColumnFamilyArgs) ToTableColumnFamilyOutput ¶
func (i TableColumnFamilyArgs) ToTableColumnFamilyOutput() TableColumnFamilyOutput
func (TableColumnFamilyArgs) ToTableColumnFamilyOutputWithContext ¶
func (i TableColumnFamilyArgs) ToTableColumnFamilyOutputWithContext(ctx context.Context) TableColumnFamilyOutput
type TableColumnFamilyArray ¶
type TableColumnFamilyArray []TableColumnFamilyInput
func (TableColumnFamilyArray) ElementType ¶
func (TableColumnFamilyArray) ElementType() reflect.Type
func (TableColumnFamilyArray) ToTableColumnFamilyArrayOutput ¶
func (i TableColumnFamilyArray) ToTableColumnFamilyArrayOutput() TableColumnFamilyArrayOutput
func (TableColumnFamilyArray) ToTableColumnFamilyArrayOutputWithContext ¶
func (i TableColumnFamilyArray) ToTableColumnFamilyArrayOutputWithContext(ctx context.Context) TableColumnFamilyArrayOutput
type TableColumnFamilyArrayInput ¶
type TableColumnFamilyArrayInput interface { pulumi.Input ToTableColumnFamilyArrayOutput() TableColumnFamilyArrayOutput ToTableColumnFamilyArrayOutputWithContext(context.Context) TableColumnFamilyArrayOutput }
TableColumnFamilyArrayInput is an input type that accepts TableColumnFamilyArray and TableColumnFamilyArrayOutput values. You can construct a concrete instance of `TableColumnFamilyArrayInput` via:
TableColumnFamilyArray{ TableColumnFamilyArgs{...} }
type TableColumnFamilyArrayOutput ¶
type TableColumnFamilyArrayOutput struct{ *pulumi.OutputState }
func (TableColumnFamilyArrayOutput) ElementType ¶
func (TableColumnFamilyArrayOutput) ElementType() reflect.Type
func (TableColumnFamilyArrayOutput) Index ¶
func (o TableColumnFamilyArrayOutput) Index(i pulumi.IntInput) TableColumnFamilyOutput
func (TableColumnFamilyArrayOutput) ToTableColumnFamilyArrayOutput ¶
func (o TableColumnFamilyArrayOutput) ToTableColumnFamilyArrayOutput() TableColumnFamilyArrayOutput
func (TableColumnFamilyArrayOutput) ToTableColumnFamilyArrayOutputWithContext ¶
func (o TableColumnFamilyArrayOutput) ToTableColumnFamilyArrayOutputWithContext(ctx context.Context) TableColumnFamilyArrayOutput
type TableColumnFamilyInput ¶
type TableColumnFamilyInput interface { pulumi.Input ToTableColumnFamilyOutput() TableColumnFamilyOutput ToTableColumnFamilyOutputWithContext(context.Context) TableColumnFamilyOutput }
TableColumnFamilyInput is an input type that accepts TableColumnFamilyArgs and TableColumnFamilyOutput values. You can construct a concrete instance of `TableColumnFamilyInput` via:
TableColumnFamilyArgs{...}
type TableColumnFamilyOutput ¶
type TableColumnFamilyOutput struct{ *pulumi.OutputState }
func (TableColumnFamilyOutput) ElementType ¶
func (TableColumnFamilyOutput) ElementType() reflect.Type
func (TableColumnFamilyOutput) Family ¶
func (o TableColumnFamilyOutput) Family() pulumi.StringOutput
The name of the column family.
func (TableColumnFamilyOutput) ToTableColumnFamilyOutput ¶
func (o TableColumnFamilyOutput) ToTableColumnFamilyOutput() TableColumnFamilyOutput
func (TableColumnFamilyOutput) ToTableColumnFamilyOutputWithContext ¶
func (o TableColumnFamilyOutput) ToTableColumnFamilyOutputWithContext(ctx context.Context) TableColumnFamilyOutput
func (TableColumnFamilyOutput) Type ¶ added in v8.1.0
func (o TableColumnFamilyOutput) Type() pulumi.StringPtrOutput
The type of the column family.
type TableIamBinding ¶
type TableIamBinding struct { pulumi.CustomResourceState Condition TableIamBindingConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the tables's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name or relative resource id of the instance that owns the table. Instance pulumi.StringOutput `pulumi:"instance"` // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Members pulumi.StringArrayOutput `pulumi:"members"` // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `bigtable.TableIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). // // `bigtable.TableIamPolicy` only: Role pulumi.StringOutput `pulumi:"role"` // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringOutput `pulumi:"table"` }
Three different resources help you manage IAM policies on bigtable tables. Each of these resources serves a different use case:
* `bigtable.TableIamPolicy`: Authoritative. Sets the IAM policy for the tables and replaces any existing policy already attached. * `bigtable.TableIamBinding`: 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 table are preserved. * `bigtable.TableIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the table are preserved.
> **Note:** `bigtable.TableIamPolicy` **cannot** be used in conjunction with `bigtable.TableIamBinding` and `bigtable.TableIamMember` or they will fight over what your policy should be. In addition, be careful not to accidentally unset ownership of the table as `bigtable.TableIamPolicy` replaces the entire policy.
> **Note:** `bigtable.TableIamBinding` resources **can be** used in conjunction with `bigtable.TableIamMember` resources **only if** they do not grant privilege to the same role.
## bigtable.TableIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewTableIamPolicy(ctx, "editor", &bigtable.TableIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), Table: pulumi.String("your-bigtable-table"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamBinding(ctx, "editor", &bigtable.TableIamBindingArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamMember(ctx, "editor", &bigtable.TableIamMemberArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewTableIamPolicy(ctx, "editor", &bigtable.TableIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), Table: pulumi.String("your-bigtable-table"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamBinding(ctx, "editor", &bigtable.TableIamBindingArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamMember(ctx, "editor", &bigtable.TableIamMemberArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
### Importing IAM policies
IAM policy imports use the `table` identifier of the Bigtable Table resource only. For example:
* `"projects/{project}/instances/{instance}/tables/{table}"`
An `import` block (Terraform v1.5.0 and later) can be used to import IAM policies:
tf
import {
id = "projects/{project}/instances/{instance}/tables/{table}" to = google_bigtable_table_iam_policy.default
}
The `pulumi import` command can also be used:
```sh $ pulumi import gcp:bigtable/tableIamBinding:TableIamBinding default projects/{project}/instances/{instance}/tables/{table} ```
func GetTableIamBinding ¶
func GetTableIamBinding(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TableIamBindingState, opts ...pulumi.ResourceOption) (*TableIamBinding, error)
GetTableIamBinding gets an existing TableIamBinding 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 NewTableIamBinding ¶
func NewTableIamBinding(ctx *pulumi.Context, name string, args *TableIamBindingArgs, opts ...pulumi.ResourceOption) (*TableIamBinding, error)
NewTableIamBinding registers a new resource with the given unique name, arguments, and options.
func (*TableIamBinding) ElementType ¶
func (*TableIamBinding) ElementType() reflect.Type
func (*TableIamBinding) ToTableIamBindingOutput ¶
func (i *TableIamBinding) ToTableIamBindingOutput() TableIamBindingOutput
func (*TableIamBinding) ToTableIamBindingOutputWithContext ¶
func (i *TableIamBinding) ToTableIamBindingOutputWithContext(ctx context.Context) TableIamBindingOutput
type TableIamBindingArgs ¶
type TableIamBindingArgs struct { Condition TableIamBindingConditionPtrInput // The name or relative resource id of the instance that owns the table. Instance pulumi.StringInput // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Members pulumi.StringArrayInput // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringPtrInput // The role that should be applied. Only one // `bigtable.TableIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). // // `bigtable.TableIamPolicy` only: Role pulumi.StringInput // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringInput }
The set of arguments for constructing a TableIamBinding resource.
func (TableIamBindingArgs) ElementType ¶
func (TableIamBindingArgs) ElementType() reflect.Type
type TableIamBindingArray ¶
type TableIamBindingArray []TableIamBindingInput
func (TableIamBindingArray) ElementType ¶
func (TableIamBindingArray) ElementType() reflect.Type
func (TableIamBindingArray) ToTableIamBindingArrayOutput ¶
func (i TableIamBindingArray) ToTableIamBindingArrayOutput() TableIamBindingArrayOutput
func (TableIamBindingArray) ToTableIamBindingArrayOutputWithContext ¶
func (i TableIamBindingArray) ToTableIamBindingArrayOutputWithContext(ctx context.Context) TableIamBindingArrayOutput
type TableIamBindingArrayInput ¶
type TableIamBindingArrayInput interface { pulumi.Input ToTableIamBindingArrayOutput() TableIamBindingArrayOutput ToTableIamBindingArrayOutputWithContext(context.Context) TableIamBindingArrayOutput }
TableIamBindingArrayInput is an input type that accepts TableIamBindingArray and TableIamBindingArrayOutput values. You can construct a concrete instance of `TableIamBindingArrayInput` via:
TableIamBindingArray{ TableIamBindingArgs{...} }
type TableIamBindingArrayOutput ¶
type TableIamBindingArrayOutput struct{ *pulumi.OutputState }
func (TableIamBindingArrayOutput) ElementType ¶
func (TableIamBindingArrayOutput) ElementType() reflect.Type
func (TableIamBindingArrayOutput) Index ¶
func (o TableIamBindingArrayOutput) Index(i pulumi.IntInput) TableIamBindingOutput
func (TableIamBindingArrayOutput) ToTableIamBindingArrayOutput ¶
func (o TableIamBindingArrayOutput) ToTableIamBindingArrayOutput() TableIamBindingArrayOutput
func (TableIamBindingArrayOutput) ToTableIamBindingArrayOutputWithContext ¶
func (o TableIamBindingArrayOutput) ToTableIamBindingArrayOutputWithContext(ctx context.Context) TableIamBindingArrayOutput
type TableIamBindingConditionArgs ¶
type TableIamBindingConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (TableIamBindingConditionArgs) ElementType ¶
func (TableIamBindingConditionArgs) ElementType() reflect.Type
func (TableIamBindingConditionArgs) ToTableIamBindingConditionOutput ¶
func (i TableIamBindingConditionArgs) ToTableIamBindingConditionOutput() TableIamBindingConditionOutput
func (TableIamBindingConditionArgs) ToTableIamBindingConditionOutputWithContext ¶
func (i TableIamBindingConditionArgs) ToTableIamBindingConditionOutputWithContext(ctx context.Context) TableIamBindingConditionOutput
func (TableIamBindingConditionArgs) ToTableIamBindingConditionPtrOutput ¶
func (i TableIamBindingConditionArgs) ToTableIamBindingConditionPtrOutput() TableIamBindingConditionPtrOutput
func (TableIamBindingConditionArgs) ToTableIamBindingConditionPtrOutputWithContext ¶
func (i TableIamBindingConditionArgs) ToTableIamBindingConditionPtrOutputWithContext(ctx context.Context) TableIamBindingConditionPtrOutput
type TableIamBindingConditionInput ¶
type TableIamBindingConditionInput interface { pulumi.Input ToTableIamBindingConditionOutput() TableIamBindingConditionOutput ToTableIamBindingConditionOutputWithContext(context.Context) TableIamBindingConditionOutput }
TableIamBindingConditionInput is an input type that accepts TableIamBindingConditionArgs and TableIamBindingConditionOutput values. You can construct a concrete instance of `TableIamBindingConditionInput` via:
TableIamBindingConditionArgs{...}
type TableIamBindingConditionOutput ¶
type TableIamBindingConditionOutput struct{ *pulumi.OutputState }
func (TableIamBindingConditionOutput) Description ¶
func (o TableIamBindingConditionOutput) Description() pulumi.StringPtrOutput
func (TableIamBindingConditionOutput) ElementType ¶
func (TableIamBindingConditionOutput) ElementType() reflect.Type
func (TableIamBindingConditionOutput) Expression ¶
func (o TableIamBindingConditionOutput) Expression() pulumi.StringOutput
func (TableIamBindingConditionOutput) Title ¶
func (o TableIamBindingConditionOutput) Title() pulumi.StringOutput
func (TableIamBindingConditionOutput) ToTableIamBindingConditionOutput ¶
func (o TableIamBindingConditionOutput) ToTableIamBindingConditionOutput() TableIamBindingConditionOutput
func (TableIamBindingConditionOutput) ToTableIamBindingConditionOutputWithContext ¶
func (o TableIamBindingConditionOutput) ToTableIamBindingConditionOutputWithContext(ctx context.Context) TableIamBindingConditionOutput
func (TableIamBindingConditionOutput) ToTableIamBindingConditionPtrOutput ¶
func (o TableIamBindingConditionOutput) ToTableIamBindingConditionPtrOutput() TableIamBindingConditionPtrOutput
func (TableIamBindingConditionOutput) ToTableIamBindingConditionPtrOutputWithContext ¶
func (o TableIamBindingConditionOutput) ToTableIamBindingConditionPtrOutputWithContext(ctx context.Context) TableIamBindingConditionPtrOutput
type TableIamBindingConditionPtrInput ¶
type TableIamBindingConditionPtrInput interface { pulumi.Input ToTableIamBindingConditionPtrOutput() TableIamBindingConditionPtrOutput ToTableIamBindingConditionPtrOutputWithContext(context.Context) TableIamBindingConditionPtrOutput }
TableIamBindingConditionPtrInput is an input type that accepts TableIamBindingConditionArgs, TableIamBindingConditionPtr and TableIamBindingConditionPtrOutput values. You can construct a concrete instance of `TableIamBindingConditionPtrInput` via:
TableIamBindingConditionArgs{...} or: nil
func TableIamBindingConditionPtr ¶
func TableIamBindingConditionPtr(v *TableIamBindingConditionArgs) TableIamBindingConditionPtrInput
type TableIamBindingConditionPtrOutput ¶
type TableIamBindingConditionPtrOutput struct{ *pulumi.OutputState }
func (TableIamBindingConditionPtrOutput) Description ¶
func (o TableIamBindingConditionPtrOutput) Description() pulumi.StringPtrOutput
func (TableIamBindingConditionPtrOutput) Elem ¶
func (o TableIamBindingConditionPtrOutput) Elem() TableIamBindingConditionOutput
func (TableIamBindingConditionPtrOutput) ElementType ¶
func (TableIamBindingConditionPtrOutput) ElementType() reflect.Type
func (TableIamBindingConditionPtrOutput) Expression ¶
func (o TableIamBindingConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (TableIamBindingConditionPtrOutput) Title ¶
func (o TableIamBindingConditionPtrOutput) Title() pulumi.StringPtrOutput
func (TableIamBindingConditionPtrOutput) ToTableIamBindingConditionPtrOutput ¶
func (o TableIamBindingConditionPtrOutput) ToTableIamBindingConditionPtrOutput() TableIamBindingConditionPtrOutput
func (TableIamBindingConditionPtrOutput) ToTableIamBindingConditionPtrOutputWithContext ¶
func (o TableIamBindingConditionPtrOutput) ToTableIamBindingConditionPtrOutputWithContext(ctx context.Context) TableIamBindingConditionPtrOutput
type TableIamBindingInput ¶
type TableIamBindingInput interface { pulumi.Input ToTableIamBindingOutput() TableIamBindingOutput ToTableIamBindingOutputWithContext(ctx context.Context) TableIamBindingOutput }
type TableIamBindingMap ¶
type TableIamBindingMap map[string]TableIamBindingInput
func (TableIamBindingMap) ElementType ¶
func (TableIamBindingMap) ElementType() reflect.Type
func (TableIamBindingMap) ToTableIamBindingMapOutput ¶
func (i TableIamBindingMap) ToTableIamBindingMapOutput() TableIamBindingMapOutput
func (TableIamBindingMap) ToTableIamBindingMapOutputWithContext ¶
func (i TableIamBindingMap) ToTableIamBindingMapOutputWithContext(ctx context.Context) TableIamBindingMapOutput
type TableIamBindingMapInput ¶
type TableIamBindingMapInput interface { pulumi.Input ToTableIamBindingMapOutput() TableIamBindingMapOutput ToTableIamBindingMapOutputWithContext(context.Context) TableIamBindingMapOutput }
TableIamBindingMapInput is an input type that accepts TableIamBindingMap and TableIamBindingMapOutput values. You can construct a concrete instance of `TableIamBindingMapInput` via:
TableIamBindingMap{ "key": TableIamBindingArgs{...} }
type TableIamBindingMapOutput ¶
type TableIamBindingMapOutput struct{ *pulumi.OutputState }
func (TableIamBindingMapOutput) ElementType ¶
func (TableIamBindingMapOutput) ElementType() reflect.Type
func (TableIamBindingMapOutput) MapIndex ¶
func (o TableIamBindingMapOutput) MapIndex(k pulumi.StringInput) TableIamBindingOutput
func (TableIamBindingMapOutput) ToTableIamBindingMapOutput ¶
func (o TableIamBindingMapOutput) ToTableIamBindingMapOutput() TableIamBindingMapOutput
func (TableIamBindingMapOutput) ToTableIamBindingMapOutputWithContext ¶
func (o TableIamBindingMapOutput) ToTableIamBindingMapOutputWithContext(ctx context.Context) TableIamBindingMapOutput
type TableIamBindingOutput ¶
type TableIamBindingOutput struct{ *pulumi.OutputState }
func (TableIamBindingOutput) Condition ¶
func (o TableIamBindingOutput) Condition() TableIamBindingConditionPtrOutput
func (TableIamBindingOutput) ElementType ¶
func (TableIamBindingOutput) ElementType() reflect.Type
func (TableIamBindingOutput) Etag ¶
func (o TableIamBindingOutput) Etag() pulumi.StringOutput
(Computed) The etag of the tables's IAM policy.
func (TableIamBindingOutput) Instance ¶
func (o TableIamBindingOutput) Instance() pulumi.StringOutput
The name or relative resource id of the instance that owns the table.
func (TableIamBindingOutput) Members ¶
func (o TableIamBindingOutput) Members() pulumi.StringArrayOutput
Identities that will be granted the privilege in `role`. Each entry can have one of the following values: * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
func (TableIamBindingOutput) Project ¶
func (o TableIamBindingOutput) Project() pulumi.StringOutput
The project in which the table belongs. If it is not provided, this provider will use the provider default.
func (TableIamBindingOutput) Role ¶
func (o TableIamBindingOutput) Role() pulumi.StringOutput
The role that should be applied. Only one `bigtable.TableIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles).
`bigtable.TableIamPolicy` only:
func (TableIamBindingOutput) Table ¶
func (o TableIamBindingOutput) Table() pulumi.StringOutput
The name or relative resource id of the table to manage IAM policies for.
For `bigtable.TableIamMember` or `bigtable.TableIamBinding`:
func (TableIamBindingOutput) ToTableIamBindingOutput ¶
func (o TableIamBindingOutput) ToTableIamBindingOutput() TableIamBindingOutput
func (TableIamBindingOutput) ToTableIamBindingOutputWithContext ¶
func (o TableIamBindingOutput) ToTableIamBindingOutputWithContext(ctx context.Context) TableIamBindingOutput
type TableIamBindingState ¶
type TableIamBindingState struct { Condition TableIamBindingConditionPtrInput // (Computed) The etag of the tables's IAM policy. Etag pulumi.StringPtrInput // The name or relative resource id of the instance that owns the table. Instance pulumi.StringPtrInput // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Members pulumi.StringArrayInput // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringPtrInput // The role that should be applied. Only one // `bigtable.TableIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). // // `bigtable.TableIamPolicy` only: Role pulumi.StringPtrInput // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringPtrInput }
func (TableIamBindingState) ElementType ¶
func (TableIamBindingState) ElementType() reflect.Type
type TableIamMember ¶
type TableIamMember struct { pulumi.CustomResourceState Condition TableIamMemberConditionPtrOutput `pulumi:"condition"` // (Computed) The etag of the tables's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name or relative resource id of the instance that owns the table. Instance pulumi.StringOutput `pulumi:"instance"` // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Member pulumi.StringOutput `pulumi:"member"` // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringOutput `pulumi:"project"` // The role that should be applied. Only one // `bigtable.TableIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). // // `bigtable.TableIamPolicy` only: Role pulumi.StringOutput `pulumi:"role"` // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringOutput `pulumi:"table"` }
Three different resources help you manage IAM policies on bigtable tables. Each of these resources serves a different use case:
* `bigtable.TableIamPolicy`: Authoritative. Sets the IAM policy for the tables and replaces any existing policy already attached. * `bigtable.TableIamBinding`: 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 table are preserved. * `bigtable.TableIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the table are preserved.
> **Note:** `bigtable.TableIamPolicy` **cannot** be used in conjunction with `bigtable.TableIamBinding` and `bigtable.TableIamMember` or they will fight over what your policy should be. In addition, be careful not to accidentally unset ownership of the table as `bigtable.TableIamPolicy` replaces the entire policy.
> **Note:** `bigtable.TableIamBinding` resources **can be** used in conjunction with `bigtable.TableIamMember` resources **only if** they do not grant privilege to the same role.
## bigtable.TableIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewTableIamPolicy(ctx, "editor", &bigtable.TableIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), Table: pulumi.String("your-bigtable-table"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamBinding(ctx, "editor", &bigtable.TableIamBindingArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamMember(ctx, "editor", &bigtable.TableIamMemberArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewTableIamPolicy(ctx, "editor", &bigtable.TableIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), Table: pulumi.String("your-bigtable-table"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamBinding(ctx, "editor", &bigtable.TableIamBindingArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamMember(ctx, "editor", &bigtable.TableIamMemberArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
### Importing IAM policies
IAM policy imports use the `table` identifier of the Bigtable Table resource only. For example:
* `"projects/{project}/instances/{instance}/tables/{table}"`
An `import` block (Terraform v1.5.0 and later) can be used to import IAM policies:
tf
import {
id = "projects/{project}/instances/{instance}/tables/{table}" to = google_bigtable_table_iam_policy.default
}
The `pulumi import` command can also be used:
```sh $ pulumi import gcp:bigtable/tableIamMember:TableIamMember default projects/{project}/instances/{instance}/tables/{table} ```
func GetTableIamMember ¶
func GetTableIamMember(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TableIamMemberState, opts ...pulumi.ResourceOption) (*TableIamMember, error)
GetTableIamMember gets an existing TableIamMember 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 NewTableIamMember ¶
func NewTableIamMember(ctx *pulumi.Context, name string, args *TableIamMemberArgs, opts ...pulumi.ResourceOption) (*TableIamMember, error)
NewTableIamMember registers a new resource with the given unique name, arguments, and options.
func (*TableIamMember) ElementType ¶
func (*TableIamMember) ElementType() reflect.Type
func (*TableIamMember) ToTableIamMemberOutput ¶
func (i *TableIamMember) ToTableIamMemberOutput() TableIamMemberOutput
func (*TableIamMember) ToTableIamMemberOutputWithContext ¶
func (i *TableIamMember) ToTableIamMemberOutputWithContext(ctx context.Context) TableIamMemberOutput
type TableIamMemberArgs ¶
type TableIamMemberArgs struct { Condition TableIamMemberConditionPtrInput // The name or relative resource id of the instance that owns the table. Instance pulumi.StringInput // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Member pulumi.StringInput // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringPtrInput // The role that should be applied. Only one // `bigtable.TableIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). // // `bigtable.TableIamPolicy` only: Role pulumi.StringInput // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringInput }
The set of arguments for constructing a TableIamMember resource.
func (TableIamMemberArgs) ElementType ¶
func (TableIamMemberArgs) ElementType() reflect.Type
type TableIamMemberArray ¶
type TableIamMemberArray []TableIamMemberInput
func (TableIamMemberArray) ElementType ¶
func (TableIamMemberArray) ElementType() reflect.Type
func (TableIamMemberArray) ToTableIamMemberArrayOutput ¶
func (i TableIamMemberArray) ToTableIamMemberArrayOutput() TableIamMemberArrayOutput
func (TableIamMemberArray) ToTableIamMemberArrayOutputWithContext ¶
func (i TableIamMemberArray) ToTableIamMemberArrayOutputWithContext(ctx context.Context) TableIamMemberArrayOutput
type TableIamMemberArrayInput ¶
type TableIamMemberArrayInput interface { pulumi.Input ToTableIamMemberArrayOutput() TableIamMemberArrayOutput ToTableIamMemberArrayOutputWithContext(context.Context) TableIamMemberArrayOutput }
TableIamMemberArrayInput is an input type that accepts TableIamMemberArray and TableIamMemberArrayOutput values. You can construct a concrete instance of `TableIamMemberArrayInput` via:
TableIamMemberArray{ TableIamMemberArgs{...} }
type TableIamMemberArrayOutput ¶
type TableIamMemberArrayOutput struct{ *pulumi.OutputState }
func (TableIamMemberArrayOutput) ElementType ¶
func (TableIamMemberArrayOutput) ElementType() reflect.Type
func (TableIamMemberArrayOutput) Index ¶
func (o TableIamMemberArrayOutput) Index(i pulumi.IntInput) TableIamMemberOutput
func (TableIamMemberArrayOutput) ToTableIamMemberArrayOutput ¶
func (o TableIamMemberArrayOutput) ToTableIamMemberArrayOutput() TableIamMemberArrayOutput
func (TableIamMemberArrayOutput) ToTableIamMemberArrayOutputWithContext ¶
func (o TableIamMemberArrayOutput) ToTableIamMemberArrayOutputWithContext(ctx context.Context) TableIamMemberArrayOutput
type TableIamMemberCondition ¶
type TableIamMemberConditionArgs ¶
type TableIamMemberConditionArgs struct { Description pulumi.StringPtrInput `pulumi:"description"` Expression pulumi.StringInput `pulumi:"expression"` Title pulumi.StringInput `pulumi:"title"` }
func (TableIamMemberConditionArgs) ElementType ¶
func (TableIamMemberConditionArgs) ElementType() reflect.Type
func (TableIamMemberConditionArgs) ToTableIamMemberConditionOutput ¶
func (i TableIamMemberConditionArgs) ToTableIamMemberConditionOutput() TableIamMemberConditionOutput
func (TableIamMemberConditionArgs) ToTableIamMemberConditionOutputWithContext ¶
func (i TableIamMemberConditionArgs) ToTableIamMemberConditionOutputWithContext(ctx context.Context) TableIamMemberConditionOutput
func (TableIamMemberConditionArgs) ToTableIamMemberConditionPtrOutput ¶
func (i TableIamMemberConditionArgs) ToTableIamMemberConditionPtrOutput() TableIamMemberConditionPtrOutput
func (TableIamMemberConditionArgs) ToTableIamMemberConditionPtrOutputWithContext ¶
func (i TableIamMemberConditionArgs) ToTableIamMemberConditionPtrOutputWithContext(ctx context.Context) TableIamMemberConditionPtrOutput
type TableIamMemberConditionInput ¶
type TableIamMemberConditionInput interface { pulumi.Input ToTableIamMemberConditionOutput() TableIamMemberConditionOutput ToTableIamMemberConditionOutputWithContext(context.Context) TableIamMemberConditionOutput }
TableIamMemberConditionInput is an input type that accepts TableIamMemberConditionArgs and TableIamMemberConditionOutput values. You can construct a concrete instance of `TableIamMemberConditionInput` via:
TableIamMemberConditionArgs{...}
type TableIamMemberConditionOutput ¶
type TableIamMemberConditionOutput struct{ *pulumi.OutputState }
func (TableIamMemberConditionOutput) Description ¶
func (o TableIamMemberConditionOutput) Description() pulumi.StringPtrOutput
func (TableIamMemberConditionOutput) ElementType ¶
func (TableIamMemberConditionOutput) ElementType() reflect.Type
func (TableIamMemberConditionOutput) Expression ¶
func (o TableIamMemberConditionOutput) Expression() pulumi.StringOutput
func (TableIamMemberConditionOutput) Title ¶
func (o TableIamMemberConditionOutput) Title() pulumi.StringOutput
func (TableIamMemberConditionOutput) ToTableIamMemberConditionOutput ¶
func (o TableIamMemberConditionOutput) ToTableIamMemberConditionOutput() TableIamMemberConditionOutput
func (TableIamMemberConditionOutput) ToTableIamMemberConditionOutputWithContext ¶
func (o TableIamMemberConditionOutput) ToTableIamMemberConditionOutputWithContext(ctx context.Context) TableIamMemberConditionOutput
func (TableIamMemberConditionOutput) ToTableIamMemberConditionPtrOutput ¶
func (o TableIamMemberConditionOutput) ToTableIamMemberConditionPtrOutput() TableIamMemberConditionPtrOutput
func (TableIamMemberConditionOutput) ToTableIamMemberConditionPtrOutputWithContext ¶
func (o TableIamMemberConditionOutput) ToTableIamMemberConditionPtrOutputWithContext(ctx context.Context) TableIamMemberConditionPtrOutput
type TableIamMemberConditionPtrInput ¶
type TableIamMemberConditionPtrInput interface { pulumi.Input ToTableIamMemberConditionPtrOutput() TableIamMemberConditionPtrOutput ToTableIamMemberConditionPtrOutputWithContext(context.Context) TableIamMemberConditionPtrOutput }
TableIamMemberConditionPtrInput is an input type that accepts TableIamMemberConditionArgs, TableIamMemberConditionPtr and TableIamMemberConditionPtrOutput values. You can construct a concrete instance of `TableIamMemberConditionPtrInput` via:
TableIamMemberConditionArgs{...} or: nil
func TableIamMemberConditionPtr ¶
func TableIamMemberConditionPtr(v *TableIamMemberConditionArgs) TableIamMemberConditionPtrInput
type TableIamMemberConditionPtrOutput ¶
type TableIamMemberConditionPtrOutput struct{ *pulumi.OutputState }
func (TableIamMemberConditionPtrOutput) Description ¶
func (o TableIamMemberConditionPtrOutput) Description() pulumi.StringPtrOutput
func (TableIamMemberConditionPtrOutput) Elem ¶
func (o TableIamMemberConditionPtrOutput) Elem() TableIamMemberConditionOutput
func (TableIamMemberConditionPtrOutput) ElementType ¶
func (TableIamMemberConditionPtrOutput) ElementType() reflect.Type
func (TableIamMemberConditionPtrOutput) Expression ¶
func (o TableIamMemberConditionPtrOutput) Expression() pulumi.StringPtrOutput
func (TableIamMemberConditionPtrOutput) Title ¶
func (o TableIamMemberConditionPtrOutput) Title() pulumi.StringPtrOutput
func (TableIamMemberConditionPtrOutput) ToTableIamMemberConditionPtrOutput ¶
func (o TableIamMemberConditionPtrOutput) ToTableIamMemberConditionPtrOutput() TableIamMemberConditionPtrOutput
func (TableIamMemberConditionPtrOutput) ToTableIamMemberConditionPtrOutputWithContext ¶
func (o TableIamMemberConditionPtrOutput) ToTableIamMemberConditionPtrOutputWithContext(ctx context.Context) TableIamMemberConditionPtrOutput
type TableIamMemberInput ¶
type TableIamMemberInput interface { pulumi.Input ToTableIamMemberOutput() TableIamMemberOutput ToTableIamMemberOutputWithContext(ctx context.Context) TableIamMemberOutput }
type TableIamMemberMap ¶
type TableIamMemberMap map[string]TableIamMemberInput
func (TableIamMemberMap) ElementType ¶
func (TableIamMemberMap) ElementType() reflect.Type
func (TableIamMemberMap) ToTableIamMemberMapOutput ¶
func (i TableIamMemberMap) ToTableIamMemberMapOutput() TableIamMemberMapOutput
func (TableIamMemberMap) ToTableIamMemberMapOutputWithContext ¶
func (i TableIamMemberMap) ToTableIamMemberMapOutputWithContext(ctx context.Context) TableIamMemberMapOutput
type TableIamMemberMapInput ¶
type TableIamMemberMapInput interface { pulumi.Input ToTableIamMemberMapOutput() TableIamMemberMapOutput ToTableIamMemberMapOutputWithContext(context.Context) TableIamMemberMapOutput }
TableIamMemberMapInput is an input type that accepts TableIamMemberMap and TableIamMemberMapOutput values. You can construct a concrete instance of `TableIamMemberMapInput` via:
TableIamMemberMap{ "key": TableIamMemberArgs{...} }
type TableIamMemberMapOutput ¶
type TableIamMemberMapOutput struct{ *pulumi.OutputState }
func (TableIamMemberMapOutput) ElementType ¶
func (TableIamMemberMapOutput) ElementType() reflect.Type
func (TableIamMemberMapOutput) MapIndex ¶
func (o TableIamMemberMapOutput) MapIndex(k pulumi.StringInput) TableIamMemberOutput
func (TableIamMemberMapOutput) ToTableIamMemberMapOutput ¶
func (o TableIamMemberMapOutput) ToTableIamMemberMapOutput() TableIamMemberMapOutput
func (TableIamMemberMapOutput) ToTableIamMemberMapOutputWithContext ¶
func (o TableIamMemberMapOutput) ToTableIamMemberMapOutputWithContext(ctx context.Context) TableIamMemberMapOutput
type TableIamMemberOutput ¶
type TableIamMemberOutput struct{ *pulumi.OutputState }
func (TableIamMemberOutput) Condition ¶
func (o TableIamMemberOutput) Condition() TableIamMemberConditionPtrOutput
func (TableIamMemberOutput) ElementType ¶
func (TableIamMemberOutput) ElementType() reflect.Type
func (TableIamMemberOutput) Etag ¶
func (o TableIamMemberOutput) Etag() pulumi.StringOutput
(Computed) The etag of the tables's IAM policy.
func (TableIamMemberOutput) Instance ¶
func (o TableIamMemberOutput) Instance() pulumi.StringOutput
The name or relative resource id of the instance that owns the table.
func (TableIamMemberOutput) Member ¶
func (o TableIamMemberOutput) Member() pulumi.StringOutput
Identities that will be granted the privilege in `role`. Each entry can have one of the following values: * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
func (TableIamMemberOutput) Project ¶
func (o TableIamMemberOutput) Project() pulumi.StringOutput
The project in which the table belongs. If it is not provided, this provider will use the provider default.
func (TableIamMemberOutput) Role ¶
func (o TableIamMemberOutput) Role() pulumi.StringOutput
The role that should be applied. Only one `bigtable.TableIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles).
`bigtable.TableIamPolicy` only:
func (TableIamMemberOutput) Table ¶
func (o TableIamMemberOutput) Table() pulumi.StringOutput
The name or relative resource id of the table to manage IAM policies for.
For `bigtable.TableIamMember` or `bigtable.TableIamBinding`:
func (TableIamMemberOutput) ToTableIamMemberOutput ¶
func (o TableIamMemberOutput) ToTableIamMemberOutput() TableIamMemberOutput
func (TableIamMemberOutput) ToTableIamMemberOutputWithContext ¶
func (o TableIamMemberOutput) ToTableIamMemberOutputWithContext(ctx context.Context) TableIamMemberOutput
type TableIamMemberState ¶
type TableIamMemberState struct { Condition TableIamMemberConditionPtrInput // (Computed) The etag of the tables's IAM policy. Etag pulumi.StringPtrInput // The name or relative resource id of the instance that owns the table. Instance pulumi.StringPtrInput // Identities that will be granted the privilege in `role`. // Each entry can have one of the following values: // * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. // * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. // * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. // * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. // * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. // * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. Member pulumi.StringPtrInput // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringPtrInput // The role that should be applied. Only one // `bigtable.TableIamBinding` can be used per role. Note that custom roles must be of the format // `[projects|organizations]/{parent-name}/roles/{role-name}`. Read more about roles [here](https://cloud.google.com/bigtable/docs/access-control#roles). // // `bigtable.TableIamPolicy` only: Role pulumi.StringPtrInput // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringPtrInput }
func (TableIamMemberState) ElementType ¶
func (TableIamMemberState) ElementType() reflect.Type
type TableIamPolicy ¶
type TableIamPolicy struct { pulumi.CustomResourceState // (Computed) The etag of the tables's IAM policy. Etag pulumi.StringOutput `pulumi:"etag"` // The name or relative resource id of the instance that owns the table. Instance pulumi.StringOutput `pulumi:"instance"` // The policy data generated by a `organizations.getIAMPolicy` data source. // // *** PolicyData pulumi.StringOutput `pulumi:"policyData"` // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringOutput `pulumi:"project"` // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringOutput `pulumi:"table"` }
Three different resources help you manage IAM policies on bigtable tables. Each of these resources serves a different use case:
* `bigtable.TableIamPolicy`: Authoritative. Sets the IAM policy for the tables and replaces any existing policy already attached. * `bigtable.TableIamBinding`: 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 table are preserved. * `bigtable.TableIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the table are preserved.
> **Note:** `bigtable.TableIamPolicy` **cannot** be used in conjunction with `bigtable.TableIamBinding` and `bigtable.TableIamMember` or they will fight over what your policy should be. In addition, be careful not to accidentally unset ownership of the table as `bigtable.TableIamPolicy` replaces the entire policy.
> **Note:** `bigtable.TableIamBinding` resources **can be** used in conjunction with `bigtable.TableIamMember` resources **only if** they do not grant privilege to the same role.
## bigtable.TableIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewTableIamPolicy(ctx, "editor", &bigtable.TableIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), Table: pulumi.String("your-bigtable-table"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamBinding(ctx, "editor", &bigtable.TableIamBindingArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamMember(ctx, "editor", &bigtable.TableIamMemberArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamPolicy
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations" "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{ { Role: "roles/bigtable.user", Members: []string{ "user:jane@example.com", }, }, }, }, nil) if err != nil { return err } _, err = bigtable.NewTableIamPolicy(ctx, "editor", &bigtable.TableIamPolicyArgs{ Project: pulumi.String("your-project"), Instance: pulumi.String("your-bigtable-instance"), Table: pulumi.String("your-bigtable-table"), PolicyData: pulumi.String(admin.PolicyData), }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamBinding
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamBinding(ctx, "editor", &bigtable.TableIamBindingArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Members: pulumi.StringArray{ pulumi.String("user:jane@example.com"), }, }) if err != nil { return err } return nil }) }
```
## bigtable.TableIamMember
```go package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := bigtable.NewTableIamMember(ctx, "editor", &bigtable.TableIamMemberArgs{ Table: pulumi.String("your-bigtable-table"), Instance: pulumi.String("your-bigtable-instance"), Role: pulumi.String("roles/bigtable.user"), Member: pulumi.String("user:jane@example.com"), }) if err != nil { return err } return nil }) }
```
## Import
### Importing IAM policies
IAM policy imports use the `table` identifier of the Bigtable Table resource only. For example:
* `"projects/{project}/instances/{instance}/tables/{table}"`
An `import` block (Terraform v1.5.0 and later) can be used to import IAM policies:
tf
import {
id = "projects/{project}/instances/{instance}/tables/{table}" to = google_bigtable_table_iam_policy.default
}
The `pulumi import` command can also be used:
```sh $ pulumi import gcp:bigtable/tableIamPolicy:TableIamPolicy default projects/{project}/instances/{instance}/tables/{table} ```
func GetTableIamPolicy ¶
func GetTableIamPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TableIamPolicyState, opts ...pulumi.ResourceOption) (*TableIamPolicy, error)
GetTableIamPolicy gets an existing TableIamPolicy 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 NewTableIamPolicy ¶
func NewTableIamPolicy(ctx *pulumi.Context, name string, args *TableIamPolicyArgs, opts ...pulumi.ResourceOption) (*TableIamPolicy, error)
NewTableIamPolicy registers a new resource with the given unique name, arguments, and options.
func (*TableIamPolicy) ElementType ¶
func (*TableIamPolicy) ElementType() reflect.Type
func (*TableIamPolicy) ToTableIamPolicyOutput ¶
func (i *TableIamPolicy) ToTableIamPolicyOutput() TableIamPolicyOutput
func (*TableIamPolicy) ToTableIamPolicyOutputWithContext ¶
func (i *TableIamPolicy) ToTableIamPolicyOutputWithContext(ctx context.Context) TableIamPolicyOutput
type TableIamPolicyArgs ¶
type TableIamPolicyArgs struct { // The name or relative resource id of the instance that owns the table. Instance pulumi.StringInput // The policy data generated by a `organizations.getIAMPolicy` data source. // // *** PolicyData pulumi.StringInput // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringPtrInput // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringInput }
The set of arguments for constructing a TableIamPolicy resource.
func (TableIamPolicyArgs) ElementType ¶
func (TableIamPolicyArgs) ElementType() reflect.Type
type TableIamPolicyArray ¶
type TableIamPolicyArray []TableIamPolicyInput
func (TableIamPolicyArray) ElementType ¶
func (TableIamPolicyArray) ElementType() reflect.Type
func (TableIamPolicyArray) ToTableIamPolicyArrayOutput ¶
func (i TableIamPolicyArray) ToTableIamPolicyArrayOutput() TableIamPolicyArrayOutput
func (TableIamPolicyArray) ToTableIamPolicyArrayOutputWithContext ¶
func (i TableIamPolicyArray) ToTableIamPolicyArrayOutputWithContext(ctx context.Context) TableIamPolicyArrayOutput
type TableIamPolicyArrayInput ¶
type TableIamPolicyArrayInput interface { pulumi.Input ToTableIamPolicyArrayOutput() TableIamPolicyArrayOutput ToTableIamPolicyArrayOutputWithContext(context.Context) TableIamPolicyArrayOutput }
TableIamPolicyArrayInput is an input type that accepts TableIamPolicyArray and TableIamPolicyArrayOutput values. You can construct a concrete instance of `TableIamPolicyArrayInput` via:
TableIamPolicyArray{ TableIamPolicyArgs{...} }
type TableIamPolicyArrayOutput ¶
type TableIamPolicyArrayOutput struct{ *pulumi.OutputState }
func (TableIamPolicyArrayOutput) ElementType ¶
func (TableIamPolicyArrayOutput) ElementType() reflect.Type
func (TableIamPolicyArrayOutput) Index ¶
func (o TableIamPolicyArrayOutput) Index(i pulumi.IntInput) TableIamPolicyOutput
func (TableIamPolicyArrayOutput) ToTableIamPolicyArrayOutput ¶
func (o TableIamPolicyArrayOutput) ToTableIamPolicyArrayOutput() TableIamPolicyArrayOutput
func (TableIamPolicyArrayOutput) ToTableIamPolicyArrayOutputWithContext ¶
func (o TableIamPolicyArrayOutput) ToTableIamPolicyArrayOutputWithContext(ctx context.Context) TableIamPolicyArrayOutput
type TableIamPolicyInput ¶
type TableIamPolicyInput interface { pulumi.Input ToTableIamPolicyOutput() TableIamPolicyOutput ToTableIamPolicyOutputWithContext(ctx context.Context) TableIamPolicyOutput }
type TableIamPolicyMap ¶
type TableIamPolicyMap map[string]TableIamPolicyInput
func (TableIamPolicyMap) ElementType ¶
func (TableIamPolicyMap) ElementType() reflect.Type
func (TableIamPolicyMap) ToTableIamPolicyMapOutput ¶
func (i TableIamPolicyMap) ToTableIamPolicyMapOutput() TableIamPolicyMapOutput
func (TableIamPolicyMap) ToTableIamPolicyMapOutputWithContext ¶
func (i TableIamPolicyMap) ToTableIamPolicyMapOutputWithContext(ctx context.Context) TableIamPolicyMapOutput
type TableIamPolicyMapInput ¶
type TableIamPolicyMapInput interface { pulumi.Input ToTableIamPolicyMapOutput() TableIamPolicyMapOutput ToTableIamPolicyMapOutputWithContext(context.Context) TableIamPolicyMapOutput }
TableIamPolicyMapInput is an input type that accepts TableIamPolicyMap and TableIamPolicyMapOutput values. You can construct a concrete instance of `TableIamPolicyMapInput` via:
TableIamPolicyMap{ "key": TableIamPolicyArgs{...} }
type TableIamPolicyMapOutput ¶
type TableIamPolicyMapOutput struct{ *pulumi.OutputState }
func (TableIamPolicyMapOutput) ElementType ¶
func (TableIamPolicyMapOutput) ElementType() reflect.Type
func (TableIamPolicyMapOutput) MapIndex ¶
func (o TableIamPolicyMapOutput) MapIndex(k pulumi.StringInput) TableIamPolicyOutput
func (TableIamPolicyMapOutput) ToTableIamPolicyMapOutput ¶
func (o TableIamPolicyMapOutput) ToTableIamPolicyMapOutput() TableIamPolicyMapOutput
func (TableIamPolicyMapOutput) ToTableIamPolicyMapOutputWithContext ¶
func (o TableIamPolicyMapOutput) ToTableIamPolicyMapOutputWithContext(ctx context.Context) TableIamPolicyMapOutput
type TableIamPolicyOutput ¶
type TableIamPolicyOutput struct{ *pulumi.OutputState }
func (TableIamPolicyOutput) ElementType ¶
func (TableIamPolicyOutput) ElementType() reflect.Type
func (TableIamPolicyOutput) Etag ¶
func (o TableIamPolicyOutput) Etag() pulumi.StringOutput
(Computed) The etag of the tables's IAM policy.
func (TableIamPolicyOutput) Instance ¶
func (o TableIamPolicyOutput) Instance() pulumi.StringOutput
The name or relative resource id of the instance that owns the table.
func (TableIamPolicyOutput) PolicyData ¶
func (o TableIamPolicyOutput) PolicyData() pulumi.StringOutput
The policy data generated by a `organizations.getIAMPolicy` data source.
***
func (TableIamPolicyOutput) Project ¶
func (o TableIamPolicyOutput) Project() pulumi.StringOutput
The project in which the table belongs. If it is not provided, this provider will use the provider default.
func (TableIamPolicyOutput) Table ¶
func (o TableIamPolicyOutput) Table() pulumi.StringOutput
The name or relative resource id of the table to manage IAM policies for.
For `bigtable.TableIamMember` or `bigtable.TableIamBinding`:
func (TableIamPolicyOutput) ToTableIamPolicyOutput ¶
func (o TableIamPolicyOutput) ToTableIamPolicyOutput() TableIamPolicyOutput
func (TableIamPolicyOutput) ToTableIamPolicyOutputWithContext ¶
func (o TableIamPolicyOutput) ToTableIamPolicyOutputWithContext(ctx context.Context) TableIamPolicyOutput
type TableIamPolicyState ¶
type TableIamPolicyState struct { // (Computed) The etag of the tables's IAM policy. Etag pulumi.StringPtrInput // The name or relative resource id of the instance that owns the table. Instance pulumi.StringPtrInput // The policy data generated by a `organizations.getIAMPolicy` data source. // // *** PolicyData pulumi.StringPtrInput // The project in which the table belongs. If it // is not provided, this provider will use the provider default. Project pulumi.StringPtrInput // The name or relative resource id of the table to manage IAM policies for. // // For `bigtable.TableIamMember` or `bigtable.TableIamBinding`: Table pulumi.StringPtrInput }
func (TableIamPolicyState) ElementType ¶
func (TableIamPolicyState) ElementType() reflect.Type
type TableInput ¶
type TableInput interface { pulumi.Input ToTableOutput() TableOutput ToTableOutputWithContext(ctx context.Context) TableOutput }
type TableMap ¶
type TableMap map[string]TableInput
func (TableMap) ElementType ¶
func (TableMap) ToTableMapOutput ¶
func (i TableMap) ToTableMapOutput() TableMapOutput
func (TableMap) ToTableMapOutputWithContext ¶
func (i TableMap) ToTableMapOutputWithContext(ctx context.Context) TableMapOutput
type TableMapInput ¶
type TableMapInput interface { pulumi.Input ToTableMapOutput() TableMapOutput ToTableMapOutputWithContext(context.Context) TableMapOutput }
TableMapInput is an input type that accepts TableMap and TableMapOutput values. You can construct a concrete instance of `TableMapInput` via:
TableMap{ "key": TableArgs{...} }
type TableMapOutput ¶
type TableMapOutput struct{ *pulumi.OutputState }
func (TableMapOutput) ElementType ¶
func (TableMapOutput) ElementType() reflect.Type
func (TableMapOutput) MapIndex ¶
func (o TableMapOutput) MapIndex(k pulumi.StringInput) TableOutput
func (TableMapOutput) ToTableMapOutput ¶
func (o TableMapOutput) ToTableMapOutput() TableMapOutput
func (TableMapOutput) ToTableMapOutputWithContext ¶
func (o TableMapOutput) ToTableMapOutputWithContext(ctx context.Context) TableMapOutput
type TableOutput ¶
type TableOutput struct{ *pulumi.OutputState }
func (TableOutput) AutomatedBackupPolicy ¶
func (o TableOutput) AutomatedBackupPolicy() TableAutomatedBackupPolicyPtrOutput
Defines an automated backup policy for a table, specified by Retention Period and Frequency. To disable, set both Retention Period and Frequency to 0.
***
func (TableOutput) ChangeStreamRetention ¶
func (o TableOutput) ChangeStreamRetention() pulumi.StringOutput
Duration to retain change stream data for the table. Set to 0 to disable. Must be between 1 and 7 days.
func (TableOutput) ColumnFamilies ¶
func (o TableOutput) ColumnFamilies() TableColumnFamilyArrayOutput
A group of columns within a table which share a common configuration. This can be specified multiple times. Structure is documented below.
func (TableOutput) DeletionProtection ¶
func (o TableOutput) DeletionProtection() pulumi.StringOutput
A field to make the table protected against data loss i.e. when set to PROTECTED, deleting the table, the column families in the table, and the instance containing the table would be prohibited. If not provided, deletion protection will be set to UNPROTECTED.
func (TableOutput) ElementType ¶
func (TableOutput) ElementType() reflect.Type
func (TableOutput) InstanceName ¶
func (o TableOutput) InstanceName() pulumi.StringOutput
The name of the Bigtable instance.
func (TableOutput) Name ¶
func (o TableOutput) Name() pulumi.StringOutput
The name of the table. Must be 1-50 characters and must only contain hyphens, underscores, periods, letters and numbers.
func (TableOutput) Project ¶
func (o TableOutput) Project() pulumi.StringOutput
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
func (TableOutput) SplitKeys ¶
func (o TableOutput) SplitKeys() pulumi.StringArrayOutput
A list of predefined keys to split the table on. !> **Warning:** Modifying the `splitKeys` of an existing table will cause the provider to delete/recreate the entire `bigtable.Table` resource.
func (TableOutput) ToTableOutput ¶
func (o TableOutput) ToTableOutput() TableOutput
func (TableOutput) ToTableOutputWithContext ¶
func (o TableOutput) ToTableOutputWithContext(ctx context.Context) TableOutput
type TableState ¶
type TableState struct { // Defines an automated backup policy for a table, specified by Retention Period and Frequency. To disable, set both Retention Period and Frequency to 0. // // *** AutomatedBackupPolicy TableAutomatedBackupPolicyPtrInput // Duration to retain change stream data for the table. Set to 0 to disable. Must be between 1 and 7 days. ChangeStreamRetention pulumi.StringPtrInput // A group of columns within a table which share a common configuration. This can be specified multiple times. Structure is documented below. ColumnFamilies TableColumnFamilyArrayInput // A field to make the table protected against data loss i.e. when set to PROTECTED, deleting the table, the column families in the table, and the instance containing the table would be prohibited. If not provided, deletion protection will be set to UNPROTECTED. DeletionProtection pulumi.StringPtrInput // The name of the Bigtable instance. InstanceName pulumi.StringPtrInput // The name of the table. Must be 1-50 characters and must only contain hyphens, underscores, periods, letters and numbers. 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 // A list of predefined keys to split the table on. // !> **Warning:** Modifying the `splitKeys` of an existing table will cause the provider // to delete/recreate the entire `bigtable.Table` resource. SplitKeys pulumi.StringArrayInput }
func (TableState) ElementType ¶
func (TableState) ElementType() reflect.Type