Documentation
¶
Overview ¶
+kubebuilder:object:generate=true +groupName=sns.aws.kubedb.com +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type Topic
- func (in *Topic) DeepCopy() *Topic
- func (in *Topic) DeepCopyInto(out *Topic)
- func (in *Topic) DeepCopyObject() runtime.Object
- func (mg *Topic) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *Topic) GetConnectionDetailsMapping() map[string]string
- func (mg *Topic) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *Topic) GetID() string
- func (tr *Topic) GetInitParameters() (map[string]any, error)
- func (mg *Topic) GetManagementPolicies() xpv1.ManagementPolicies
- func (tr *Topic) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)
- func (tr *Topic) GetObservation() (map[string]any, error)
- func (tr *Topic) GetParameters() (map[string]any, error)
- func (mg *Topic) GetProviderConfigReference() *xpv1.Reference
- func (mg *Topic) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Topic) GetTerraformResourceType() string
- func (tr *Topic) GetTerraformSchemaVersion() int
- func (mg *Topic) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *Topic) LateInitialize(attrs []byte) (bool, error)
- func (mg *Topic) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *Topic) SetConditions(c ...xpv1.Condition)
- func (mg *Topic) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *Topic) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (tr *Topic) SetObservation(obs map[string]any) error
- func (tr *Topic) SetParameters(params map[string]any) error
- func (mg *Topic) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Topic) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Topic) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type TopicInitParameters
- type TopicList
- type TopicObservation
- type TopicParameters
- type TopicSpec
- type TopicStatus
Constants ¶
const ( CRDGroup = "sns.aws.kubedb.com" CRDVersion = "v1alpha1" )
Package type metadata.
Variables ¶
var ( // CRDGroupVersion is the API Group Version used to register the objects CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var ( Topic_Kind = "Topic" Topic_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: Topic_Kind}.String() Topic_KindAPIVersion = Topic_Kind + "." + CRDGroupVersion.String() Topic_GroupVersionKind = CRDGroupVersion.WithKind(Topic_Kind) )
Repository type metadata.
Functions ¶
This section is empty.
Types ¶
type Topic ¶
type Topic struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.region)",message="spec.forProvider.region is a required parameter"
Spec TopicSpec `json:"spec"`
Status TopicStatus `json:"status,omitempty"`
}
Topic is the Schema for the Topics API. Provides an SNS topic resource. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}
func (*Topic) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Topic.
func (*Topic) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Topic) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Topic) GetCondition ¶
func (mg *Topic) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Topic.
func (*Topic) GetConnectionDetailsMapping ¶
GetConnectionDetailsMapping for this Topic
func (*Topic) GetDeletionPolicy ¶
func (mg *Topic) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Topic.
func (*Topic) GetInitParameters ¶
GetInitParameters of this Topic
func (*Topic) GetManagementPolicies ¶
func (mg *Topic) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this Topic.
func (*Topic) GetMergedParameters ¶
GetInitParameters of this Topic
func (*Topic) GetObservation ¶
GetObservation of this Topic
func (*Topic) GetParameters ¶
GetParameters of this Topic
func (*Topic) GetProviderConfigReference ¶
GetProviderConfigReference of this Topic.
func (*Topic) GetPublishConnectionDetailsTo ¶
func (mg *Topic) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Topic.
func (*Topic) GetTerraformResourceType ¶
GetTerraformResourceType returns Terraform resource type for this Topic
func (*Topic) GetTerraformSchemaVersion ¶
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*Topic) GetWriteConnectionSecretToReference ¶
func (mg *Topic) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Topic.
func (*Topic) LateInitialize ¶
LateInitialize this Topic using its observed tfState. returns True if there are any spec changes for the resource.
func (*Topic) ResolveReferences ¶
ResolveReferences of this Topic.
func (*Topic) SetConditions ¶
SetConditions of this Topic.
func (*Topic) SetDeletionPolicy ¶
func (mg *Topic) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Topic.
func (*Topic) SetManagementPolicies ¶
func (mg *Topic) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this Topic.
func (*Topic) SetObservation ¶
SetObservation for this Topic
func (*Topic) SetParameters ¶
SetParameters for this Topic
func (*Topic) SetProviderConfigReference ¶
SetProviderConfigReference of this Topic.
func (*Topic) SetPublishConnectionDetailsTo ¶
func (mg *Topic) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this Topic.
func (*Topic) SetWriteConnectionSecretToReference ¶
func (mg *Topic) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Topic.
type TopicInitParameters ¶
type TopicInitParameters struct {
// Percentage of success to sample
ApplicationSuccessFeedbackSampleRate *float64 `json:"applicationSuccessFeedbackSampleRate,omitempty" tf:"application_success_feedback_sample_rate,omitempty"`
// Enables content-based deduplication for FIFO topics. For more information, see the related documentation
ContentBasedDeduplication *bool `json:"contentBasedDeduplication,omitempty" tf:"content_based_deduplication,omitempty"`
// The SNS delivery policy. More on AWS documentation
DeliveryPolicy *string `json:"deliveryPolicy,omitempty" tf:"delivery_policy,omitempty"`
// The display name for the topic
DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`
// Boolean indicating whether or not to create a FIFO (first-in-first-out) topic (default is false).
FifoTopic *bool `json:"fifoTopic,omitempty" tf:"fifo_topic,omitempty"`
// Percentage of success to sample
FirehoseSuccessFeedbackSampleRate *float64 `json:"firehoseSuccessFeedbackSampleRate,omitempty" tf:"firehose_success_feedback_sample_rate,omitempty"`
// Percentage of success to sample
HTTPSuccessFeedbackSampleRate *float64 `json:"httpSuccessFeedbackSampleRate,omitempty" tf:"http_success_feedback_sample_rate,omitempty"`
// The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms
KMSMasterKeyID *string `json:"kmsMasterKeyId,omitempty" tf:"kms_master_key_id,omitempty"`
// Percentage of success to sample
LambdaSuccessFeedbackSampleRate *float64 `json:"lambdaSuccessFeedbackSampleRate,omitempty" tf:"lambda_success_feedback_sample_rate,omitempty"`
// The fully-formed AWS policy as JSON.
Policy *string `json:"policy,omitempty" tf:"policy,omitempty"`
// If SignatureVersion should be 1 (SHA1) or 2 (SHA256). The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.
SignatureVersion *float64 `json:"signatureVersion,omitempty" tf:"signature_version,omitempty"`
// Percentage of success to sample
SqsSuccessFeedbackSampleRate *float64 `json:"sqsSuccessFeedbackSampleRate,omitempty" tf:"sqs_success_feedback_sample_rate,omitempty"`
// Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`
// Tracing mode of an Amazon SNS topic. Valid values: "PassThrough", "Active".
TracingConfig *string `json:"tracingConfig,omitempty" tf:"tracing_config,omitempty"`
}
func (*TopicInitParameters) DeepCopy ¶
func (in *TopicInitParameters) DeepCopy() *TopicInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicInitParameters.
func (*TopicInitParameters) DeepCopyInto ¶
func (in *TopicInitParameters) DeepCopyInto(out *TopicInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TopicList ¶
type TopicList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Topic `json:"items"`
}
TopicList contains a list of Topics
func (*TopicList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicList.
func (*TopicList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TopicList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TopicObservation ¶
type TopicObservation struct {
// IAM role for failure feedback
ApplicationFailureFeedbackRoleArn *string `json:"applicationFailureFeedbackRoleArn,omitempty" tf:"application_failure_feedback_role_arn,omitempty"`
// The IAM role permitted to receive success feedback for this topic
ApplicationSuccessFeedbackRoleArn *string `json:"applicationSuccessFeedbackRoleArn,omitempty" tf:"application_success_feedback_role_arn,omitempty"`
// Percentage of success to sample
ApplicationSuccessFeedbackSampleRate *float64 `json:"applicationSuccessFeedbackSampleRate,omitempty" tf:"application_success_feedback_sample_rate,omitempty"`
// The ARN of the SNS topic, as a more obvious property (clone of id)
Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`
// Enables content-based deduplication for FIFO topics. For more information, see the related documentation
ContentBasedDeduplication *bool `json:"contentBasedDeduplication,omitempty" tf:"content_based_deduplication,omitempty"`
// The SNS delivery policy. More on AWS documentation
DeliveryPolicy *string `json:"deliveryPolicy,omitempty" tf:"delivery_policy,omitempty"`
// The display name for the topic
DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`
// Boolean indicating whether or not to create a FIFO (first-in-first-out) topic (default is false).
FifoTopic *bool `json:"fifoTopic,omitempty" tf:"fifo_topic,omitempty"`
// IAM role for failure feedback
FirehoseFailureFeedbackRoleArn *string `json:"firehoseFailureFeedbackRoleArn,omitempty" tf:"firehose_failure_feedback_role_arn,omitempty"`
// The IAM role permitted to receive success feedback for this topic
FirehoseSuccessFeedbackRoleArn *string `json:"firehoseSuccessFeedbackRoleArn,omitempty" tf:"firehose_success_feedback_role_arn,omitempty"`
// Percentage of success to sample
FirehoseSuccessFeedbackSampleRate *float64 `json:"firehoseSuccessFeedbackSampleRate,omitempty" tf:"firehose_success_feedback_sample_rate,omitempty"`
// IAM role for failure feedback
HTTPFailureFeedbackRoleArn *string `json:"httpFailureFeedbackRoleArn,omitempty" tf:"http_failure_feedback_role_arn,omitempty"`
// The IAM role permitted to receive success feedback for this topic
HTTPSuccessFeedbackRoleArn *string `json:"httpSuccessFeedbackRoleArn,omitempty" tf:"http_success_feedback_role_arn,omitempty"`
// Percentage of success to sample
HTTPSuccessFeedbackSampleRate *float64 `json:"httpSuccessFeedbackSampleRate,omitempty" tf:"http_success_feedback_sample_rate,omitempty"`
// The ARN of the SNS topic
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms
KMSMasterKeyID *string `json:"kmsMasterKeyId,omitempty" tf:"kms_master_key_id,omitempty"`
// IAM role for failure feedback
LambdaFailureFeedbackRoleArn *string `json:"lambdaFailureFeedbackRoleArn,omitempty" tf:"lambda_failure_feedback_role_arn,omitempty"`
// The IAM role permitted to receive success feedback for this topic
LambdaSuccessFeedbackRoleArn *string `json:"lambdaSuccessFeedbackRoleArn,omitempty" tf:"lambda_success_feedback_role_arn,omitempty"`
// Percentage of success to sample
LambdaSuccessFeedbackSampleRate *float64 `json:"lambdaSuccessFeedbackSampleRate,omitempty" tf:"lambda_success_feedback_sample_rate,omitempty"`
// The AWS Account ID of the SNS topic owner
Owner *string `json:"owner,omitempty" tf:"owner,omitempty"`
// The fully-formed AWS policy as JSON.
Policy *string `json:"policy,omitempty" tf:"policy,omitempty"`
// If SignatureVersion should be 1 (SHA1) or 2 (SHA256). The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.
SignatureVersion *float64 `json:"signatureVersion,omitempty" tf:"signature_version,omitempty"`
// IAM role for failure feedback
SqsFailureFeedbackRoleArn *string `json:"sqsFailureFeedbackRoleArn,omitempty" tf:"sqs_failure_feedback_role_arn,omitempty"`
// The IAM role permitted to receive success feedback for this topic
SqsSuccessFeedbackRoleArn *string `json:"sqsSuccessFeedbackRoleArn,omitempty" tf:"sqs_success_feedback_role_arn,omitempty"`
// Percentage of success to sample
SqsSuccessFeedbackSampleRate *float64 `json:"sqsSuccessFeedbackSampleRate,omitempty" tf:"sqs_success_feedback_sample_rate,omitempty"`
// Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`
// Tracing mode of an Amazon SNS topic. Valid values: "PassThrough", "Active".
TracingConfig *string `json:"tracingConfig,omitempty" tf:"tracing_config,omitempty"`
}
func (*TopicObservation) DeepCopy ¶
func (in *TopicObservation) DeepCopy() *TopicObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicObservation.
func (*TopicObservation) DeepCopyInto ¶
func (in *TopicObservation) DeepCopyInto(out *TopicObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TopicParameters ¶
type TopicParameters struct {
// IAM role for failure feedback
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
ApplicationFailureFeedbackRoleArn *string `json:"applicationFailureFeedbackRoleArn,omitempty" tf:"application_failure_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate applicationFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
ApplicationFailureFeedbackRoleArnRef *v1.Reference `json:"applicationFailureFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate applicationFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
ApplicationFailureFeedbackRoleArnSelector *v1.Selector `json:"applicationFailureFeedbackRoleArnSelector,omitempty" tf:"-"`
// The IAM role permitted to receive success feedback for this topic
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
ApplicationSuccessFeedbackRoleArn *string `json:"applicationSuccessFeedbackRoleArn,omitempty" tf:"application_success_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate applicationSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
ApplicationSuccessFeedbackRoleArnRef *v1.Reference `json:"applicationSuccessFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate applicationSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
ApplicationSuccessFeedbackRoleArnSelector *v1.Selector `json:"applicationSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`
// Percentage of success to sample
// +kubebuilder:validation:Optional
ApplicationSuccessFeedbackSampleRate *float64 `json:"applicationSuccessFeedbackSampleRate,omitempty" tf:"application_success_feedback_sample_rate,omitempty"`
// Enables content-based deduplication for FIFO topics. For more information, see the related documentation
// +kubebuilder:validation:Optional
ContentBasedDeduplication *bool `json:"contentBasedDeduplication,omitempty" tf:"content_based_deduplication,omitempty"`
// The SNS delivery policy. More on AWS documentation
// +kubebuilder:validation:Optional
DeliveryPolicy *string `json:"deliveryPolicy,omitempty" tf:"delivery_policy,omitempty"`
// The display name for the topic
// +kubebuilder:validation:Optional
DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`
// Boolean indicating whether or not to create a FIFO (first-in-first-out) topic (default is false).
// +kubebuilder:validation:Optional
FifoTopic *bool `json:"fifoTopic,omitempty" tf:"fifo_topic,omitempty"`
// IAM role for failure feedback
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
FirehoseFailureFeedbackRoleArn *string `json:"firehoseFailureFeedbackRoleArn,omitempty" tf:"firehose_failure_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate firehoseFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
FirehoseFailureFeedbackRoleArnRef *v1.Reference `json:"firehoseFailureFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate firehoseFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
FirehoseFailureFeedbackRoleArnSelector *v1.Selector `json:"firehoseFailureFeedbackRoleArnSelector,omitempty" tf:"-"`
// The IAM role permitted to receive success feedback for this topic
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
FirehoseSuccessFeedbackRoleArn *string `json:"firehoseSuccessFeedbackRoleArn,omitempty" tf:"firehose_success_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate firehoseSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
FirehoseSuccessFeedbackRoleArnRef *v1.Reference `json:"firehoseSuccessFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate firehoseSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
FirehoseSuccessFeedbackRoleArnSelector *v1.Selector `json:"firehoseSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`
// Percentage of success to sample
// +kubebuilder:validation:Optional
FirehoseSuccessFeedbackSampleRate *float64 `json:"firehoseSuccessFeedbackSampleRate,omitempty" tf:"firehose_success_feedback_sample_rate,omitempty"`
// IAM role for failure feedback
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
HTTPFailureFeedbackRoleArn *string `json:"httpFailureFeedbackRoleArn,omitempty" tf:"http_failure_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate httpFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
HTTPFailureFeedbackRoleArnRef *v1.Reference `json:"httpFailureFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate httpFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
HTTPFailureFeedbackRoleArnSelector *v1.Selector `json:"httpFailureFeedbackRoleArnSelector,omitempty" tf:"-"`
// The IAM role permitted to receive success feedback for this topic
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
HTTPSuccessFeedbackRoleArn *string `json:"httpSuccessFeedbackRoleArn,omitempty" tf:"http_success_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate httpSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
HTTPSuccessFeedbackRoleArnRef *v1.Reference `json:"httpSuccessFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate httpSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
HTTPSuccessFeedbackRoleArnSelector *v1.Selector `json:"httpSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`
// Percentage of success to sample
// +kubebuilder:validation:Optional
HTTPSuccessFeedbackSampleRate *float64 `json:"httpSuccessFeedbackSampleRate,omitempty" tf:"http_success_feedback_sample_rate,omitempty"`
// The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms
// +kubebuilder:validation:Optional
KMSMasterKeyID *string `json:"kmsMasterKeyId,omitempty" tf:"kms_master_key_id,omitempty"`
// IAM role for failure feedback
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
LambdaFailureFeedbackRoleArn *string `json:"lambdaFailureFeedbackRoleArn,omitempty" tf:"lambda_failure_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate lambdaFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
LambdaFailureFeedbackRoleArnRef *v1.Reference `json:"lambdaFailureFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate lambdaFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
LambdaFailureFeedbackRoleArnSelector *v1.Selector `json:"lambdaFailureFeedbackRoleArnSelector,omitempty" tf:"-"`
// The IAM role permitted to receive success feedback for this topic
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
LambdaSuccessFeedbackRoleArn *string `json:"lambdaSuccessFeedbackRoleArn,omitempty" tf:"lambda_success_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate lambdaSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
LambdaSuccessFeedbackRoleArnRef *v1.Reference `json:"lambdaSuccessFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate lambdaSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
LambdaSuccessFeedbackRoleArnSelector *v1.Selector `json:"lambdaSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`
// Percentage of success to sample
// +kubebuilder:validation:Optional
LambdaSuccessFeedbackSampleRate *float64 `json:"lambdaSuccessFeedbackSampleRate,omitempty" tf:"lambda_success_feedback_sample_rate,omitempty"`
// The fully-formed AWS policy as JSON.
// +kubebuilder:validation:Optional
Policy *string `json:"policy,omitempty" tf:"policy,omitempty"`
// Region is the region you'd like your resource to be created in.
// +upjet:crd:field:TFTag=-
// +kubebuilder:validation:Optional
Region *string `json:"region,omitempty" tf:"-"`
// If SignatureVersion should be 1 (SHA1) or 2 (SHA256). The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.
// +kubebuilder:validation:Optional
SignatureVersion *float64 `json:"signatureVersion,omitempty" tf:"signature_version,omitempty"`
// IAM role for failure feedback
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
SqsFailureFeedbackRoleArn *string `json:"sqsFailureFeedbackRoleArn,omitempty" tf:"sqs_failure_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate sqsFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
SqsFailureFeedbackRoleArnRef *v1.Reference `json:"sqsFailureFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate sqsFailureFeedbackRoleArn.
// +kubebuilder:validation:Optional
SqsFailureFeedbackRoleArnSelector *v1.Selector `json:"sqsFailureFeedbackRoleArnSelector,omitempty" tf:"-"`
// The IAM role permitted to receive success feedback for this topic
// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
// +kubebuilder:validation:Optional
SqsSuccessFeedbackRoleArn *string `json:"sqsSuccessFeedbackRoleArn,omitempty" tf:"sqs_success_feedback_role_arn,omitempty"`
// Reference to a Role in iam to populate sqsSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
SqsSuccessFeedbackRoleArnRef *v1.Reference `json:"sqsSuccessFeedbackRoleArnRef,omitempty" tf:"-"`
// Selector for a Role in iam to populate sqsSuccessFeedbackRoleArn.
// +kubebuilder:validation:Optional
SqsSuccessFeedbackRoleArnSelector *v1.Selector `json:"sqsSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`
// Percentage of success to sample
// +kubebuilder:validation:Optional
SqsSuccessFeedbackSampleRate *float64 `json:"sqsSuccessFeedbackSampleRate,omitempty" tf:"sqs_success_feedback_sample_rate,omitempty"`
// Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
// +kubebuilder:validation:Optional
Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
// +kubebuilder:validation:Optional
TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`
// Tracing mode of an Amazon SNS topic. Valid values: "PassThrough", "Active".
// +kubebuilder:validation:Optional
TracingConfig *string `json:"tracingConfig,omitempty" tf:"tracing_config,omitempty"`
}
func (*TopicParameters) DeepCopy ¶
func (in *TopicParameters) DeepCopy() *TopicParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicParameters.
func (*TopicParameters) DeepCopyInto ¶
func (in *TopicParameters) DeepCopyInto(out *TopicParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TopicSpec ¶
type TopicSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider TopicParameters `json:"forProvider"`
// THIS IS A BETA FIELD. It will be honored
// unless the Management Policies feature flag is disabled.
// InitProvider holds the same fields as ForProvider, with the exception
// of Identifier and other resource reference fields. The fields that are
// in InitProvider are merged into ForProvider when the resource is created.
// The same fields are also added to the terraform ignore_changes hook, to
// avoid updating them after creation. This is useful for fields that are
// required on creation, but we do not desire to update them after creation,
// for example because of an external controller is managing them, like an
// autoscaler.
InitProvider TopicInitParameters `json:"initProvider,omitempty"`
}
TopicSpec defines the desired state of Topic
func (*TopicSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicSpec.
func (*TopicSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TopicStatus ¶
type TopicStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider TopicObservation `json:"atProvider,omitempty"`
}
TopicStatus defines the observed state of Topic.
func (*TopicStatus) DeepCopy ¶
func (in *TopicStatus) DeepCopy() *TopicStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicStatus.
func (*TopicStatus) DeepCopyInto ¶
func (in *TopicStatus) DeepCopyInto(out *TopicStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.